uni-app app 使用video 2倍速播放某些视频时出现音画不同步播放到最后面音频结束了画面还没播放结束

uni-app app 使用video 2倍速播放某些视频时出现音画不同步播放到最后面音频结束了画面还没播放结束

项目信息 详情
产品分类 uniapp/App
PC开发环境操作系统 Mac
PC开发环境操作系统版本号 Apple M2;MacOS 14.5 (23F79)
HBuilderX类型 正式
HBuilderX版本号 4.66
手机系统 Android
手机系统版本号 Android 13
手机厂商 安卓平板/学习机
手机机型 安卓平板
页面类型 nvue
vue版本 vue3
打包方式 云端
项目创建方式 HBuilderX

示例代码:

<video id="myVideo" src="https://XXX/2minute-demo.mp4" controls></video>

操作步骤:

  1. 在vue3,app,nuve页面使用video播放某些视频,设置2倍速播放
  2. 出现音频2倍速播放,但是画面并没有达到2倍速,导致最终音频已经播放结束没有声音;画面还在继续播放中。这时候的timeupdate里获取的当前视频时间超过了视频总时长

预期结果:

  1. 音画同步

实际结果:

  1. 2倍速播放,音画不同步

bug描述:

  1. 在vue3,app,nuve页面使用video播放某些视频,设置2倍速播放
  2. 出现音频2倍速播放,但是画面并没有达到2倍速,导致最终音频已经播放结束没有声音;画面还在继续播放中。这时候的timeupdate里获取的当前视频时间超过了视频总时长
  3. 修改video的解码模式codec和播放策略play-strategy,依然一样的结果:音画不同步

更多关于uni-app app 使用video 2倍速播放某些视频时出现音画不同步播放到最后面音频结束了画面还没播放结束的实战教程也可以访问 https://www.itying.com/category-93-b0.html

7 回复

可以关注一下这篇文章:https://ask.dcloud.net.cn/article/39136 里面的参数可能会对你的这个情况有用;

更多关于uni-app app 使用video 2倍速播放某些视频时出现音画不同步播放到最后面音频结束了画面还没播放结束的实战教程也可以访问 https://www.itying.com/category-93-b0.html


好的,谢谢,我看下

advanced 可以直接在uniapp video标签上直接设置属性吗,还是说需要使用ijkplayer 才有这个属性?

回复 菜菜可以直接设置advanced 这个属性值的,文章下面也有例子可以参考一下;

我设置了advanced属性值: { key: “max-fps”, value: 60, type: “player”, }, { key: “framedrop”, //跳帧处理,CPU处理较慢时,进行跳帧处理,保证播放流程,画面和声音同步 value: 5, type: “player”, }, //设置播放前的探测时间 1,达到首屏秒开效果 { “key”: “analyzeduration”, “value”: 100, “type”: “format”, }, //设置循环播放次数 { “key”: “fflags”, “value”: “nobuffer”, “type”: “format”, }, // 最大缓冲大小,单位kb { “key”: “max-buffer-size”, “value”: 1024 * 1024, “type”: “player”, }, 但是还没解决2倍速播放情况下,视频画面并没有达到2倍速,依然音画不同步,我都怀疑设置了是不是没效果了

回复 菜菜2: 检查一下是否视频源有问题;配置advanced属性值是肯定有效果的,能不能解决你的业务要求就不清楚了;

回复 qjr: 视频源放到pc浏览器直接选择2倍速播放,画面和音频都正常;用ffmpeg方式查看视频信息,也没看出它有什么问题

回到顶部