2011-12-14 60 views
1

如何使用libavcodec将媒体文件从mp4(aac和libx264)转换为mp4(mp3和h264)?任何人都可以解释我必须做的步骤吗? 据我所知,我必须解码,然后编码音频和视频流到目标编解码器。但我怎样才能将这些流保存到mp4文件?转换媒体文件

回答

1

您可以使用libavcodec编写h264和mp3,但要将它们写入mp4文件中,您需要libavformat。这不是一个简单的过程,并且FFmpeg/Libav库非常不直观。在他们的源代码树中有几个examples,这很好地说明了这个过程。在decode_encoding.c中查找video_encode_example()和audio_encode_example()。还有muxing.c。

对于初学者,我建议您查看ffmpegsource,它是FFmpeg/Libav库的包装。

我编写了大部分代码here,这个插件使用一个名为Tuttle的框架。这应该也是一个例子。但不要用它作为权威。阅读libavcodec和libavformat附带的文档。