我将托管视频的服务器设置为静态文件
然后我用html 5加载并播放视频文件。
<div id="video wrapper" >
<video id="video" width="500" height="300" controls>
<source src="/videos/test.mp4" type="video/mp4" >
Your browser does not support the video type
</video>
</div>
根据此讨论,How to stream videos through HTML5? 理想情况下,视频将逐步加载(蒸汽)。但在我的情况下,视频加载似乎阻止了整个页面加载,在页面加载和视频开始播放之前花了几分钟。
服务器端有这样的输出:
127.0.0.1 - - [29/Jul/2013 18:00:23] "GET /videos/test.mp4 HTTP/1.1" 206 955542769 102.4900
我将其解释为:102秒传输大小9555mb视频文件“test.mp4”。
测试是使用本地服务器(localhost)完成的,所以我猜这不是网络问题。我不知道如何调试这个。我是否需要编写专用的流媒体服务器而不是托管静态文件?
任何有关故障排除的提示都将受到赞赏。
答案 0 :(得分:0)
在mp4中,你需要检查moov原子。 原子是一个独立的数据单元,包含有关视频文件的信息。 只需打开你的mp4文件,检查启动mp4文件中是否有“moov”字符串。
对于渐进式下载,moov atom应位于文件的开头。
如果moov原子位于文件的末尾,则意味着对mp4文件禁用渐进式下载。
只需运行以下linux命令。
head -c 50 video.mp4
输出应如下所示:
ftypisomisomJ??moovlmvhd?%?:?%?:XP?