我为我的网络播放器将视频转换为 MP4。我的问题是:我的视频没有缓冲。我必须等到整个视频下载完毕,然后才能播放视频。
这是我的exec()
命令:
ffmpeg -i uploaded_files/'.$le["file"].' -vcodec libx264 -pix_fmt yuv420p flash/'.$le["file"].'.mp4
是否有任何缓冲选项?我的 MP4 大小和质量都很好。但是如果没有缓冲,那就不好了。
这是exec()
我使用的命令的错吗?
我的视频没有缓冲。我必须等到整个视频下载完毕,然后才能播放视频。
-movflags faststart
在编码时使用该选项,例如
ffmpeg -i input.mp4 […] -movflags faststart output.mp4
或者,或者,qt-faststart
在文件上运行。
文件没有立即流式传输的原因是它们的MOOV atom位于文件的末尾,为了播放它,客户端需要解析此信息。qt-faststart
只会移动该原子,您的文件将立即开始播放。