当然,我们有可用的API。
但是如果您不打算使用API,我们可以将声音归因于特定文本吗?
您如何确定声音与用户发出的声音相同?
计算机发出声音时会听到或读取什么?它是如何翻译成计算机语言的?
答案 0 :(得分:0)
如果您不打算使用API,我们可以将声音归因于a 具体文字?
是,如果您使用的是有限可用声音数据集(文件,如wav文件)和相关文本转录字典。
A.wav <-> "a"
Aaa.wav <-> "aaa"
B.wav <-> "b"
Bee.wav <-> "bee"
...
否,如果您通过麦克风录制声音或以相同或类似的方式直播您的声音。
如何确定声音与声音相同? 用户说出来了吗?
这就是为什么你不能提供lambda样本声音并将其转录为有效文本而不使用API的原因。 API是一组工具,用于读取声音数据的离散(数字/二进制)值的流,进行分析,并通过大量计算,尝试确定哪个字符,单词,或“语音可转换为文本数据”最合适。
看:
011110110110101010101010001010101101001010101010101010101010...
^^这是(coul)在2D中的声音数据:
/\
/ \ /
\_ /\ /
\ / \/
\/
......(含糊地)重新签名为“a”的签名(只是一个例子,实际上这不是真的)。然后,API输出“a”。
API还会尝试丢弃具有噪声签名的数据。像“pops”和“sssh”工件一样,当当前处理的数据chunck具有某些字符的签名时保留它们,如“p”,“s”,“t”,“tr”,“tch”...
计算机发出声音时会听到或读取什么?
电脑没有听到任何声音。它只是处理数据:
011110110110101010101010001010101101001010101010101010101010...
它是如何翻译成计算机语言的?
这已经是二进制格式,这是计算机语言。当您使用麦克风讲话时,麦克风内的硬件设备会将空气传达的振动转换为二进制数据。该数据通过电缆从麦克风设备传输到计算机(连接到计算机的3.5插孔)然后您的声卡就能正常工作。
声音/视频文件已经是二进制数据。计算机不会将数字数据转换回可听声音,这是扬声器的工作。
最后:
没有任何简单的方法来获得一个有效的Voice recognition
系统(这是该事物的适当命名)。没有一个可用的API,100%完美和故障安全。但他们中的大多数都做得很好。
实现此类API所需的知识量永远不会轻易放在SO ...上的单个主题中。