一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种投屏软件中声音延迟测试的方法及其系统与流程

2021-11-24 22:18:00 来源:中国专利 TAG:


1.本发明涉及网络通讯技术领域,特别是一种投屏软件中声音延迟测试的方法及其系统。


背景技术:

2.投屏是通过某种技术进行屏幕共享,多屏互动。现有的同屏产品多是形如u盘状或者盒子状的产品,采用嵌入式系统,可支持多种同屏功能,或者使用软件连接的方式实现,或者在平板电视上做为附加功能实现。具体来说将设备a(手机、电脑)的画面实时地在另一台设备b(手机、平板、电视)上显示,输出的内容包括视频、音频、文档等各类多媒体信息,以及在设备a上的实时操作画面。例如1、在爱奇艺追剧购买了会员后,移动端可以比电视端提前看剧情,将小屏幕投影到大电视上,提升体验。例如2、在智慧课堂中通过投屏技术,在教师端和学生端进行屏幕共享,完成教学内容的详细讲解,实现师生的互动授课,助力老师打造多彩互动课堂。
3.背景技术存在的缺点:投屏技术的音频共享存在时间延迟,过大的延迟会严重影响多屏的互动,目前测试音频共享的延迟时间,测试方案是由人工同时听取两端的声音来判断是否延时,投入人力进行重复的操作比较浪费,且效率低下,人工判定的方式也存在较大误差且无法准确判定延时时间差。
4.现有技术中公开了一种低延迟投屏的方法,见公开号为:cn107396172a,公开日为:2017.11.24的中国专利,该发明涉及多媒体播放技术。该发明解决了在弱网络环境下,发送端屏幕画面内容低延迟、高质量的镜像到接收端的显示画面上时需要借助其他专用的硬件接收设备或数据线的问题,提出了一种低延迟投屏的方法,其技术方案要点为:当在延迟时间阈值内接收端正常接收到完整的码流分片时,直接将接收的码流分片传递给播放器解码播放,输出实时画面,当超过延迟时间阈值后,接收端没有接收到完整的码流分片时请求发送端重新发送码流分片,并将重新接收的码流分片存入网络抖动缓冲区进行重新排序后传递给播放器。该发明的有益效果是,当丢包率比较严重或者网络差时,在延迟可控的前提下,将发送端高质量的镜像到接收端,无需专用的硬件接收设备或者数据线。该专利所解决的技术问题和技术方案与本专利并不相同。


技术实现要素:

5.为克服上述问题,本发明的目的是提供一种投屏软件中声音延迟测试的方法,实现自动化的测试,释放了人力,提升了测试效率。
6.本发明采用以下方案实现:一种投屏软件中声音延迟测试的方法,所述方法针对投屏中第一声延迟的测试,所述方法包括如下步骤:步骤s1、原端设备和共享端设备进行投屏共享后,同时对原端设备和共享端设备的声音输出端置于一录音设备上;步骤s2、录音设备对原端设备和共享端设备两端的音源同时收录,对收录的音源进行
波形处理,获得波形中两个出现峰值的时间t1和时间t2;步骤s3、计算出原端设备和共享端设备两端投屏的音频延迟时间差,并输出测试报告。
7.进一步的,所述步骤s1进一步具体为:由原端设备向共享端设备发起投屏请求,共享端设备接受请求,请求建立成功,原端设备和共享端设备进行投屏共享,将原端设备和共享端设备的声音输出端同时置于录音设备的收音处,点击录音设备开始录音。
8.进一步的,所述步骤s2进一步具体为:由原端设备开始投屏播放预先准备好的单峰值的有声音频,原端设备音频播放结束后,关闭投屏,断开连接;投屏断开连接时触发录音设备结束录音,得到录音文件;分析录音文件,通过python音频操作工具pyaudio将录音文件转换为波形图,获取波形图的第一个峰值、第二个峰值,将两个出现峰值的时间分别记录为t1和t2,则t1是原端设备播放声音的峰值时间,t2是共享端设备播放声音的峰值时间。
9.进一步的,所述音频延迟时间差即为将t2-t1获得

t,

