对 HTML5 中的流媒体视频感到困惑

Confused about streaming video in HTML5

从 Amazon Cloudfront 分发中即时播放 HTML5 视频的最佳方式是什么?

我对这个主题做了很多研究,但似乎无法找出最好的方法。

我目前正在使用 popcorn.js,并且也尝试过使用 video.js。视频工作正常,只是不能在所有浏览器上立即播放。在 IE 中,它似乎首先下载整个文件。

目前在 Amazon Cloudfront 分配上使用 MP4 的 HTML5 视频最简单的解决方案是什么?

如果您传送的是 mp4,那么 "instantly" 可能总会有一些延迟 - 客户端需要下载足够的视频才能在没有缓冲的情况下播放(CloudFront 等会有所帮助,因为它们会缓存在离用户更近的地方)

您需要确保您的 mp4 文件经过优化以实现最佳交付...您需要尝试一些设置,但我建议确保 MOOV 元素位于文件的开头帮助浏览器快速获取足够的元数据。

我使用 ffmpeg 来优化内容,通常是这样的

./ffmpeg -y -i SourceFile.mp4 -s 1280x720 -c:v libx264 -b 3M -strict -2 -movflags faststart DestFile.mp4

您将需要调整帧大小(-s 参数)和目标比特率 (-b) 以获得所需速度的大小和质量的正确平衡。

也请查看 preparing mp4 file for html 5 以获得稍长的答案