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

- 发布:2025-07-15 18:01
- 更新:2025-07-16 09:14
- 阅读:84
产品分类: uniapp/App
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: Apple M2;MacOS 14.5 (23F79)
HBuilderX类型: 正式
HBuilderX版本号: 4.66
手机系统: Android
手机系统版本号: Android 13
手机厂商: 安卓平板/学习机
手机机型: 安卓平板
页面类型: nvue
vue版本: vue3
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
1、在vue3,app,nuve页面使用video播放某些视频,设置2倍速播放
2、出现音频2倍速播放,但是画面并没有达到2倍速,导致最终音频已经播放结束没有声音;画面还在继续播放中。这时候的timeupdate里获取的当前视频时间超过了视频总时长
1、在vue3,app,nuve页面使用video播放某些视频,设置2倍速播放
2、出现音频2倍速播放,但是画面并没有达到2倍速,导致最终音频已经播放结束没有声音;画面还在继续播放中。这时候的timeupdate里获取的当前视频时间超过了视频总时长
预期结果:
1、音画同步
1、音画同步
实际结果:
1、2倍速播放,音画不同步
1、2倍速播放,音画不同步
bug描述:
1、在vue3,app,nuve页面使用video播放某些视频,设置2倍速播放
2、出现音频2倍速播放,但是画面并没有达到2倍速,导致最终音频已经播放结束没有声音;画面还在继续播放中。这时候的timeupdate里获取的当前视频时间超过了视频总时长
3、修改video的解码模式codec和播放策略play-strategy,依然一样的结果:音画不同步
菜菜2 (作者)
好的,谢谢,我看下
2025-07-16 09:19
菜菜2 (作者)
advanced 可以直接在uniapp video标签上直接设置属性吗,还是说需要使用ijkplayer 才有这个属性?
2025-07-16 09:34
qjr
回复 菜菜可以直接设置advanced 这个属性值的,文章下面也有例子可以参考一下;
2025-07-16 10:32
菜菜2 (作者)
我设置了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倍速,依然音画不同步,我都怀疑设置了是不是没效果了
2025-07-16 11:07
qjr
回复 菜菜2: 检查一下是否视频源有问题;配置advanced属性值是肯定有效果的,能不能解决你的业务要求就不清楚了;
2025-07-16 11:19
菜菜2 (作者)
回复 qjr: 视频源放到pc浏览器直接选择2倍速播放,画面和音频都正常;用ffmpeg方式查看视频信息,也没看出它有什么问题
2025-07-16 14:08