t即为投屏的音频延迟时间,并将原端设备信息、共享端设备信息、音频延迟时间、测试时间形成所述测试报告。
10.本发明还提供了一种投屏软件中声音延迟测试的系统,所述系统针对投屏中第一声延迟的测试,所述系统包括投屏执行模块、录制音频模块、以及获取音频延迟时间差模块;所述投屏执行模块,用于将原端设备和共享端设备进行投屏共享后,同时对原端设备和共享端设备的声音输出端置于一录音设备上;所述录制音频模块,用于将录音设备对原端设备和共享端设备两端的音源同时收录,对收录的音源进行波形处理,获得波形中两个出现峰值的时间t1和时间t2;所述获取音频延迟时间差模块,用于计算出原端设备和共享端设备两端投屏的音频延迟时间差,并输出测试报告。
11.进一步的,所述投屏执行模块进一步具体为:用于原端设备向共享端设备发起投屏请求,共享端设备接受请求,请求建立成功,原端设备和共享端设备进行投屏共享,将原端设备和共享端设备的声音输出端同时置于录音设备的收音处,点击录音设备开始录音。
12.进一步的,所述录制音频模块进一步具体为:用于原端设备开始投屏播放预先准备好的单峰值的有声音频,原端设备音频播放结束后,关闭投屏,断开连接;投屏断开连接时触发录音设备结束录音,得到录音文件;分析录音文件,通过python音频操作工具pyaudio将录音文件转换为波形图,获取波形图的两个第一个峰值、第二个峰值,将两个出现峰值的时间分别记录为t1和t2,则t1是原端设备播放声音的峰值时间,t2是共享端设备播放声音的峰值时间。
13.进一步的,所述音频延迟时间差即为将t2-t1获得

t,

t即为投屏的音频延迟时间,并将原端设备信息、共享端设备信息、音频延迟时间、测试时间形成所述测试报告。
14.本发明的有益效果在于:1、该种测试方法将重复耗时的手工操作,通过自动化实现,释放了人力,提升了测试效率。
15.2、有效的做了一个创新,突破了以往的测试局限,能够对音频同步的延时做准确的时延判断,提高了测试质量。
16.3、测试结果信息完整,便于用来投屏延迟时间的优化分析。
附图说明
17.图1是本发明的方法流程示意图。
18.图2是本发明一实施例方法具体的流程示意图。
19.图3是本发明一实施例解析a.wav得到的波形图。
20.图4是本发明的系统原理框图。
具体实施方式
21.下面结合附图对本发明做进一步说明。
22.请参阅图1所示,本发明的一种投屏软件中声音延迟测试的方法,所述方法针对投屏中第一声延迟的测试,所述方法包括如下步骤:步骤s1、原端设备和共享端设备进行投屏共享后,同时对原端设备和共享端设备的声音输出端置于一录音设备上;所述步骤s1进一步具体为:由原端设备向共享端设备发起投屏请求,共享端设备接受请求,请求建立成功,原端设备和共享端设备进行投屏共享,将原端设备和共享端设备的声音输出端同时置于录音设备的收音处,点击录音设备开始录音。
23.步骤s2、录音设备对原端设备和共享端设备两端的音源同时收录,对收录的音源进行波形处理,获得波形中两个出现峰值的时间t1和时间t2;步骤s3、计算出原端设备和共享端设备两端投屏的音频延迟时间差,并输出测试报告。所述音频延迟时间差即为将t2-t1获得

t,

