我正在构建一个应用程序,它需要在FFMPEG编码的同时在磁盘上回放视频(换句话说,伪流式传输到磁盘-就像在实况流中一样,在编码之后的回放轨迹)。因此,MOOV原子基本上需要在处理时生成(或者以块的形式交错到流中),我尝试过使用empty_moov,但没有成功(特别是因为quicktime不支持它)。
我不确定这是否可能与MP4格式,寻找想法或解决方案。
发布于 2017-04-20 23:32:00
碎片化的MP4是一种方法,但它使用empty_moov。当一切都已经知道时,常规的MP4文件在结尾(而不是像fMP4那样的开头)有它们的头。它不是用于流媒体的。
您可以尝试编写小的MP4文件(甚至一个GOP),并使用fast_start (或类似的代码)将头文件移动到文件的开头。我不知道连续播放几个文件的开销是多少,可能会得到不太流畅的回放。
如果您已经对视频进行了代码转换,并在读取之后丢弃了数据(或者空间不是问题),则可以输出MJPEG。
https://stackoverflow.com/questions/13245567
复制相似问题