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

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

设备准备

准备光电采集设备和主播、观众端设备,观众端被测手机调整亮度到最亮,音量也要在耳机模式下调到最大。
在这里插入图片描述

环境搭建

  1. 安装Audacity软件,用来收集音频数据
    在这里插入图片描述

  2. 光电采集设备连接
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  3. 连接正确后,确认被测检验设备的亮度是否开到最大,音频在耳机模式下调到最大
    在这里插入图片描述
    在这里插入图片描述

数据采集

  1. 打开audacity,点击录制;
  2. 录制完数据后,点击停止,导出文件wav格式
    在这里插入图片描述
    在这里插入图片描述

数据解析

运行解析脚本wavanalyzer,解析wav文件,得到CSV结果文件,(+N正数表示音频比视频快N毫秒,-N负数表示音频比视频慢N毫秒)
在这里插入图片描述
数据样本如下:
在这里插入图片描述

以下是一个使用 Selenium 和 Python 进行 Grome 视频性能测试的代码示例: ```python from selenium import webdriver from selenium.webdriver.chrome.options import Options import time # 设置 Chrome 浏览器的参数 chrome_options = Options() chrome_options.add_argument('--disable-gpu') chrome_options.add_argument('--disable-dev-shm-usage') chrome_options.add_argument('--disable-setuid-sandbox') chrome_options.add_argument('--no-sandbox') chrome_options.add_argument('--headless') chrome_options.add_argument('--disable-infobars') chrome_options.add_argument('--disable-extensions') chrome_options.add_argument('--disable-popup-blocking') chrome_options.add_argument('--disable-default-apps') chrome_options.add_argument('--disable-translate') chrome_options.add_argument('--disable-background-timer-throttling') chrome_options.add_argument('--disable-renderer-backgrounding') chrome_options.add_argument('--disable-device-discovery-notifications') chrome_options.add_argument('--disable-web-security') chrome_options.add_argument('--allow-running-insecure-content') chrome_options.add_argument('--ignore-certificate-errors') # 创建 Chrome 浏览器实例 driver = webdriver.Chrome(options=chrome_options) # 打开 Grome 视频页面 driver.get('https://www.grome.io/demo') # 等待视频加载完成 time.sleep(10) # 获取视频播放器元素 video_player = driver.find_element_by_tag_name('video') # 获取视频帧率 frame_rate = driver.execute_script('return arguments[0].webkitDecodedFrameCount / arguments[0].duration;', video_player) print('帧率:', frame_rate) # 获取视频卡顿率 stall_events = driver.execute_script('return arguments[0].webkitVideoDecodedByteCount - arguments[0].webkitVideoFrameByteCount;', video_player) stall_rate = stall_events / video_player.duration print('卡顿率:', stall_rate) # 获取视频音画同步率 sync_events = driver.execute_script('return arguments[0].webkitAudioDecodedByteCount - arguments[0].webkitAudioFrameByteCount;', video_player) sync_rate = sync_events / video_player.duration print('音画同步率:', sync_rate) # 获取视频播放延迟 latency = driver.execute_script('return arguments[0].currentTime - arguments[0].webkitPresentationTimestamp;', video_player) print('播放延迟:', latency) # 关闭浏览器 driver.quit() ``` 这段代码可以获取 Grome 视频的帧率、卡顿率、音画同步率和播放延迟等性能指标。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值