如何使用libavformat以编程方式输出碎片的mp4文件?

时间:2013-07-08 09:54:50

标签: mp4 libavformat

我想使用mp4文件格式进行实时流式传输,这对于未分段的mp4文件是不可能的,因为moov原子通常写在文件的末尾。我需要生成一个片段化的mp4文件,通过网络传输它以进行实时流式传输。我正在使用libavformat。问题是,我可以使用libavformat轻松编写未分段的mp4文件,但我不知道如何编写碎片的mp4文件。那么,如何使用libavformat写一个碎片化的mp4文件?

2 个答案:

答案 0 :(得分:0)

我认为你不是在寻找支离破碎的mp4(FYI碎片mp4通常被称为.ismv)ISMV需要媒体服务器和专门的客户端来传输。

我认为你所寻找的是快速入门。这只是将moov原子移动到文件的开头。 ffmpeg附带了一个qt-faststart实用程序,可以为您完成此操作。检查你的发现。

答案 1 :(得分:0)

您可以使用Bento4库轻松完成此操作。从这里下载http://www.bento4.com/downloads/并使用二进制mp4fragment。

mp4fragment sourcefile destinatiofile