使用ffmpeg库在android中合并.m4a文件[重复]
Posted
技术标签:
【中文标题】使用ffmpeg库在android中合并.m4a文件[重复]【英文标题】:Merge .m4a files in android using ffmpeg library [duplicate] 【发布时间】:2014-02-13 19:53:59 【问题描述】:我有几个 M4A(声音)文件。我想合并成一个声音文件。这可以在android中使用ffmpeg库吗?
我试过这个方法。
public void myFunctionMergeAudioFiles(ShellCallback sc,List<String> mListFiles, String outPath) throws IOException, InterruptedException
ArrayList<String> cmd = new ArrayList<String>();
cmd = new ArrayList<String>();
cmd.add(ffmpegBin);
cmd.add("f");
cmd.add("concat");
cmd.add("-i");
for(int i=0;i<mListFiles.size();i++)
cmd.add(new File(mListFiles.get(i)).getCanonicalPath());
cmd.add("-c");
cmd.add("-acodec");
cmd.add("aac");
cmd.add("copy");
File fileOut = new File(outPath);
cmd.add(fileOut.getCanonicalPath());
execFFMPEG(cmd, sc);
我的日志:-
01-23 15:32:17.841: D/FFMPEG(12678): /data/app-lib/com.apps.messagingapp-1/libffmpeg.so f concat -i /storage/emulated/0/MGOApp/Temp/Recording #1_0.m4a /storage/emulated/0/MGOApp/Temp/Recording #1_1.m4a /storage/emulated/0/MGOApp/Temp/Recording #1_2.m4a -c -acodec aac copy /storage/emulated/0/MGOApp/Recording #1.m4a
但我没有收到任何错误。 提前致谢。
【问题讨论】:
你有解决办法吗? 是的,我已经使用 ffmpeg 完成了,另一个将图像合并到音频的示例是 ***.com/questions/20463719/… 我发布了一个答案***.com/questions/20463719/… 【参考方案1】:我相信您必须创建一个文本文件并将其用作您的输入。文本文件需要如下所示:
file 'file1.m4a'
file 'file2.m4a'
然后运行下面的命令行应该是这样的:
ffmpeg -f concat -i "Path\To\MyList.txt" -c copy concatOutput.m4a
这对我有用。 您应该能够在代码中动态创建列表文本文件,并在运行 FFMPEG 命令行后将其删除。
更多信息guide
【讨论】:
感谢@AJ29 的回复,我正在使用另一个 .m4a 文件。以上是关于使用ffmpeg库在android中合并.m4a文件[重复]的主要内容,如果未能解决你的问题,请参考以下文章
是否可以在不重新编码的情况下将立体声合并/缩混为单声道(m4a 或 opus)
如何在android中以编程方式将音频.mp3转换为.m4a