Oops!该文章已被删除

一种唇音同步差量化方案的介绍

作者:陈兴

导语 :针对花样直播唇音同步问题,设计了一套量化测试方案。通过OCR字符识别以及音频频率的分析,简便快捷,低成本,高准确度的测量出唇音同步差。本文重点对该方案的设计原理进行了分享。

一种唇音同步差量化方案的介绍

1. 唇音同步原理

音视频采集的数据分别来自于麦克风与摄像头,假定摄像头与麦克风采集数据是实时的,并在采集到数据时给他们一个时间戳来标明数据所属的时间,而编码封装按照原音视频时间的相对关系,就能保证音频与视频在时间上的对应。如此封装好数据之后,播放端同样根据音视频的时间戳来播放对应的音视频,就能实现音视频同步的效果。

不同步的原因主要有以下几种:

1) 生成环节:如果数据块上打的时间戳本身就有问题,必然产生不同步;

2) 传输环节:音频流、视频流分开传输,到达解码播放端时刻不同步;

3) 解码环节:解码时,未对音视频时间戳进行对齐,或对齐的不好,导致播放不同步。

最后表现出来,就是声音和画面对不上,严重影响用户体验。

2. 用户如何感受到不同步

1) 用户已知什么画面(主播口型)对应什么音色;

2) 用户在看画面的同时,耳朵在听对应的声音;

3) 通过大脑对比声音和画面的时间差,感知是否同步,感知同步差大小。

3. 如何模拟用户进行量化测试

1、 生成对应的视频文件,并且已知画面每一时刻对应的声音特性;

生成一个什么样的视频文件,能够最好的让画面和声音一一对应起来,是这个问题的关键。

这里采用的方案是:

1) 生成一个秒表视频,每个时刻,对应时间显示都是线性递增的;

2) 生成一个与视频等长的扫频wav文件,每个时刻,声音的频率都是线性递增的;

3) 将时间与频率对齐,如00:00.00对应频率0Hz,00:01.00对应频率1kHz,00:03.05对应频率3.05KHz等等;

2、 将用户播放的视频画面以及声音同步录制下来;

3、 像大脑一样去同步分析画面和声音,对比他们和视频源的差别;

1) 对于视频,按固定周期,使用Elecard Streameye取视频帧,查看画面秒表时间;

2) 对于音频,按固定周期,使用cooledit查看对应音频频率值;

3) 比较秒表时间与频率值的偏差,得到唇音同步时间差。

流程图如下:

4. 自动化实现简介

手动测试太麻烦,用python就可以轻松自动化。如上图所示,各环节python都有相关模块可以帮忙处理。

1) FFMPEG:截取对应时间的视频帧,分离出音频文件;

2) Tesseract:数字识别,读取秒表对应时间;

3) Numpy:FFT变换,分析音频频率值。

4) PyQT:给工具加个界面,成品如下。

5. 小结

当前方案为纯黑盒测试,可支持竞品测试。

但对于秒表数字清晰度有一定要求,如数字有拖尾模糊等情况,会影响识别准确度。

欢迎有兴趣的同学联系hingchen(陈兴)一起交流改进。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

社区的朋友们

137 篇文章99 人订阅

相关文章

来自专栏跨界架构师

如何一步一步用DDD设计一个电商网站(一)—— 先理解核心概念

    DDD(领域驱动设计)的一些介绍网上资料很多,这里就不继续描述了。自己使用领域驱动设计摸滚打爬也有2年多的时间,出于对知识的总结和分享,也是对自我理解的...

1202
来自专栏数据安全与取证

各类APP是否在监听?首个大规模实证的研究结论 | Report

我们之前经常看到和听到,说许多应用商店的APP会监听用户的生活,通过获得权限并在用户不知情的情况下收集隐私信息并回传。例如:麦克风会经常偷偷开着,听到你和周边人...

1567
来自专栏华章科技

从大数据中挖掘什么?

大数据挖掘中最重要的是决定挖掘什么样的知识,这是在数据的收集、处理、挖掘的整个过程中都需要认真考虑的问题。本文首先提出大数据挖掘的几项策略,即尽量设想挖掘的场景...

432
来自专栏极乐技术社区

小程序 · 一周报

6 月 1 日,云南省政府和腾讯联合打造的全域旅游智慧平台「一部手机游云南」app 正式上线,其中包含 7 个辅助小程序,能够做到厕位引导都一次到位。

1040
来自专栏CSDN技术头条

9款国内外垂直领域的在线作图工具:那些可以替代Visio的应用

责编/钱曙光 现在越来越多的创业公司都希望提升办公的效率,之前在CSDN云计算频道的一篇文章《提升办公效率才是王道!12款国内外企业协作工具推荐》,其中就介绍了...

2225
来自专栏ThoughtWorks

编程的精进之法|洞见

仝健 ThoughtWorks 编程,众所周知被定义为知识工作。所有的知识工作,从业者和门外汉都喜欢把它神秘化,将整个过程以不可知论的风格来解释。理由往...

3537
来自专栏jouypub

DSP广告系统架构

不同的流量资源会有不同的效果,如何选择媒体和广告位是关键。平台上各种站点,频道,广告位,广告投放前制定投放策略喝中药作,需要根据投放KPI(即广告主用于评估...

1.7K3
来自专栏张善友的专栏

微软公司的安全开发周期模型

安全开发周期,即Security Development Lifecycle (SDL),是微软提出的从安全角度指导软件开发过程的管理模式。SDL不是一个空想的...

24610
来自专栏腾讯开源的专栏

Github 开源项目贡献指南:如何给开源项目做贡献 (上)

给开源项目做贡献可以说是在你能想象的领域上学习,传授,累计经验的最有效的方式!为什么人们要给开源项目做贡献,原因太多了!本文将为大家讲述如何为Github 开源...

7481
来自专栏互联网杂技

3D交互设计会是这个样子?

现在,VR和MR已经越来越热门了(影视剧里已经出现的太多了,比如《黑镜》),但现实是,我们对于虚拟交互的认知还是仅限于酷炫的特效,真正第一次成系统并实用的交互模...

3517

扫码关注云+社区