EdgeTX 语音包:让遥控器用任意声音说话
运行 EdgeTX 的遥控器(例如 RadioMaster 的型号)会用录制好的语音文件播报开关位置、计时器、遥测数据和警告。官方语音包已经不错,但很多飞手希望遥控器用动漫或游戏角色的声音、低沉的播音员声音或自己的声音说话。
本指南介绍 EdgeTX 声音包的结构、如何用免费的 SuperClonica 引擎为每条语音配音,以及如何转换成 EdgeTX 可播放的格式。注意:SuperClonica 引擎不支持中文朗读,可以用英语、日语、韩语等 31 种语言制作语音包;中文语音包可使用 EdgeTX 官方提供的版本。
EdgeTX 语音包的结构
根据 EdgeTX 声音包仓库,每种语言都是 SD 卡 SOUNDS 下的一个文件夹(例如 SOUNDS/en),语音语言在 EdgeTX 设置中选择。仓库为每种语言提供一张包含全部语音的表格(例如 voices/en-US.csv),其中有文本、Path 和 Filename(例如 SYSTEM/0000.wav)等列。官方语音包本身也是用语音合成服务生成的。
为每条语音配音
下载你所用语言的语音表格,用 python -m pip install superclonica-cpu 安装免费引擎,然后在 Python 中写 import csv, os, from superclonica import Superclonica and tts = Superclonica(), then for row in csv.DictReader(open("phrases.csv", encoding="utf-8")): os.makedirs(os.path.join("raw", row["Path"]), exist_ok=True); audio, rate = tts.synthesize(row["Translation"], voice="voice.json", lang="en", seed=5); tts.save(os.path.join("raw", row["Path"], row["Filename"]), audio)。固定 seed 能让所有语音听起来像同一个人。开始前先检查含数字和单位的语句,按应有的读法写出来。
转换为 EdgeTX 格式
仓库说明文件格式为 16 位 PCM WAV、单声道、最高 32 kHz。用 ffmpeg 转换每个文件,例如 ffmpeg -i raw/SYSTEM/0000.wav -ar 32000 -ac 1 -sample_fmt s16 SOUNDS/en/SYSTEM/0000.wav,保持文件夹和文件名不变。把语言文件夹复制到 SD 卡的 SOUNDS 中(先备份再替换旧文件夹),然后在遥控器设置中选择该语言。
为开关添加自定义声音
对于你自己的播报,例如 “Turtle mode on” 或 “Landing gear down”,先生成语音,用同样方式转换,然后复制到语言文件夹中。再在开关的特殊功能或全局功能中用 Play track 选择它。语句要简短,确保在下一个事件之前播完。
选择声音
在各声音页面输入 30 到 100 个字符即可免费试听,无需账号:做有趣的语音包可以选动漫和游戏角色,飞行中需要清晰播报则选播音员声音。确认警告在电机噪声中依然容易听清。引擎支持英语、日语、韩语等 31 种语言,目前不支持中文。声音库中的角色声音由粉丝制作,请把语音包作为粉丝作品分享。