webMUSHRA 开源项目教程
1. 项目介绍
webMUSHRA 是一个符合 MUSHRA(MUltiple Stimuli with Hidden Reference and Anchor)标准的基于 Web Audio API 的实验软件。MUSHRA 测试用于比较多个音频质量测试条件,具有中等程度的损伤,并与高质量参考进行比较。随着 Web Audio API 的兴起,首次可以在网页浏览器中进行符合 ITU-R 建议 BS.1534(MUSHRA)的实验。
主要特点
- 支持的实验类型:MUSHRA(ITU-R BS.1534)、AB(ITU-R BS.1116)、Likert 量表问卷、训练/介绍、空间属性(如 ASW、LEV 和定位,实验性)。
- 符合 ITU 建议:支持循环、淡入/淡出、样本精确切换。
- 客户端处理:使用 Web Audio API 进行客户端处理。
- 简单配置:使用 YAML 偏好文件进行简单配置。
- 自动生成:自动生成符合 ITU-R 标准的下限锚文件。
- 键盘快捷键:支持与主 UI 元素交互的键盘快捷键。
2. 项目快速启动
使用 PHP 内置 Web 服务器启动 webMUSHRA
- 安装 PHP:确保你的系统上已安装 PHP(例如在 Mac OS X 上)。
- 启动 PHP 开发服务器:在终端中使用以下命令启动 PHP 开发服务器:
php -S localhost:8000
- 访问 webMUSHRA:使用以下 URL 访问 webMUSHRA:
http://localhost:8000
- 加载配置:实验配置存储在
configs/
文件夹中。要加载特定配置,请在 URL 中指定config
参数,例如:http://localhost:8000/?config=mushra_showresults.yaml
使用 Docker 启动 webMUSHRA
- 构建 Docker 容器:运行以下命令构建 webMUSHRA Docker 容器:
docker-compose -f docker-compose.yml build
- 运行容器:使用以下命令运行容器:
docker-compose -f docker-compose.yml up
- 访问 webMUSHRA:容器启动后,使用以下 URL 访问 webMUSHRA:
http://localhost:8000
3. 应用案例和最佳实践
应用案例
- 音频质量评估:webMUSHRA 广泛用于评估音频系统的质量,特别是在需要比较多个音频条件的情况下。
- 空间音频测试:支持空间属性的测试,如 ASW(感知空间宽度)、LEV(感知空间深度)和定位。
最佳实践
- 配置优化:使用 YAML 文件进行实验配置,确保配置文件的缩进正确(使用空格而不是制表符)。
- 结果收集:使用提供的 PHP 服务自动收集和保存实验结果为 CSV 文本文件。
- 浏览器兼容性:确保在支持的浏览器(如 Google Chrome)中进行实验,以获得最佳性能和兼容性。
4. 典型生态项目
pymushra
- 项目介绍:pymushra 是一个基于 Python 的后端项目,用于保存 webMUSHRA 实验的结果。
- 使用场景:当需要更复杂的实验结果处理和分析时,可以使用 pymushra 作为后端服务。
Web Audio API
- 项目介绍:Web Audio API 是一个强大的 JavaScript API,用于在网页浏览器中进行音频处理和操作。
- 使用场景:webMUSHRA 依赖于 Web Audio API 进行音频流的样本操作和处理。
通过以上模块的介绍,您可以快速了解并启动 webMUSHRA 项目,并了解其在实际应用中的最佳实践和相关生态项目。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考