ffmpeg - 如何使用 ffmpeg 流式传输到磁盘碎片 MP4?

标签 ffmpeg video-streaming mp4 pseudo-streaming

我正在构建一个应用程序,该应用程序需要在由 FFMPEG 编码的同时播放磁盘上的视频(换句话说,伪流到磁盘 - 播放轨迹就在编码后面,就像在实时流中一样)。所以 MOOV 原子本质上需要在它被处理时生成(或以 block 的形式交错到流中),我尝试使用 empty_moov 没有运气(特别是因为 quicktime 不支持它)。

我不确定 MP4 格式是否可行,正在寻找想法或解决方案。

最佳答案

分段 MP4 是这样做的方法,但它使用 empty_moov。
当一切都已经知道时,常规 MP4 文件的末尾有它们的标题(而不是像 fMP4 那样的开头)。它不适用于流式传输。

您可以尝试编写小的 MP4 文件(甚至是一个 GOP)并使用 fast_start(或类似的东西)将标题移动到文件的开头。我不知道连续播放多个文件的开销是多少,并且可能会导致播放不太流畅。

如果您已经对视频进行了转码并在读取数据后丢弃数据(或者空间不是问题),您可以输出 MJPEG。

关于ffmpeg - 如何使用 ffmpeg 流式传输到磁盘碎片 MP4?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13245567/

相关文章:

iphone - Http Live Stream视频内容

c++ - 将 mp4 解码为原始帧 Windows C++

Python 直播到 RTMP 服务器(Flash Media Server 克隆?)

audio - FFMPEG 比特率为 16Bit 用于音频转换

FFMPEG:2个输出文件需要相同的音频流

android - 当两个依赖项使用FFmpeg时如何解决不满意的链接错误

javascript - 如何使用 VTT 文件在 VideoJS 中获取预览缩略图?

Azure 媒体服务 - 视频播放因损坏而中止... (0x20400003)

video-streaming - RTSP 是否支持流媒体文件视频 MP4?

video - 如何通过循环图像生成视频,然后与另一个很长的视频连接而不使用 ffmpeg 重新编码?