从硬件层去实现音画同步检测的测试方法

概要

一个做软件测试的老朋友(直播相关类)找到我,说他们公司一直想找一个比较可靠的音画同步的测试方法。他说现在的音画同步检测基本都还是基于软件算法采集,问我有没有什么想法,能不能搞一个装置什么的,模拟人眼看到的一样,从物理的角度或者说硬件层去实现这个同步检测。

方案设计

思路

一个视频通常由音频、画面、字幕和元数据组成。音画同步检测,验证的正是视频中的音频和画面在时间上的一致性,也就是说,如果我能分别完成音频和画面的信号采集,算出他们的时间差,就可以完成音画同步的一致性检测。

难点

音画同步的难点在于音画同步的测试是一项比较复杂的工作,因为涉及到多种因素,如视频源、编码器、解码器、传输协议、播放器、显示器等,每个环节都可能造成音画延迟的变化,而且音画延迟的大小和方向也可能随着时间而变化。考虑到视频最终是由人眼观看,而人体感官感知的只有显示器显示的画面和喇叭的声音,所以硬件信号的采集,集中在显示器和音频输出端,就能很好的拟合出感官上的相似数据。

硬件设计

在这里插入图片描述

视频画面

视频画面从显示屏端看,可以等效于是光的动态变化过程。因此,可以使用像VBPW34S这类的光电传感器,使其工作在光电导模式,对视频画面进行信号采集。
光电传感器的光电导模式

音频

音频的信号采集就相对简单和成熟,可以通过设备的音频输出口进行信号采集。

  • 对于具备3.5mm音频接口的设备,直接从3.5mm音频接口采集即可;
  • 对于Type-C或lightning等接口,通过转接线转回3.5mm接口。
可视化和计算

信号的可视化和计算,最终还是要用到电脑辅助,因此为了减少搭建测试环境的中间设备,充分运用电脑的硬件资源,我将采集到的光信号和音频信号分别接到了电脑(支持立体声输入)的音频输入口的左右声道。再通过开源的Audacity(多轨音频编辑器)查看两个声道的信号,两个信号之间的时间差,便是采集到的音画同步时间差。
在这里插入图片描述

硬件成品

在这里插入图片描述
在这里插入图片描述

小结

常见的软件识别偏向于从软件应用层去检测视频的音画同步,准确度依赖于识别算法的精度,而通过硬件去采集音画数据,更能接近于用户体验到的数据。
本次为朋友开发的检测小板,从整体操作流程上,已经相对简单了,也得到了朋友公司的认可。后期有时间的话,会将Audacity软件分析的功能集成到板子,直接通过USB即可获取到音画的延时数据(这个想法让我朋友好期待),哈哈哈哈~

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值