【问题标题】:Android 2.3 Progressive Download Not WorkingAndroid 2.3 渐进式下载不工作
【发布时间】:2013-01-09 17:21:02
【问题描述】:

有效:

http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4

不起作用:

http://media.lakewood.org.edgesuite.net/JOM/messages/564_750.mp4

使用的代码:

Uri uri = Uri.parse(url);
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
intent.setDataAndType(uri, "video/mp4");
MainActivity.instance.startActivity(intent);

我检查了 VLC 中的编解码器类型,它们是相同的。然而,在 chrome 的开发工具(网络选项卡)中,我注意到兔子视频的工作方式类似于渐进式下载,而 joel 视频则以块状下载(即使它应该是渐进式的)。

我有什么遗漏吗?

【问题讨论】:

    标签: android video mp4 codec android-2.3-gingerbread


    【解决方案1】:

    找到问题了。

    564_750.mp4

    • 1 个视频流:AVC
    • 1 个音频流:AAC
    • 1 个文本流:EIA-608 <-- // problem

    视频在没有文本轨道的情况下重新编码,效果很好。

    【讨论】:

    • 感谢您发布此内容,有一天这将是有用的知识!
    【解决方案2】:

    不同之处在于,第一个是使用渐进式流媒体,而第二个是使用仅支持 3.0 及更高版本的实时流媒体。有关支持的协议,请参见此处:-

    http://developer.android.com/guide/appendix/media-formats.html#network

    您发现第二个链接以小块的形式下载,这是直播流式传输的标志(即使内容不是必须直播的)。可以在此处找到有关此协议的更多信息:-

    http://en.wikipedia.org/wiki/HTTP_Live_Streaming

    第一个似乎是使用渐进式流式传输,这并不是真正的流式传输,它将完整的 mp4 作为一个文件下载,但确实允许在您有足够的缓冲后立即开始播放。

    希望对您有所帮助。

    瑞恩

    【讨论】:

    • 我也是这么想的,但是后来我下载了流式传输不允许的文件(150mb),并将其托管在我的本地主机上,并且网络流量是相同的。有点坚果..
    • big_buck_bunny.mp4 下载时为 5.5,564_750.mp4 下载时为 150。我只是在 chrome 中查看 url,然后按 CMD/CTRL + S 将文件保存到我的桌面。
    • 是的,这有点疯狂。当您下载了 mp4 时,您是否尝试过复制到 sdcard 并从那里播放?可能会给你一个问题的线索。其他的东西是分辨率、帧率、比特率等。对此的支持取决于设备。此外,文档说“moov 原子必须在任何 mdat 原子之前,但必须在 ftyp 原子之后。”您可以确认您是否有本地文件。
    • 嘿 Ryan,我发现了问题(在我的回答中)。 +1 为您提供所有帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-24
    • 2011-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多