【发布时间】:2012-11-25 10:51:18
【问题描述】:
对于我的应用程序,我通过在 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)文件。
【问题讨论】:
-
嘿@rams 你找到这个问题的解决方案了吗?我也有同样的问题。请在这里回答我或发送电子邮件至 robinroya15@gmail.com。
-
任何想知道的人,如何播放从 FrameGrabber 抓取的音频帧。大家可以看看我的博客,明确贴出你想要的,revealedtricks4u.blogspot.in/2015/03/…问候,Shihab
标签: android audio opencv ffmpeg javacv