t即为投屏的音频延迟时间,并将原端设备信息、共享端设备信息、音频延迟时间、测试时间形成所述测试报告。
24.在本发明中,所述步骤s2进一步具体为:由原端设备开始投屏播放预先准备好的单峰值的有声音频(单峰值的音波本身存在较为显著的特征,声音出现集中,波峰陡峭,这样的声音在延迟测试(两个声音在短时间内相继出现)中也能形成明显的波峰用于延时时间计算。),原端设备音频播放结束后,关闭投屏,断开连接;投屏断开连接时触发录音设备结束录音,得到录音文件;分析录音文件,通过python音频操作工具pyaudio将录音文件转换为波形图,获取波形图的两个第一个峰值、第二个峰值(例如:播放一个“啊”的声音,在机器a播放的时候,发出了“啊”,就是第一个波形,机器b也播放“啊”的时候,就生成第二个波形。就只有一个“啊”声音,就是一个波形,因为机器c收集了机器a和b发出的“啊”,就是有2个波形峰值。),将两个出现峰值的时间分别记录为t1和t2(即出现第一个峰值时间t1,出现第二峰值时间t2),则t1是原端设备播放声音的峰值时间,t2是共享端设备播放声音的峰值时间。
25.下面结合一具体实施例对本发明作进一步说明:请参阅图2所示,1.1由机器a向机器b发起投屏请求,机器b接受请求,请求建立成功;1.2将机器a和机器b的声音输出端同时置于录音机器c的收音处,点击录音机器c开始录音;1.3由机器a开始投屏播放提前准备好的单峰值(杂音少的击打声音等,在波形图中只会展示一个声音)有声音频;1.4音频播放结束后,关闭投屏,断开连接;1.5投屏断开连接时触发录音机器c结束录音,得到录音文件;1.6分析录音文件,将录音文件转换为波形图(参阅图3所示),通过python音频操作工
具pyaudio获取录音文件的两个峰值出现时间t1和t2(即波形图中出现第一个峰值的时间t1和出现第二个峰值的时间t2),t1是机器a播放声音的峰值时间,t2是机器b播放声音的峰值时间。
26.1.7将t2-t1获得

t,

t即为投屏的音频延迟时间差。
27.另外,在投屏中,声音追其源头,是在机器a发出的,然后通过投屏工具在b机器上也进行播放,所以收音时第一个波峰肯定是来源于机器a的,第二个波峰才是机器b发出的,当然,理想状态时,投屏无延迟就会出现单峰值波形,不过在实际中几乎不可能出现;例如:2个人,a讲话,b学着a讲话,第一个声音自然就是a,第二个声音自然就是b;a把声音投给b,测声音推送的延迟,就是机器a上的声音,在机器b上播放的时候,要多久延迟。
28.如图4所示,本发明还提供了一种投屏软件中声音延迟测试的系统,所述系统针对投屏中第一声延迟的测试,所述系统包括投屏执行模块、录制音频模块、以及获取音频延迟时间差模块;所述投屏执行模块,用于将原端设备和共享端设备进行投屏共享后,同时对原端设备和共享端设备的声音输出端置于一录音设备上;所述录制音频模块,用于将录音设备对原端设备和共享端设备两端的音源同时收录,对收录的音源进行波形处理,获得波形中两个出现峰值的时间t1和时间t2;所述获取音频延迟时间差模块,用于计算出原端设备和共享端设备两端投屏的音频延迟时间差,并输出测试报告。所述音频延迟时间差即为将t2-t1获得

t,

t即为投屏的音频延迟时间,并将原端设备信息、共享端设备信息、音频延迟时间、测试时间形成所述测试报告。
29.所述投屏执行模块进一步具体为:用于原端设备向共享端设备发起投屏请求,共享端设备接受请求,请求建立成功,原端设备和共享端设备进行投屏共享,将原端设备和共享端设备的声音输出端同时置于录音设备的收音处,点击录音设备开始录音。
30.其中,所述录制音频模块进一步具体为:用于原端设备开始投屏播放预先准备好的单峰值的有声音频,原端设备音频播放结束后,关闭投屏,断开连接;投屏断开连接时触发录音设备结束录音,得到录音文件;分析录音文件,通过python音频操作工具pyaudio将录音文件转换为波形图,获取波形图的两个第一个峰值、第二个峰值,将两个出现峰值的时间分别记录为t1和t2(将录制的音频通过python的第三方库pyaudio将音频转化为波形图,该波形图为清晰的双峰图,理想状态投屏无延迟时双峰重叠,此时计算双峰出现的时间差即可知道延时时间),则t1是原端设备播放声音的峰值时间,t2是共享端设备播放声音的峰值时间。
31.总之,本发明采用自动化代替人工测试,把投屏共享后,将两端的音源同时收录,对收录的音源进行波形处理,计算波峰之间的时间差,最终计算出两端投屏的音频延迟时间差,并输出测试报告。
32.以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献