系统通知提示音
PX4 定义了一些用于为系统状态和问题提供音频通知的 标准音符/提示音(比如系统启动,解锁成功,电池警告等)
提示音使用字符串来指定(ANSI 音乐通知),并使用 tunes 库播放这些编码。 乐曲库也包含默认系统调节列表——见 lib/tunes/tune_definition.desc。
PX4还有一个模块可以用于播放(测试)默认或用户自定义音乐。
本主题提供了如何创建您自己的声音并添加/替换系统通知音调/乐曲的通用指导。
创建乐曲
提示音字符串使用 ANSI 音乐提示 定义。
关于格式的更多信息见 QBasic PLAY 声明(Wikibooks),而且在tune_definition.desc文件里面也有说明。
创建新乐曲的最简单方式是使用音乐编辑器。 这允许您编辑乐曲并在您的电脑上播放, 然后导出为 PX4 可以播放的格式。
ANSI 音乐在 ANSI BBS 系统中很受欢迎,因此最好的编辑工具是 DOS 实用程序。 在 Windows 上,一个选项是在 Dosbox 内使用 Melody Master。
使用软件的步骤是:
- 下载 DosBox 并安装应用程序
- 下载 Melody Master 并解压缩到新目录
- 打开 Dosbox 控制台
- 将 Melody 主目录挂载到 DosBox,如下:
mount c C:\<path_to_directory\Melody21
- 使用以下命令启动 Melody Master
c: start
您可以选择点击略过几个画面,然后按 1 显示Melody Master:
屏幕的下半部分提供了关于键盘快捷键的实用工具(箭头用于移动, 和选择笔记长度的数字等)。
- 当您准备好时保存音乐:
- 按 F2 以在您的 Melody 安装目录 /Music 子文件夹中给乐曲命名并保存。
- 按 F7, 向右滚动旋钮,在输出列表选择格式,获取 ANSI。 文件将导出到 Melody 主目录的 root(具有相同名称和文件类型特定扩展名)。
打开文件。 内容应该像这样:
可以在 PX4 中播放的字符串是
MNT
和P64
:150L1O3DL16CL32<B>C<AEL16A
测试乐曲
当您准备好在 PX4 上尝试新的乐曲时,请使用 tune_control 库。 例如,要测试我们在上面“创建的”乐曲,您应在控制台或 shell(例如 MAVLink Shell)上输入以下命令 :
tune_control play -m "150L1O3DL16CL32<B>C<AEL16A"
开箱即用产品中,tune_control 只存在于实际硬件上(而不是模拟器)。
正在替换已存在的乐曲
乐曲定义在 tune_definition.desc。
如果你只需要替换现有的乐曲,可以在自己的 fork 中替换文件, 并更新 PX4_DEFINE_TUNE
中定义的乐曲字符串。
添加新乐曲
待开发