部分音频获取不到duration (测试https服务的音频都获取不到duration)
当音频获取不到duration时,使用seek等方法时,小程序不停触发canplay事件,直接卡死
音频地址:
流:
http://edu.hivoice.cn:9088/WebAudio-1.0-SNAPSHOT/audio/play/b4914fba-ec63-4209-9c21-a793718a0f1c/1536825827580455169/sh
(可以正常播放但是获取不到duration,开发工具和浏览器正常)
mp3:
http://edu.hivoice.cn:9088/WebAudio-1.0-SNAPSHOT/audio/play/b4914fba-ec63-4209-9c21-a793718a0f1c/1536825827580455169/sh
/mobile
(开发工具和浏览器正常, 手机不能播放)
麻烦给个相关的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html),我们定位下问题
wechatide://minicode/pcNtjpmU7y2l
http://edu.hivoice.cn:9088/WebAudio-1.0-SNAPSHOT/audio/play/b4914fba-ec63-4209-9c21-a793718a0f1c/1536825827580455169/sh 这个链接在iOS上是一个实时直播的链接,类型估计是链接的后台指定的(可以试下在safari或者微信的会话打开)。 这种实时链接在iOS的系统播放器没有计算出duration,可以尝试把实时类型去掉。另外,这种实时类型音频是不支持seek的,seek到导致从头播放。 一直返回canplay是因为做了seek操作,触发了bug,这个bug我们会下后续版本修复。
http://edu.hivoice.cn:9088/WebAudio-1.0-SNAPSHOT/audio/play/b4914fba-ec63-4209-9c21-a793718a0f1c/1536825827580455169/sh/mobile 这个链接是一个文件链接,在浏览器打开是一个文件,在系统播放器自然也无法播放。这种情况组件是有返回error事件的。
https://demo-edu.hivoice.cn:9526/mp3/41.mp3
同样获取不到duration, 并且调用seek同样卡死(安卓正常)
http://edu.hivoice.cn:9088/WebAudio-1.0-SNAPSHOT/audio/play/b4914fba-ec63-4209-9c21-a793718a0f1c/1536825827580455169/sh/mobile
是mp3文件只是没有.mp3后缀。开发者工具和H5都是正常使用的
1. https://demo-edu.hivoice.cn:9526/mp3/41.mp3 这个链接和我上面回复的1是同一个问题
2. http://edu.hivoice.cn:9088/WebAudio-1.0-SNAPSHOT/audio/play/b4914fba-ec63-4209-9c21-a793718a0f1c/1536825827580455169/sh/mobile 确实是一个文件链接,即使加上mp3文件后缀在windows和mac平台上的工具和浏览器都无法播放。 你可以尝试用safari播放,如果播放失败就是本身系统不支持
我今天做的video组件的也不能设duration,设置了只是显示那么多,实际还是能全部播放,不知道咋回事,我自己又新建了个测试用例,结果还是不行
我提过一次duration获取不到, 但是官方没给解决方案
这次也是因为duration问题,seek时 不停的触发 canplay事件, 直接把小程序卡死了,