在做项目时遇到一个需求:制作视频,即用户点击上传按钮能够上传本地视频,同时系统提供配BGM的功能(BGM)由后台提供。
当刚接到这个需求的时候,我整个人都是懵的,制作视频?这不是新媒体做的吗,不会啊,但是既然有这个需求,那就只能硬着头皮上了。
进过多方查找,确定了用FFmpeg这个软件来完成这个需求。网上了解到:FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件)。这个软件能够进行音视频的合并。
又掉了几根头发后,写出一个小Demo,能够实现音视频的合并,但仍有一些问题有待解决,下面是干货:
import java.io.*;
public class FfmpegDemo {
// FFmpeg全路径
private static final String FFMPEG_PATH = "D:\\FFMPEG\\ffmpeg-latest-win64-static\\bin\\ffmpeg.exe";
public static void main(String[] args) {
try {
String videoInputPath = "D:\\ceshi\\demo2.mp4";
String audioInputPath = "D:\\ceshi\\说好不哭.mp3";
String videoOutPath = "D:\\ceshi\\666\\6啊.avi";
// File f = new File("D:\\ceshi\\红色高跟鞋.mp3");
//