软件测试之直播类产品的直播质量方法小结
时间:2022-08-03 17:19:00 sitemap
测试人员,如何测试直播产品的直播质量?
用户最关心的性能是什么?
音视频质量测试的标准是什么?
真正决定未来竞争的关键是在满足用户需求的前提下,提高直播软件的质量指标,测试流畅性、清晰度、音质、稳定性和流量消耗,从而提高音视频通话质量。
音视频的基本原理
1.采集
音频和视频需要通过相机、麦克风等硬件设备上的传感器进行收集、传输和转换,最终成为计算机数字信号的过程。其中,双视频和群视频中的广播是由ffmpeg插件完成。
2.前处理
收集的音频和视频数据需要经过一些处理才能获得更好的效果。音频的预处理包括增益控制(AGC) 、噪声抑制(ANS)、回声抵消(AEC)、静音检测(VAD)等等,视频的预处理包括视频降噪、缩放 等。
3.编解码
一个信号或数据流需要编解码操作,这里的变换包括编码信号或数据流(通常用于传输、存储或加密)或提取编码流操作。有很多视频编解码器,比如vp8、vp9、MPEG、H264等;音频编解码器可分为两类:语音编解码器(SILK、Speex、iSAC等)和音频编解码器(ECELT、AAC等)。
4.网络传输
在网络传输中,将选择不同的网络环境UDP或TCP传输一般优先考虑即时音视频通话UDP,由于其具有良好的自由度和延迟性;此外,还将处理传输过程中的损失,包括控制包的大小FEC机制、丢包重传、Jitter控制、延迟、乱序等。
5.后处理
数据通过网络传输到接收方后,解码进入后处理环节。在此链接中,音频数据可能需要重新采样或混音,而视频可能需要消除块效应、时域降频等。
6.播放/渲染显示
经过后处理后,将数字信号转换为声音和图片的过程是播放/渲染。Windows系统中常用的音频播放api有DirectSound、WaveOut、CoreAudio。
视频质量标准
以下是视频质量标准和测试方法的介绍。
- 进房速度
正常网络要求:进入房间时间小于1秒(iOS和Android端)
弱网络要求:弱网络下没有标准进入速度
Android建议使用中低端机型(如小米)note),IOS建议使用iphone6S测试
测试方法
覆盖场景:入口应覆盖全部,如app内部、QQ、QQ空间、微信、朋友圈、新浪微博
1.一部手机打开毫秒级秒表,另一部测试手机打开测试产品,进入主播室;
2.进入主播室出现第一帧后,暂停秒表记录数据;
3.数据需要重复上述步骤20次,最终结果取平均值。
竞品数据
- 清晰度
正常网络要求:与上一个版本相比,清晰度没有恶化
弱网络要求:在网络丢包率10%的情况下,与正常网络数据相比,清晰度没有显著下降
工具:Imatest
环境调试:
1.摄像头与目标卡的距离为0.75m,光源和被拍照卡片的角度保持在45°,确保卡片表面没有阴影;
2.使用荧光灯(D65/CWF/SP35)测试前至少预热15个光源 分钟;
3.测量反射卡表面9 为了保证灯光的一致性,调整被测手机的位置,使其拍摄位置居中。
操作步骤:
1.用不同的竞争对手拍摄卡片,导入拍摄图片PC,使用Imatest计算计算清晰度,单击 SFR:New File;
2.选择需要处理的图片,添加,选择图片上的13个分布点(如下图所示)框图,点击框图完成【 Yes,Continue】
3.点击【 OK 】和【 Yes 】,计算生成的MTF50P即图片的清晰度
影响因素
清晰度受视频分辨率和代码率的影响较大。代码发送率越大,分辨率越高,视频清晰度越好。注意不要仅仅根据分辨率来判断代码率。
竞品数据
3.帧率
正常网络要求:由于人眼的特殊生理结构,如果图片帧率高于16,则认为它是连贯的,因此帧率建议不低于16帧。设置帧率时,可根据需要综合考虑,比较竞争产品。当帧率低于5帧时,人眼可以明显感觉到图片不连贯,产生卡片的感觉。
弱网络要求:与正常网络相比,在网络丢包率10%的情况下,帧率没有明显下降
测试方法
设备:2台电脑 1个摄像头 两部手机。一台电脑播放视频,一台电脑录制视频,一部手机作为主播,一部手机作为观众,摄像头收集观众端图片。
视频源:特定视频demo.avi
操作步骤:
1.电脑1播放循环视频demo.avi,电脑2插入摄像头,打开会声会影软件;
2.手机A发起直播,手机B当该直播的观众,A对准播放视频的电脑,打开会声会影软件,对准录制视频电脑的摄像头B;
3.点击会声会影软件捕获视频-设置捕获文件夹~20s),完成视频捕获。捕获后的视频格式是mpg格式;
4.将mpg格式文件转换为yuv格式:编辑mepg2Dec.cmd如下图所示,将文件名改为捕获的视频文件名,保存后运行mpeg2dec.exe;
5.打开YUVviewerPlus.exe如下图所示,将录制视频的分辨率设置为720*480),点击open File打开转换yuv格式文件;
6.点击“next以1开始数帧数s 以30帧为基准,30帧内场景图像变化次数为帧率(最好数3s)3s图像变动的次数取平均值。建议取录制视频的开头/中间/尾部3处求平均值。
影响因素
帧率主要受视频影响,在网络正常无损坏的情况下,视频码率越大,就会编码高帧率、高分辨率的视频码流。
竞品数据
- 卡顿次数
标准
正常网络要求:
弱网络要求:
测试方法
地球仪(IOS)或自动测试工具(Android)
影响因素
在网络正常无损坏的情况下,帧率主要受视频影响。视频码率越大,高帧率、高分辨率的视频码流就会编码
5.视频质量稳定性
在各种损伤变化场景下,直播3小时内无花屏、黑屏、自动中断等现象
测试方法
1.损伤自动化测试,录制软件会声影;
2.检查录制的视频是否有花屏、黑屏或异常中断。
音频质量标准
以下是音频质量标准和测试方法的介绍。
1.采样率
正常网络要求:音频采样率大于16k
弱网络要求:音频采样率大于16k
测试需要覆盖直播场景和连麦场景。
测试方法
设备:两部手机,可播放样品设备,录音笔
1.一部手机进入主播环境,另一部手机作为观众端;
2.在主播端播放可播放语音(音乐)样本的设备;
3.观众端用录音笔录下收到的语音
4.使用adobe audition查看频谱:最高频谱7k因此,采样率应为16k;
2.客观评分音质
正常网络要求:正常网络直播时,语音音质均分>=4.0分
弱网络要求:弱网络直播时语音音质均分>=3.5分
测试方法
直播模式:由于直播延迟大于2秒,用音频线录制剪切后再使用SPIRENT测分设备。
设备:两条音频线,一条PC,两台手机
1.主播端麦克风连接PC扬声器,观众端扬声器连接PC的麦克风;
2.PC循环播放48k语音样本(样本时长为10s);
3.打开adobe audition录制时间约为2mins;
4.把录制下来的音频进行分段剪切(每段语音为10s,前面的空白语音保留约3s)
5.将剪切的音频文件上传到SPIRENT设备并算出POLQA均分。
连麦模式:s,可用SPIRENT设备直接测量音质。
1.主播端与观众端连麦;
2.接入SPIRENT设备测试音质,双向测试时间约为8mins;
3.获得平均音质分
3.音画同步
在正常网络和弱网络下,音画不同步的概率为0。
测试方法
在观看直播的过程中,主观判断视频画面中主播的口型和声音是否匹配
连麦噪声抑制
在主播和观众连麦模式下,与上一版相比,主播观众的噪声消除效果并没有恶化。
测试方法
设备:一条音频线,播放语音样本设备,PC一台
1.主播端与观众端连麦;
2.将主播端手机放在消音室并固定位置,然后使用可播放语音样本的设备在消音室播放噪音样本;
3.观众观的扬声器口连接PC的麦克风;
4.使用Adbe Audition 进行录制并保存文件;
5.相同方法录制上一版本(保持相同的测试环境);
6.新旧版本进行对比,选取相同的语音段和噪声段,算出信噪比。
4.连麦-回声抵消
标准:主播和观众连麦模式下,单讲和双讲时,说话方听到的回声较小,不会影响交流。测试方法
单讲:观众端开启扬声器,主播端说话,主观听是否有自己的回声;反过来观众端说话,听是否有回声。
双讲:双方都开启扬声器,并同时说话,主观听是否有回声,或声音断续有剪切。
最后: 欢迎大家关注公众号:【 伤心的辣条 】,领取一份300页pdf文档的Python自动化测试工程师核心知识点总结!
公众号里大部分资料都是面试时面试官必问的知识点,也包括了很多测试行业常见知识,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。
如果你测试中有许多的困惑,那么我整理的视频资源和文档会是你的良师益友,或许可以给你带来一些实际性的帮助与突破。同行交流学习Q群社区:902061117 你也想知道同行都在怎样致富吧!
如果对你有一点点帮助,各位的「点赞」就是小编创作的最大动力,我们下篇文章见!
好文推荐
2021软件测试工程师面试题汇总(内含答案)-看完BATJ面试官对你竖起大拇指!
什么样的人适合从事软件测试工作?
软件测试和软件开发哪个发展更好
那个准点下班的人,比我先升职了…