imageData = decoder.getFrameData() 这个不保证每次取都能取到帧, 取到了就渲染,没取到就下一帧再尝试取一次. 如果在 const decoder = wx.createVideoDecoder() 之后添加 console.log(decoder),直接报错。 这个问题 给下截图看看是什么报错
微信 VideoDecoder 官方 Demo 在 Android 机器上无法正常运行?https://developers.weixin.qq.com/s/dSRQqGmg7GuT 来自 https://developers.weixin.qq.com/miniprogram/dev/api/media/video-decoder/VideoDecoder.html。 不做任何修改,在 小米 11,Android 13 版本,微信 Version 8.0.37,上无法正常运行。在 苹果手机上能正常运行。 具体表现为,点了 Play 之后开始选择视频,无论选择哪种视频(尺寸、大小、时长),都会弹出一个 tip 提示 “压缩中,请稍后”,等该 提示 消失后,啥也没有了。从 log 上看,就打印出 “stop” 了。 如果对 if (imageData) render(imageData) 修改为 if (imageData) { console.log("imageData", imageData); render(imageData) } 则,不会有任何带有 imageData 字样的 log 打印。 如果在 const decoder = wx.createVideoDecoder() 之后添加 console.log(decoder),直接报错。 另外,真机调试时,log 没能显示在开发者工具的 console 页面上。只能用 预览,打开调试的方法来查看 log。
2023-06-14