我正在开发一个试管站点,当前存在H.264格式问题。我注意到YouTube将他们的高清视频放入了MP4容器中,因此从逻辑上讲,我也这样做了。
接下来,我安装mod_h264_streaming
了lighttpd以使流和时间轴清理工作。
问题在于大文件(在某些高分辨率下> 500MB)甚至要花很多时间才能开始缓冲(我读到Flowplayer和其他Flash播放器需要先下载元数据)。我使用MP4Box将xmov原子移到了文件的开头(我也尝试了Qt QuickStart),但这没有帮助。
接下来,我读到我需要交错音轨,所以我也这样做了。这没有引起任何变化:视频仍然很慢。
因此,我尝试将完全相同的H.264电影放到FLV容器中,并且播放缓冲几乎立即开始-不慢。
那我在这里想念什么?为什么我会选择带有模块的MP4容器,该模块mod_264_streaming
看起来非常慢,而不是带有lighttpd的常规FLV容器mod_flv_streaming
?显然,许多网站都选择MP4容器,但我不明白为什么。
作为附带的问题,我尝试使用HTML5 <video>
标签尝试播放相同的H.264 MP4电影,并且擦洗很快!我查看了lighttpd的日志文件,发现Flash播放video.mp4?start=234
器在每次清理时间轴时都会追加,而使用本机HTML5 <video>
标签的浏览器则不会这样做。这是Flash的某种限制吗?为什么Flash流不能和HTML5流一样快?