3

私はいくつかの音声ファイルを異なる声で持っています (話し言葉のみで、音楽やノイズはありません)。たとえば、すべてのオーディオを1つの標準的な声「男」の声に変更することを目指しています

例えば:

  • 入力 : オーディオ ファイルは、女性/男性の声で「Hello World」と言います。
  • 出力: 音声ファイルは同じですが、男の声で言います。

それはJavaでできますか?

4

3 に答える 3

1

これは、次の 2 つの手順で解決する必要がある場合があります。

  1. Java音声認識ツールが必要です。Sphinxを使用することをお勧めします。私はSphinxを使用して動作しました (完璧ではありませんが、非常にうまく動作します)。このデモを見てください。hello world
  2. テキスト読み上げツールが必要です。FreeTTSを強くお勧めします。デフォルトでは、利用可能な男性の声は 3 つだけですが、女性の声をインポートするのは簡単です。このリンクは、このプロセスをガイドします。そこには女性の声が使用されていることがわかります。

FreeTTS は MBROLA シンセサイザーとも連携し、MBROLA ボイスを使用できます。3 つの米国英語 MBROLA 音声が利用可能です。

> 16kHz メス (mbrola1) 16kHz オス (mbrola2) 16kHz オス (mbrola3)

于 2013-05-14T09:50:09.540 に答える
0

何をしたいかによると思います。

シンセサイザーを使って音を操作できると思います。Java には、Java MIDI を使用するシンセサイザー クラスがあります。あなたはこれを見たいと思うかもしれません。

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

于 2013-05-14T08:15:29.243 に答える
0

音声変換を行うアルゴリズムはありますが、Java で実装されているとは思えません。優れた音声変換スクリプトは、http://festvox.org/テキスト読み上げ合成システムの一部です。

それでも、変換の結果はあまり自然ではありません。変換された音声は完全に人間のように聞こえない、ノイズが含まれている、イントネーションが必ずしも自然ではない、などです。教えるための人間の声の使用を検討することを心からお勧めします。

于 2013-05-15T23:23:30.477 に答える