我正在开发Android应用程序,我正在使用ffmpeg来转换文件 我希望我的二进制文件尽可能的纤薄,因为我没有很多输入格式和输出格式,而且我的操作非常基本。当然不会让APK臃肿。
在我的程序中,ffmpeg收到一个文件,并复制音频流(-acodec copy
),音频流将始终为aac(mp4a
)。我需要的是将流保存到文件
我的命令如下:ffmpeg -i {Input} -vn -acodec copy output.aac
。
将aac复制到文件需要什么样的muxer?我试过flv,mp3,mov
,但我总是得到
Unable to find a suitable output format for 'output.aac'
,所以这些选项都是错误的。
我不需要编码器来进行流复制btw。
旁注:这个命令在完全安装ffmpeg时完美无缺,但我不知道它使用哪个muxer。如果有一种方法可以输出它在常规ffmpeg运行中使用的复用器,它也可以工作。
答案 0 :(得分:2)
AAC的常见文件格式是BMFF / MOV / MP4 / M4A。如果您指定m4a
文件扩展名,FFmpeg将为您处理。
ffmpeg -i {input} -vn -acodec copy output.m4a
如果您只是想要原始AAC,您可以使用ADTS作为轻量级容器,如Mulvya建议的那样。
ffmpeg -i {input} -vn -acodec copy -f adts output.aac
答案 1 :(得分:0)
我必须为工作添加-f(在FFmpeg 3.22上): ffmpeg -i {input} -vn -acodec copy -f adts output.m4a