【问题标题】:Http video streaming needs to download full video data to start play?Http视频流需要下载完整的视频数据才能开始播放?
【发布时间】:2015-01-31 09:25:07
【问题描述】:

在我的服务器中有两个 mp4 文件可用。当我从浏览器浏览video1.mp4 url​​时,它开始在浏览器中播放视频文件。

如果我从浏览器播放video2.mp4 url​​,开始播放需要很长时间。

当时我检查了浏览器的临时文件,它下载了完整的视频,然后才开始播放。 清除临时文件后,我尝试播放 video1。它只需要一些文件。(视频1大小为800 MB,临时内存只有50 MB,视频2大小为500 MB,临时内存也有500 MB)

两个视频文件有什么区别。两者都只是 MP4。但是一个需要完整的视频数据,另一个需要部分视频文件,为什么?

【问题讨论】:

    标签: http servlets video-streaming mp4 http-streaming


    【解决方案1】:

    这两个文件的编码不同。 MP4 文件分为称为框的数据包,描述压缩类型和视频文件中存在的不同轨道的框是一个“moov”框,传统上它位于文件的末尾,但编码软件可以配置为在开始时生成它。

    例如,如果您使用ffmpeg,则可以使用qt-faststart 选项来启用将元数据放在开头。

    【讨论】:

    猜你喜欢
    • 2016-01-28
    • 2018-11-23
    • 2012-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-21
    • 2017-12-15
    • 2015-01-28
    相关资源
    最近更新 更多