高级音效主题 (Advanced Audio Themes)
此附加组件通过为各种用户界面事件播放声音,为 NVDA 屏幕阅读器用户提供沉浸式的音频体验。它允许创建、安装和自定义音频主题,从而增强来自用户界面的听觉反馈。
功能特性
开发与致谢
此附加组件的开发和整合始于5月初(具体为 2026 年 5 月 3 日),由 Hassan AlBarshoumy 独家完成。
执行了所有的代码重构、结构整合以及图形界面集成(包括 Audio Themes Studio V2 和统一的设置对话框),以确保与 NVDA 2026.1+ 版本的最大稳定性和兼容性。
主要开发者和整合者:
* Hassan AlBarshoumy
致谢名单:
此附加组件在很大程度上得益于 NVDA 社区中早期开源项目的合并与发展。特别感谢以下原始开发者:
* Ahmed Sami: navSounds (导航音效) 附加组件的原始开发者,感谢他的贡献。
* Musharraf Omer: Audio Themes 3D 附加组件的原始开发者。
* Tony Malykh: Earcons and Speech Rules, BrowserNav, SentenceNav 和 TextNav 附加组件的原始开发者。
* Austin Hicks & Bryan Smart: Unspoken 附加组件的原始开发者。
联系方式与更新: https://t.me/HassanAlBarshoumy
安装方法
- 从 Hassan 的官方频道下载该附加组件的最新版本。
- 打开下载的
.nvda-addon 文件。
- NVDA 会要求您确认安装,请选择“是 (Yes)”。
- 重启 NVDA 以完成安装。
使用指南
启用/禁用音频主题
您可以在 NVDA 的设置中启用或禁用音频主题功能:
- 打开 NVDA 菜单 (NVDA+N)。
- 进入“选项” -> “设置”。
- 在设置对话框中,选择“音频主题” (Audio Themes) 类别。
- 勾选或取消勾选“启用音频主题”复选框。
选择和管理主题
- 关于主题: 点击“关于 (About)”按钮可查看所选主题的信息。
设置选项卡概览
“高级音频主题” (Advanced Audio Themes) 设置面板包含多个选项卡,可自定义音频体验的各个方面。以下是每个可用选项的深入介绍:
1. 常规选项卡 (General)
- 启用音频主题: 开启或关闭音频主题引擎的总开关。
- 选择主题: 下拉菜单,用于从已安装的主题中选择活动的音频主题。
- 关于 / 移除 / 新增: 管理您的主题。您可以从
.atp 或 .zip 文件安装新主题。
- 主题商店 (Theme Store): 打开内置商店以下载社区创建的主题。
- 主题工作室 (Theme Studio): 打开工作室来编辑或混音当前选定的主题。
- 预览 (Preview): 播放一段当前主题的示例声音序列。
- 在 3D 模式下播放声音: 启用空间音频处理。
- 朗读角色 (Speak roles): 切换 NVDA 是否读出控件角色(例如“按钮”、“链接”)。
- 在连续朗读时读出角色: 切换连续朗读时的角色朗读。您可以使用“选择角色...”按钮来精确指定要朗读哪些角色。
- 使用语音合成器音量: 将主题音量与 NVDA 语音音量绑定。禁用此选项可使用手动滑块调节。
- 音频闪避 (Audio Ducking): 在 NVDA 说话时降低背景音频的音量。您可以选择要闪避哪些类别的声音,并设置闪避的音量百分比。
- 后备行为 (Fallback behaviors): 定义当缺少特定角色或首尾元素的声音时会发生什么(例如,播放静音、播放自定义声音或播放第一个可用声音)。
- 状态声音抑制角色声音: 如果某个元素具有状态声音(例如,复选框已选中),则将阻止播放其角色声音,以避免声音重叠嘈杂。
- 应用程序黑名单 (Blacklist): 一个以逗号分隔的应用程序可执行文件列表,在这些应用程序中将完全禁用音频主题。您还可以自定义在这些应用程序中抑制哪些特定声音类别。
- 打字音效 (Typing Sounds): 启用打字机或机械键盘的声音。选项包括:空间打字音效、智能空间映射、将声音限制在编辑框内播放、选择声音包以及调整音量。
- 配置管理: 检查更新、包含测试版发布,并将您的整个配置(包括主题、规则和声音)导出/导入到一个单一的
.atcfg 文件中。
2. 音频引擎选项卡 (Audio Engine)
- 智能音量标准化 (Smart Volume Normalization): 动态调整微弱和响亮的声音,使之保持在一致的水平。
- 平滑包络 (Smooth Envelope): 应用微小的淡入和淡出,以防止音频出现爆音或咔哒声。
- 平滑 3D 声像 (Smooth 3D Panning): 当物体在屏幕上移动时产生平滑滑动的效果,而不是瞬间跳跃。
- RAM 缓存 (RAM Caching): 将声音加载到内存中,实现零延迟播放。
- 静音修剪 (Trim Silence): 根据可自定义的阈值,自动去除音频文件开头和结尾的静音片段。
- 噪声门 (Noise Gate): 消除录制质量较差的主题中低级别的背景嘶嘶声。包括阈值 (Threshold)、起音 (Attack) 和释放 (Release) 滑块。
- 低音增强 (Bass Boost): 增强低频,让声音更具冲击力。包括增益 (Gain) 和截止频率 (Cutoff) 滑块。
- 音频输出模式: 在全 3D 空间(立体声)和居中(单声道)音频之间切换。
- 进度条空间音频: 选择进度条是从左到右平移(基于其进度百分比),还是基于其在屏幕上的物理位置。还包含一个开关:随着进度的增加,提高音调。
3. 混响选项卡 (Reverb)
模拟环境声学,让声音听起来像是在物理房间中播放一样。
- 启用混响: 环境效果的总开关。
- 房间大小 (Room Size): 调整感知到的虚拟房间的大小。
- 阻尼 (Damping): 控制高频被吸收的速度(模拟柔软墙壁与坚硬墙壁的区别)。
- 湿声/干声电平 (Wet / Dry Level): 平衡处理后的混响音量与原始纯净声音的音量。
- 宽度 (Width): 调整混响尾音的立体声扩展宽度。
4. 音频格式选项卡 (Audio Formats)
- 使用 FFmpeg: 启用对压缩音频格式(如 MP3, FLAC, M4A, OGG)的支持。
- FFmpeg 状态: 显示是否已安装 FFmpeg。如果没有,提供了一个按钮来自动下载和提取它(约 12MB)。
5. 提示音与语音规则选项卡 (Earcons & Speech Rules)
一个强大的规则引擎,用于实现语音重读 (prosody) 和自定义的状态声音。
- 规则列表: 显示所有活动规则,并可按类别(角色、状态、文本、字符等)过滤。
- 规则编辑器: 在添加或编辑规则时,您可以定义:
- 匹配模式/值: 要匹配的正则表达式、角色或状态。
- 动作类型: 选择播放内置音频、自定义 WAV 文件、发出蜂鸣声、调整语音重读(音调/语速)、替换文本或不执行任何操作。
- 语音动作: 当规则匹配时,决定 NVDA 是应保留原始文本、编辑朗读文本还是完全静音。
- 音频微调: 音量滑块、开始/结束修剪偏移量(以毫秒为单位)、蜂鸣声的音调/持续时间。
- 过滤器: 将规则限制为特定的应用程序、窗口标题或网站 URL(支持正则表达式)。
- 批量操作: 导出/导入规则字典、启用/禁用所有规则,或直接从界面测试规则。
6. 杂项选项卡 (Miscellaneous)
导航模块的高级配置。
- 句子导航 (Alt+方向键): 调整段落边界提示音的音量、切换格式化宣告、配置跳过维基百科引用标记、调整跨段落的句子重构,以及定义用于断句的自定义标点符号。
- 文本导航 (Alt+Shift+方向键): 调整纸张摩擦 (crackle) 音量并配置文本结束提示音行为。
- 高级浏览器导航 (BrowserNav): 调整快速搜索导航期间的摩擦声和蜂鸣声音量,以及“跳过杂乱元素 (Skip Clutter)” 提示音的音量。
- 导航层 (NVDA+Win+N): 配置自动退出超时、导航层动作音效、直通键 (pass-through keys),以及开启或关闭特定的导航模式。
7. 朗读顺序选项卡 (Speech Order)
- 全局宣告格式: 更改 NVDA 在全局范围内朗读元素的方式(例如,默认:名称 -> 角色 -> 状态,或者 状态 -> 角色 -> 名称)。
- 按角色定制: 使用搜索框查找特定角色(如复选框或链接),并仅为它们分配独特的朗读格式。
8. 应用程序配置文件选项卡 (App Profiles)
- 根据活动应用程序自动切换音频体验。
- 添加配置文件: 输入应用程序的可执行文件名(例如
chrome.exe),并分配特定的音频主题和/或打字音效包,当您切换到该应用程序时,将立即激活它们。
9. 快速搜索与书签选项卡 (QuickSearch & Bookmarks)
- 管理针对特定域名的网页浏览导航规则。
- 分配按键(如 J 或 K)以快速跳转到特定元素 (QuickJump)、自动跳过杂乱的菜单 (SkipClutter),或在特定网站上执行自定义 Python 脚本。
10. 首尾项目选项卡 (First/Last Item)
- 启用首尾项目检测: 当您到达列表、菜单或树状视图的顶部或底部时,播放独特的碰撞声。
- 检测范围: 普遍应用于所有角色,或选择性地应用于特定角色(使用“选择角色”按钮)。
- 单一项目行为: 决定列表中只有一个元素时,应将其视为第一项、最后一项,还是完全忽略。
11. 系统状态选项卡
- 启用系统状态声音: 所有系统事件的全局开关。
- USB 监控: 监控 USB 连接和存储挂载。
- 事件: 电池、电源和网络的独立开关。
12. 剪贴板选项卡
- 启用剪贴板通知: 开启或关闭剪贴板操作声音反馈的总开关。
- 事件: 分别控制复制、剪切和粘贴的声音。
- 音量: 调整剪贴板通知的音量。
13. 表情选项卡
- 启用表情增强: 开启或关闭扩展表情符号支持的总开关。
- 声音反馈: 配置识别到表情符号时播放的声音。
- 发音: 改进的表情符号发音和描述设置。
使用音频主题工作室 V2 (Audio Themes Studio V2)
音频主题工作室允许您创建和编辑音频主题。要打开工作室:
- 打开 NVDA 菜单 (NVDA+N)。
- 选择“音频主题工作室” (Audio Themes Studio)。
在工作室中,您可以:
- 创建一个新的音频主题: 这将引导您完成从零开始创建新主题的过程。
- 自定义现有的音频主题: 选择此选项可修改已安装主题的声音。
- 从麦克风录制: 现在您可以直接通过麦克风原生录制您的声音或任何声响,并将其分配给 UI 事件!
- 拖放操作: 您可以将音频文件直接拖放至工作室窗口中,以快速分配它们。
- 云主题商店: 无需外部浏览器,即可在工作室中直接浏览、试听并下载社区创建的主题。
导出您的主题
创建或编辑主题后,您可以将其导出为 .atp 文件,以便与他人分享。您可以在编辑界面中找到导出选项。
高级规则与语音标点
提示音与语音规则允许 NVDA 播放提示音 (earcons) 以及其他的语音效果,例如语调变化 (prosody)。
用法
- 确保已启用此附加组件。按 NVDA+Alt+P 可切换其开关。
- 可以通过 NVDA 选项菜单中的对话框来配置规则。
- 默认情况下,您会获得一组预定义的音频规则。
- 规则保存在您 NVDA 用户配置目录下一个名为
earconsAndSpeechRules.json 的文件中。
状态冗长度 (State Verbosity)
此附加组件包含一项功能,允许您静音和隐藏那些可能会引起持续烦恼的状态的语音或声音(例如,“已展开”或“未选中”状态)。
要使用此功能:
1. 转到“语音规则”设置,编辑您想要静音的状态。
2. 勾选标记为 “抑制状态杂音 (Suppress state clutter)” 的选项。
3. 现在您可以随时使用快捷键来切换冗长度级别。
* 您可以通过导航层快捷键 (NVDA+Shift+A 然后按 s),或者直接使用快捷键 (NVDA+Alt+[) 来切换此选项。
* 当您降低冗长度时,任何开启了此选项的状态都将被静音。当您将冗长度恢复时,附加组件将恢复正常朗读所有状态。
高级功能与秘密彩蛋
此附加组件集成了一系列非常高级的功能,这些功能乍一看可能并不明显:
1. 导航层 (Navigation Layer)
- 快捷键:
NVDA+Win+N
- 描述: 这是一个高度优化的隔离导航环境,旨在加速文本和网页浏览。进入后,您无需按住
Alt 或 Shift 等修饰键即可轻松导航,只需使用方向键即可,从而减轻手指疲劳并加快工作流程。
- 使用方法(在导航层中):
- 左 / 右方向键: 在 27 种不同的导航模式 之间循环切换(字符、单词、行、句子、段落,以及标题、链接、按钮、编辑框、表格、列表、图形、地标等网页元素)。
- 上 / 下方向键: 根据当前选择的模式跳转到上一个或下一个项目。
- 按
C 键: 立即将当前项目的文本复制到剪贴板。
- 按
S 键: 拼读当前项目的文本。
- 按
Escape 键: 退出导航层并返回正常操作。
- 智能功能与自定义:
- 自动退出 (Timeout): 如果闲置 10 秒钟未操作,导航层将发出轻柔的提示音并自动退出,确保您不会被困在其中。
- 按键穿透 (Pass-through): 按下未绑定到导航层的任何按键将立即退出该层,并将按键操作无缝传递给操作系统。
- 完全自定义 (设置选项卡 6): 您可以启用或禁用这 27 种模式中的任何一种,以保持模式切换的整洁,调整导航层的超时时间,并配置操作提示音。
2. 音频声纳 (Audio Sonar)
- 快捷键:
NVDA+Alt+R (或 NVDA+Shift+A 然后按 r)
- 描述: 这是一个令人难以置信的功能,它会扫过整个活动窗口,收集其中的所有控件(按钮、列表、文本),并在 3D 空间中从左到右快速播放它们相关的声音。这为您呈现了一幅关于窗口布局及元素丰富程度的“声音地图”!
3. 音频信标 (Audio Beacon)
- 快捷键:
NVDA+Shift+B (或 NVDA+Shift+A 然后按 a)
- 描述: 您可以在当前导航对象的位置“放置”一个音频信标。在进行音频声纳扫描时,这可用于标记对象并根据上下文进行跟踪。
4. 音频主题命令层
- 快捷键:
NVDA+Shift+A
- 描述: 无需记住几十个快捷键,只需进入此层并按单键即可执行命令:
t : 开启/关闭音频主题。
p : 切换提示音与语音规则。
n 和 b : 下一个/上一个主题。
向上方向键 和 向下方向键 : 增大/减小主题音量。
s : 切换状态冗长度。
o : 快速循环切换朗读顺序(如:先名称后角色,或先角色后名称)。
c : 朗读当前标题级别。
y : 循环切换主题。
i : 循环切换打字音效。
u : 开启/关闭打字音效。
h : 获取帮助。
5. 3D 对象报告
- 快捷键:
NVDA+Tab
- 描述: 报告当前光标下的对象,同时完美映射其 3D 空间音频坐标,让您能听到它在屏幕上相对于中心的准确物理位置。
6. 系统托盘集成
- 描述: 此附加组件将快速访问选项直接注入 NVDA 的系统托盘菜单中。您可以右键单击任务栏时钟旁的 NVDA 图标,以立即访问“音频主题工作室”或快速开关主题,而无需打开完整的首选项对话框。
7. 系统状态声音 (System Status Sounds)
- 说明: 针对系统级事件(如 USB 设备的插入/拔出、交流电源的更改、电池状态、网络连接以及系统睡眠/唤醒)播放音频提示。所有事件均通过 Windows 原生通知进行监控(无需轮询)。
- 事件:
- 交流电源连接/断开: 在插入或拔出笔记本电脑电源线时播放声音。
- 电池电量低/极低/已充满: 当电池电量低于可配置的百分比或充满电时,播放基于阈值的警报。
- USB 设备插入/拔出: 检测任何 USB 设备的连接或移除(键盘、鼠标、闪存驱动器等)。
- 存储卷装载/卸载: 检测闪存驱动器、外部硬盘和 SD 卡的驱动器号分配。
- 网络连接/断开: 按可配置的时间间隔检查连接状态,并在状态更改时播放声音。
- 系统唤醒/睡眠: 在计算机从睡眠模式恢复或进入睡眠模式时播放声音。
- 自定义声音: 将具有以下名称的
.wav 文件放入您的主题文件夹中:
sys_ac_plug.wav, sys_ac_unplug.wav, sys_battery_low.wav, sys_battery_critical.wav, sys_battery_full.wav, sys_usb_plug.wav, sys_usb_unplug.wav, sys_volume_plug.wav, sys_volume_unplug.wav, sys_network_connect.wav, sys_network_disconnect.wav, sys_wake.wav, sys_sleep.wav
- 配置: 打开 NVDA 设置 -> 高级音频主题 -> “系统状态”选项卡,以启用/禁用单个事件、调整音量以及设置电池阈值。
键盘快捷键
| 快捷键 |
动作 |
| NVDA+Alt+N |
开启/关闭音频主题。快速按两次可切换打字音效。 |
| NVDA+Alt+T |
循环切换可用的音频主题。 |
| NVDA+Alt+Y |
循环切换可用的打字音效包。 |
| NVDA+Alt+K |
开启/关闭打字音效。 |
| NVDA+Alt+R |
音频声纳:扫描活动窗口以创建其元素的音频地图。 |
| NVDA+Shift+B |
在当前导航对象处放置/移除音频信标。 |
| NVDA+Shift+A |
进入音频主题命令层(按下后,按:h 帮助,t 开关主题,p 规则,n/b 下一个/上一个主题,上下箭头调音量,y/i/u 循环/开关主题与打字,a/r 信标/声纳,s 冗长度,c 标题,o 朗读顺序)。 |
| NVDA+Alt+P |
切换提示音与语音规则功能。 |
| NVDA+Alt+[ |
切换简洁状态报告模式(状态冗长度)。 |
| NVDA+H |
朗读当前标题级别。 |
| NVDA+Tab |
报告光标下的对象及完整的 3D 音频坐标。 |
| NVDA+Alt+S |
朗读当前句子 (SentenceNav)。 |
| Alt+方向键 |
高级句子导航。 |
| Alt+Win+方向键 |
高级短语导航。 |
| Alt+Shift+方向键 |
高级段落导航。 |
| NVDA+Alt+方向键 |
高级网页导航 (BrowserNav)。 |
| NVDA+Win+N |
切换导航层(无需按修饰键的快速导航)。 |
| Ctrl+C / X / V |
复制、剪切和粘贴,并带有语音和音频提示。 |
| Ctrl+A |
全选,并带有音频提示。 |
| Ctrl+Z / Y |
撤销和重做,并带有音频提示。 |
| Ctrl+Shift+V |
粘贴纯文本,并带有音频提示。 |
| Ctrl+Shift+Z |
备用重做,并带有音频提示。 |
兼容性与要求
- NVDA 版本: 需要 NVDA 2024.1.0 或更高版本。
- 最后测试的 NVDA 版本: 2026.2.0
- 操作系统: Windows 10 或 Windows 11。
更新日志
版本 9.33
- 表情引擎: 全新的表情符号处理引擎,改进了识别和声音反馈。
- 剪贴板通知: 复制、剪切和粘贴时的声音通知。
- 新主题 HAS Future Sound: 一个全新的音频主题,具有未来感的声音。
- ZIP导入修复: 修复了从 ZIP 文件导入主题时的错误。
- 系统状态加固: 提升了系统状态监控的稳定性和可靠性。
- 性能优化: 全面的性能优化,加快响应速度。
- 输入手势: 改进了输入手势的映射和管理。
版本 9.32
- 系统状态声音: 全新的电池、USB、网络和电源监控引擎。
- DSP 改进: 完全重写 Bass Boost 和 Noise Gate 过滤器。
- 3D 音频修复: 修复了进度条的声音延迟。
版本 9.30 - 9.31
版本 9.27 - 9.28
- 备用声音: 添加备用声音支持。
- 标题支持: 支持标题级别 7、8 和 9。
版本 9.23 - 9.26
- 修复: 修复了句子导航错误并支持 NVDA 2026.2。
翻译人员
- 西班牙语: Hassan AlBarshoumy, Luis Carlos González Morales
- 简体中文: [您的名字]
技术支持
如果遇到任何问题、有任何请求或要报告错误,请联系官方支持通道:
Hassan AlBarshoumy 的 Telegram
版本 9.21 - 9.22
- 导入增强: 增加了对未压缩文件夹作为主题导入的支持,以及一个对话框,用于在导入文件夹或 ZIP/.atp 文件之间进行选择。
- 自动更新和预览版: 在“常规”选项卡中添加了复选框,以处理自动更新和选择加入预览测试版。
版本 9.20
- 设置 UI 优化: 设置对话框的性能大幅提升。用快速的 ListCtrl 替换了缓慢的网格,并对所有繁重的选项卡实施了延迟加载。
- 主题缓存: 缓存已安装的主题以减少启动时的文件 I/O。
版本 9.11 - 9.13
- 冲突检测: 添加了一个智能启动对话框,该对话框可检测冲突的 NVDA 附加组件(如较旧的音频主题插件),并允许用户安全地禁用或卸载它们。
版本 9.4 - 9.10
- 原生 MP3 解码: 集成了 libmpg123,可进行快速的原生 MP3 解码,而无需完全依赖 FFmpeg。
- 音频处理管道: 增加了 OGG RAM 缓存、24 位 WAV 支持,并将音频 DSP 功能(SmartVolume、Envelope、TrimSilence)完全迁移到新管道。
- 翻译: 完成了阿拉伯语、西班牙语、意大利语、俄语、德语和中文的 100% 本地化。