gpt4 book ai didi

ffmpeg - MP4 视频只有在 Jwplayer 上完全加载后才能播放

转载 作者:行者123 更新时间:2023-12-04 22:51:38 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Post processing in ffmpeg to move 'moov atom' in MP4 files (qt-faststart)

(3 个回答)


3年前关闭。




嗨,最近我使用 FFMpeg 将一些视频转换为 MP4,但是当我尝试流式传输此视频文件时,播放器需要完全加载文件,直到它开始播放,我试图找到一种方法让它开始播放文件从一开始并继续加载。
我正在使用这个 FFMpeg 命令进行转换:

ffmpeg -i input.mp4 -vcodec libx264 -vpre default -crf 28 -ac 1 -ar 44100 -b 284k -ab 70k -r 15 -s 640x360 output.mp4 2>&1

最佳答案

发生这种情况是因为 mp4 格式的文件尾部有其 moov 信息。在逐步下载和播放文件之前,Flash 播放器需要该信息。因此,如果信息在文件末尾,则必须完全下载,这对于用户体验来说是很糟糕的。

根据您的回答,您可以编译 ffmpeg - qt-faststart 中提供的单独工具来对 mp4 文件进行后处理,然后将 mp4 文件用于视频流。

特别是,您可以下载一份 ffmpeg 的源代码副本,然后转到 tools 文件夹并运行:

make qt-faststart

然后你将在工具目录中有一个名为 qt-faststart 的工具。然后你可以运行:
qt-faststart input.mp4 output.mp4

并将 output.mp4 放到您的流媒体文件夹中,新的 mp4 文件将在播放时逐步下载。

或者,另一种选择是在之前的答案中建议的转码时间执行此操作,但是提供的命令行错误,应该是:
-movflags +faststart

在您的 ffmpeg 命令行中。它会做和你转码一样的事情。

所以有两个最简单的解决方案,希望好运!

关于ffmpeg - MP4 视频只有在 Jwplayer 上完全加载后才能播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26536816/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com