duration异常导致的移动端音频无法播放问题

现象:

1.在移动端播放音频文件的时候发现部分mp3音频文件在我的s4上无法播放,在使用转码工具将其重新转成mp3后,就能播放了。

2.将不能播放的文件上传到云盘后,使用云盘的资源地址,发现可以在移动端播放。

3.对比http请求,发现对云盘资源的请求里有206响应。然后看之前不能播放的请求,里面也是有range头的,只是之前的资源不支持range。

4.对于移动端不能播放的资源,在pc端是可以播放的。

结论:

移动端对音频文件的格式要求更严,若无法取到其中的duration信息,会尝试发送range头通过206响应获取。若还获取不到,则资源无法播放。

 

ps:以上不能播放的资源,在ios上(new ipad)可以播放,但获取不到duration信息,即无法实现播放进度条的效果。转码后的资源和放在云盘的资源均正常。

posted @ 2014-02-25 18:55  snadn  阅读(581)  评论(0编辑  收藏  举报