ffmpeg-生成moov原子

ffmpeg-生成moov原子,ffmpeg,mp4,video-recording,Ffmpeg,Mp4,Video Recording,我目前正在用blackmagic的prorecorder录制视频。我使用ffmpeg将动态视频转码到mp4视频容器。持续时间未知,因为我正在转码prorecorder输出到命名管道的.ts 我的目标是尝试在流仍在录制时用浏览器播放此文件-播放效果很好,但问题是,当我打开文件时,持续时间定义为当前录制时间 所以,问题是-我想在fe期间生成“假”moov原子。使用ffmpeg 8小时,然后开始录制mp4文件,就像我已经在做的那样。我怎么能这样做 我检查过的文件,我认为是相关的- 我在堆栈上也看到了这

我目前正在用blackmagic的prorecorder录制视频。我使用ffmpeg将动态视频转码到mp4视频容器。持续时间未知,因为我正在转码prorecorder输出到命名管道的.ts

我的目标是尝试在流仍在录制时用浏览器播放此文件-播放效果很好,但问题是,当我打开文件时,持续时间定义为当前录制时间

所以,问题是-我想在fe期间生成“假”moov原子。使用ffmpeg 8小时,然后开始录制mp4文件,就像我已经在做的那样。我怎么能这样做

我检查过的文件,我认为是相关的-
我在堆栈上也看到了这一点:

我有一个类似的问题,只有在编码了近2000个视频后才发现它。我没有重新开始,而是使用以下命令插入moov原子:

/usr/bin/ffmpeg -i ./input.mp4 -c:v copy -movflags faststart -strict -2 ./output.mp4

在您的场景中,碎片化mp4解决方案将更“标准”或更容易RTMP流。您看,带有ffmpeg的RTMP流是否有返回流时间的选项,例如,这意味着您可以重播2小时前发生的事件?不,实际上您不能这样做。我以为你是在尝试直播,但它是不同的。这会将moov原子移动到开始,但仅在第二次移动时,从而显著延长转换时间,并且首先会使目的无效:在转换完成之前,你不能开始播放-movflags empty_moov`使文件在仍在转换时可播放,但持续时间未定义,无法进行查找。所以问题是:如果带有空moov的文件是可播放的,并且我们知道持续时间,为什么我们不能将持续时间数据放在开头?