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模块进行渲染播放,也是可能造成延迟的。
对视频源的分析依旧可以采取上述方式进行大致分析。