MP4 MOOV原子用于渐进式播放



我正在寻找一种创建MOOV原子的方法,该原子允许用户在MP4文件仍在转码时对其进行复制(例如,转码无尽的流,例如来自安全摄像头的流)

我认为我能做到这一点的唯一方法是让每个块和样本具有完全相同的大小,以便我可以提前在 st* 表中声明其格式。问题是我无法使用 vlc 对具有此特征的 mp4 进行转码(我不知道这是否可能),因此我无法测试这种方法是否有效。

有没有办法对文件进行转码,使其帧和块具有相同的大小?如果可能的话,您认为我可以创建一个MOOV原子,以便在文件仍在转码时开始复制吗?

您正在寻找的是生成一个碎片化的 MP4。我只知道如何用ffmpeg做到这一点,但它可能可以用 VLC 做到。您不需要具有相同大小的区块,但您将拥有相同大小的段,moof以下mdat框。

例如,使用 x264 您可以将此命令行与 ffmpeg 一起使用: ffmpeg -i input -c:v libx264 -preset medium -f mp4 -movflags empty_moov+omit_tfhd_offset+frag_keyframe -frag_duration 1000000 output.mp4

最新更新