【问题标题】:Android MP4 moov mdat problemAndroid MP4 moov mdat 问题
【发布时间】:2011-08-05 06:31:59
【问题描述】:

我正在开发应用程序,我必须在其中播放 mp4 文件的渐进式蒸汽视频。但我遇到了PVMFErrContentInvalidForProgressivePlayback 错误。我认为这些视频不满足任何这些要求——“对于 3GPP 和 MPEG-4 容器,moov 原子必须在任何 mdat 原子之前。”如何转换满足该格式的文件?有什么转换器吗?

【问题讨论】:

    标签: android video mp4


    【解决方案1】:

    使用MP4Box-hint 开关来解决此问题。

    【讨论】:

    • 我已经下载了 GUI 版本的 MP4box。我尝试过使用不同的 -hint 选项。但它仍然给出 PVMFErrResourceConfiguration 错误。你能告诉我必须选择哪个具体选项吗?
    • @dalandroid:对不起,我只使用了命令行版本。另外,由于您的错误发生了变化,我认为您解决了moov/mdat 问题,但还有其他问题。
    • 为什么会出现这个 PVMFErrResourceConfiguration 问题?任何的想法?我已经用其他一些测试 3gp 渐进式蒸汽视频进行了测试,它们工作正常。
    【解决方案2】:

    对于 GUI 版本,在选项菜单下我选择了“rtp/rtsp 提示”。 然后在 Mux 选项卡中,我添加了带有添加按钮的 mp4 文件。之后按下右下角的 Mux 按钮。

    它在您的 mp4 文件的同一目录路径中创建混合版本。您可以将另存为用于不同的位置。

    新创建的文件对我有用,并且没有给出 PVMFErrContentInvalidForProgressivePlayback 错误。

    【讨论】:

      【解决方案3】:

      添加 -hint 只是在文件末尾添加交错(这还不够)。

      您可以使用名为 Handbrake (here) 的程序,您可以在其中选择“Web Optimize”选项 切换/重新安排 moovmdat 原子位置以进行渐进式下载。

      这个想法是在 MP4 容器标题和实际电影数据之间切换位置,因此您可以立即开始流式传输

      您可以在此处进一步了解解决方案:How to correctly encode .mp4 files for streaming

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2022-08-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-17
        • 1970-01-01
        相关资源
        最近更新 更多