所以我正在尝试播放托管在远程服务器上的视频,我遇到的问题是大型视频开始播放需要很长时间。在视频开始播放之前,似乎需要下载整个视频(通过比较视频开始播放所需的时间和下载视频所需的时间)。有没有人建议如何设置视频,即使只有少量的视频下载就开始显示。
答案 0 :(得分:1)
处理单个上传,您希望使用类似ffmpeg的内容将元数据(MOOV atom)移动到视频文件的前面:
./ffmpeg -y -i SourceFile.mp4 -s 1280x720 -c:v libx264 -b 3M -strict -2 -movflags faststart DestFile.mp4
以上将为您提供1280x720输出,在mp4容器中使用h264以3Mbps为单位,并且还将执行第二次传递以将moov元素移动到文件的前面,使其能够更快地开始流式传输。它不会重新编码音频,因此将保持您开始的任何质量
您可能想要使用帧大小和比特率来使文件大小与您喜欢/需要的匹配。
要在后台执行此操作,您要查看this之类的内容,以便从PHP调用ffmpeg,或者使用http://ffmpeg-php.sourceforge.net/来调用它,或者更方便地使用远程转码服务,例如http://ffmpegasaservice.com/