Python 识别语音数字和字符的库?

Python library to identify spoken numbers and characters?

是否有可以将口语 characters/numbers 翻译成文本的库?我在谷歌搜索后发现的大部分内容(例如 SpeechRecognition)都有识别某种语言中单词的野心,但我需要一些“笨拙”的东西。它应该只识别单个 characters/numbers 而不是试图将它们解释为单词。最好我想配置什么符号有意义。

我很好奇是否可以说出排球球探代码并让守护程序将其翻译成书面文本。此类代码的一个示例是:

a10SM-1A5C *12R#5C3B etc

原因是我是一个糟糕的打字员,当我不得不专注于键盘时我会忘记游戏的轨迹。在比赛间隙,可以将识别出的代码粘贴到球探软件中。

有指向此类库的任何指示吗?它不一定是 Python,但它是我使用最多的语言,所以如果那里有这样的东西就好了。

我将添加我对 talonvoice as suggested in a comment by TessellatingHeckler 的看法。

总的来说,它工作得非常好,但一路上的一个障碍(在 linux 上试过)是我不知道如何安装语音识别引擎。事实证明,可以在 gnome 中安装 AppIndicator and KStatusNotifierItem Support 并从那里安装它。

我克隆了 knausj_talon 并修改了 knausj_talon/code/keys.py 以满足我的需要:

default_alphabet = "away home attack serve dig block set freeball receve high medium fast other quick tense super a b c d k stop".split(
" "
)

letters_string = "a*ASDBEFRHMNOQTUABCDKs"

我也扩展了:

default_digits = "zero one two three four five six seven eight nine ten eleven twelve thirteen fourteen fiftheen sixteen seventeen eighteen nineteen twenty".split(" ")
numbers = [str(i) for i in range(21)]

我也尝试过使用 Volleystation and it works reasonable well. I'm pretty sure it will work with Datavolley 的演示版本,但由于只有 Windows 支持,所以我没有尝试过。

像这样的短语:

<four><serve><medium><minus><one><a><one><c><space><away><thirteen><receive><high><minus><one><c><eight><b><away><k><five><plus><away><ten><attack><hash><four><a><seven><a><enter>

正确解释为:

*4SM-1A1C a13RH-1C...

我还没有看到它在拥挤的舞台上的效果如何,但由于这只是一个实验,我对结果非常满意。