+1
短视频播放器小程序插件(云点播)调用playbackRate设置倍数播放无效?问题说明: 云点播短视频播放器插件利用API VideoContext.playbackRate(number rate)设置倍数播放无效。 相同处理逻辑,小程序组件<video />没有该问题。 插件版本: "plugins": { "myPlugin": { "version": "0.1.2", "provider": "wx116d0dd5e6a39ac7" } } 代码逻辑如下: 在onReady里创建 video 上下文 onReady() { // 创建 video 上下文 VideoContext 对象。 // video组件id 为 video this.videoContext = wx.createVideoContext('video') // 设置倍数 this.changeRate() }, // 切换视频播放倍数 changeRate(e) { const rates = this.data.rates const index = e ? parseInt(e.currentTarget.id) : this.data.currentRate this.setData({ currentRate: index, showRates: false }, () => { const rate = rates[index] this.videoContext.playbackRate(rate) }) } WXML调用,my-player为引入云点播短视频播放器插件的组件名。 微信开发者工具里渲染的dom结构 [图片] 解决方法: 云点播短视频播放器插件创建video上下文VideoContext对象与内置<video />标签不一样。 内置<video />标签: const ctx = wx.createVideoContext(string id, Object this),建议使用wx.createSelectorQuery获取 context 对象。 插件: // 引入云点播短视频播放器插件 const plugin = requirePlugin('app.json中引入的插件自定义的名字') // 创建videoContext对象 const ctx = plugin.getContext('palyerid') // 设置倍数 ctx.playBackRate(rate)
2021-12-02