记录一次Android视频播放音画不同步问题的定位及分析

文章介绍了音画不同步的现象,即视频的声音与画面时间点不一致,通过Video2Audio工具、Audacity音频分析软件和Potplayer视频播放器来验证和测量音画延迟。分析思路包括检查视频源的pts延迟和播放器渲染时的延迟。提供了一种定量分析音画不同步的方法,并指出播放器和视频源可能是问题的来源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.何为音画不同步

音画不同步很简单就是视频播放过程中声音和画面出现的时间点不一致,滞后或者提前。

2.音画不同步问题分析思路

2.1.音画不同步问题的证明

对于滞后或者提前很多的音画不同步可以直接认为发生了该问题,但是滞后或者提前不是很多的就需要进行数据分析来证明该问题的确发生了,而不是人主观感知的失误

2.1.1.证明方式

需要用到三个工具
1.Video2Audio 链接:https://pan.baidu.com/s/1dC94LI2M8uw6NGSHH1Dr1A
提取码:264x
一个python脚本,使用ffmpeg处理视频,将视频按帧数提取成图片并按照帧数编码命名,从视频中提取音频。需安装python3环境
2.Audacity,链接:https://pan.baidu.com/s/1h5jRd6HSk-y6q0clD2KfNg
提取码:9ayc
分析音频的工具,可以定位到某个音频帧所在的时间点。
3.potplayer,可以定位到视频某帧的时间点,与1.2功能类似,只是比较粗略,没有1.2精准,可作为参考,下载方式直接官网下载就好。

步骤:
1.执行Video2Audio 文件下的main.py脚本,在这里插入图片描述
执行完毕后,会在当前目录生成source.wav的音频和source文件夹,文件夹下是视频按帧提取的图片
在这里插入图片描述
使用Audacity打开音频,
在这里插入图片描述
定位到你关注的音频某帧的时间点,我这个示例为6.674s
在这里插入图片描述
音频帧对应的视频帧为序号为214的图片
在这里插入图片描述
通过potplayer可以得知视频帧率为30fps,代表1s30张图片,使用214/30 = 7.133s
7133 - 6674 = 459ms,可以得知音频滞后459ms。
截至此处就可以证明音画不同步现象存在,音频滞后459ms.接近0.5s,仔细关注是可以感知到的。

2.2.音画不同步问题分析

音画不同步现象的分析可以由两个点进行分析
1.视频源,如果视频源本身视频首帧pts和音频首帧pts就存在延迟,那播放必然会有音画不同步现象
2.播放器,播放器编解码后会将视频和音频送到video和audio模块进行渲染播放,也是可能造成延迟的。
对视频源的分析依旧可以采取上述方式进行大致分析。
视频播放中涉及的模块和基本流程

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值