对于我的应用程序,我通过在android中使用javacv / opencv从图像集创建视频。但是视频播放时没有声音。所以我想将我录制的音频(mp3文件)添加到生成的视频中我该如何实现它?
这是我的代码,用于从图像中获取视频,
String path =SCREENSHOT_FOLDER2;
File folder = new File(path);
listOfFiles = folder.listFiles();
if(listOfFiles.length>0)
{
iplimage = new opencv_core.IplImage[listOfFiles.length];
for (int j = 0; j < listOfFiles.length; j++) {
String files="";
if (listOfFiles[j].isFile())
{
files = listOfFiles[j].getName();
}
String[] tokens = files.split("\\.(?=[^\\.]+$)");
String name=tokens[0];
System.out.println(" j " + name);
iplimage[j]=cvLoadImage("/mnt/sdcard/images/"+name+".png");
}
}
File videopath = new File(SCREENSHOT_FOLDER3);
videopath.mkdirs();
FFmpegFrameRecord recorder = new
FFmpegFrameRecord(SCREENSHOT_FOLDER3+
"video"+System.currentTimeMillis()+".mp4",320,480);
try {
recorder.setCodecID(CODEC_ID_MPEG4); //CODEC_ID_MPEG4
//CODEC_ID_MPEG1VIDEO
recorder.setBitrate(sampleVideoBitRate);
recorder.setFrameRate(10);
recorder.setPixelFormat(PIX_FMT_YUV420P); //PIX_FMT_YUV420P
recorder.start();
int x = 0;
int y = 0;
for (int i=0;i< 300 && x<iplimage.length;i++)
{
recorder.record(image[x]);
if (i>(y+10)) {
y=y+1;
x++;
}
}
recorder.stop();
}
catch (Exception e){
e.printStackTrace();
}
现在如何在此代码中集成音频文件(.mp3)文件。
答案 0 :(得分:0)
OpenCV,随后JavaCV不支持音频。
你必须使用不同的库。查看Android对视频/音频的支持,第三方库或您可能认为有用的任何其他方式。
但不要只是期望OpenCV能帮到你,因为它对音频的支持是0%。
答案 1 :(得分:0)
我不会说JavaCV不支持音频,因为它集成了许多opencv没有的库 - 例如ffmpeg。检查that issue的这个长线程。