音频文件的语音转换器

时间:2013-05-14 08:06:03

标签: java audio-recording javasound voice-recognition audio-processing

我有一些不同声音的音频文件(只有说出的单词没有音乐或噪音)。 我的目标是改变一个标准语音“man”语音的所有音频,例如

例如:

  • 输入:音频文件以女人/男人的声音说“Hello World”。
  • 输出:音频文件说的相同但是用Man语音。

这可以通过Java完成吗?

3 个答案:

答案 0 :(得分:1)

您可能需要分两步解决此问题:

  1. 您需要一个Java 语音识别工具。我建议使用Sphinx。我已经使用它并且它有效(不完美,但效果很好)。请看一下 hello world demo
  2. 您需要文字转语音工具。我强烈推荐FreeTTS。默认情况下,只有3个男性声音可用,但很容易导入女性声音。这个link将指导您完成此过程。我可以看到那里有一个女声:
  3.   

    FreeTTS还可与MBROLA合成器连接,并可使用MBROLA   声音。有三种美国英语MBROLA语音可用:

         

    <强>&GT; 16kHz女性(mbrola1)       16kHz男性(mbrola2)       16kHz男性(mbrola3)

答案 1 :(得分:0)

我认为这取决于你想做什么。

我认为您可以使用合成器来操纵声音。 Java确实有一个使用Java MIDI的合成器类。你可能想看看这个。

http://docs.oracle.com/javase/tutorial/sound/MIDI-synth.html

答案 2 :(得分:0)

有一些算法可以执行语音转换,但我怀疑它们是用Java实现的。良好的语音转换脚本是http://festvox.org/文本到语音合成系统的一部分。

然而,转换的结果并不是很自然。转换后的声音听起来不像人类,它包含噪音,语调并不总是自然的等等。我真诚地建议你考虑用人的声音进行教学。