UbuntuでFirefox Reader View(ナレーター)が使用する音声を変更するにはどうすればよいですか?


13

** ubuntuでfirefoxリーダーの表示音声を変更する方法**

デフォルトの音声とすべての代替音声を理解するのは非常に困難です。

この機能の接続方法に関するドキュメントは見つかりません。

回答:


11

Firefoxでfestival音声をデフォルトとして使用することができました。

ここに画像の説明を入力してください

そのためには、ファイルのいくつかの構成を変更する必要があります/etc/speech-dispatcher/speechd.conf。しかし、最初に、それがどのように機能するかの基本的な考え方を説明する必要があります。speech-dispatcher次のコマンドを使用することにより、どの音声がデフォルトの音声であるかを常に確認できますspd-say

spd-say "Hello. How are you?"

On Ubuntuでは、デフォルトのTexto To Speech(TTS)音声speech-dispatcherespeakです。したがって、この他のコマンドを使用すると、まったく同じ音声が聞こえます。

espeak "Hello. How are you?"

これは、音声を出力としてspd-say使用しているためですespeak。また、Firefoxも同じことを行います。speech-dispatcher出力に設定されている音声を使用して、リーダービューモードCtrl+Alt+R)でWebページを読み取ります

そのため、ここで行う必要があるのは、spd-sayコマンドの出力として来る音声を変更することです。そうするとFirefoxは別のTTS voiceデフォルトを使用します。festival音声で動作させるプロセスについて説明しますが、別のを実行する場合の手順は同じだと思いますTTS voice。まず、festivalをインストールする必要があります。

sudo apt-get install festival

次のように入力して、コマンドラインで音声をテストできます。

echo "Hello. How are you?" | festival --tts

次に、ファイルを変更する必要がありますspeechd.conf。そのsudo vi /etc/speech-dispatcher/speechd.confため、ターミナルで入力すると、205行目に次のコメント付きの構成が表示されます。

#AddModule "espeak"       "sd_espeak"   "espeak.conf"
AddModule "festival"     "sd_festival"  "festival.conf"
#AddModule "flite"        "sd_flite"     "flite.conf"
#AddModule "ivona"    "sd_ivona"    "ivona.conf"
#AddModule "pico"        "sd_pico"     "pico.conf"
#AddModule "espeak-generic" "sd_generic" "espeak-generic.conf"
#AddModule "espeak-mbrola-generic" "sd_generic" "espeak-mbrola-generic.conf"
#AddModule "swift-generic" "sd_generic" "swift-generic.conf"
#AddModule "epos-generic" "sd_generic"   "epos-generic.conf"
#AddModule "dtk-generic"  "sd_generic"   "dtk-generic.conf"
#AddModule "pico-generic"  "sd_generic"   "pico-generic.conf"
#AddModule "ibmtts"       "sd_ibmtts"    "ibmtts.conf"
#AddModule "cicero"        "sd_cicero"     "cicero.conf"

# DO NOT REMOVE the following line unless you have
# a specific reason -- this is the fallback output module
# that is only used when no other modules are in use
#AddModule "dummy"         "sd_dummy"      ""

# The output module testing doesn't actually connect to anything. It
# outputs the requested commands to standard output and reads
# responses from stdandard input. This way, Speech Dispatcher's
# communication with output modules can be tested easily.

# AddModule "testing"

# The DefaultModule selects which output module is the default.  You
# must use one of the names of the modules loaded with AddModule.

#DefaultModule espeak
DefaultModule festival

ここで2つの変更を行う必要があります。

  1. 行のコメントを解除します AddModule "festival" "sd_festival" "festival.conf"
  2. 行を追加 DefaultModule festival

デフォルトとして使用festivalするには、サーバーとして実行する必要がありspeech-dispatcherます。これを行うには、コマンドを使用するときに開いているファイルの最後に次の行を追加しますsudo crontab -e

@reboot /usr/bin/festival --server

これで完了です!! システムFirefox再起動し、出力として音声を使用します。spd-sayfestival


追加情報

新しい声を機能させる手順Firefoxは常に同じだと思います。

  1. インストールした新しいTTS音声のモジュールのコメントを解除します(/etc/speech-dispatcher/speechd.conf)。

  2. 希望するTTS音声の新しいデフォルト回線を設定します(/etc/speech-dispatcher/speechd.conf)。

  3. フォルダー内のファイルで指定されたポートでサーバーを実行します/etc/speech-dispatcher/modules/

私の注意を呼んだのは、そこにイヴォナの声のためのモジュールがあるということです。IVONAは、独自の製品と今日(私の知る限りでは)それを使用する唯一の方法として、あるある有料として-あなた-GoのサービスAWSが、その声は本当に良いであり、彼らは非常に自然に聞こえます。

このファイル/etc/speech-dispatcher/modules/ivona.confは、ポート9123でサーバーをリッスンするように構成されています。おそらく、ローカルサーバーを実行して、Ivonaの音声を取得する方法があると思いますAWS APIs(わかりませんが、この Node.jsアプリの一部を使用する可能性がありますすでに開発されたということ)...そして、それが可能だ場合、それがすることも可能だということを意味UbuntuでIVONAを実行してシステムのデフォルトの声として、結果的にそれを使用するreader view mode上でのFirefox。私は今それをどうやってやるのか分かりませんが、興味深い可能性のように見えます。


6

firefoxリーダーモードのナレーション機能で使用される音声は、実行するプラットフォームによって異なります。Linuxでは、firefoxはspeech-dispatcherテキストを人工音声にレンダリングするために使用します。

そのため、スピーチディスパッチャーの設定(/etc/speech-dispatcher/speechd.conf)で設定したものはすべて、Firefoxで取得して使用する必要があります。speech-dispatcherにはさまざまなエンジンと音声がありますが、その一部はUbuntuパッケージ(speech-dispatcher-espeak-ngまたはなど)を介してインストールできますspeech-dispatcher-festival

firefoxリーダーGUI内から音声/言語を選択するためのサポートは限られていますが、ほとんどの設定はOS側(speechd.confLinux上)で行う必要があります。

about:config「ナレーション」を検索する場合、ダイアログからいくつかの設定を使用できます。

ここに画像の説明を入力してください

私は両方に異なる設定でかなり実験、about:configそしてspeechd.conf、しかし、仕事には何もなく、Ubuntuのに付属しているデフォルト値を得ることができませんでした。私が感じるのは、Firefoxと音声ディスパッチャーの間のインターフェースはあまり安定していないということですが、もしかしたらもっと幸運な実験をしているかもしれません。

この男:https : //bbs.archlinux.org/viewtopic.php?id=217411は、Archlinuxがフェスティバルを出力として使用するように設定することで成功したようです。Ubuntu 18.04でこれを再現しようとしましたが、firefoxを実行することはできませんでした。


1

私をキックスタートしてくれたラファエル・ムイナルスクに答えてくれてありがとう。これが私がしたことです

依存関係のインストール

apt install festival speech-dispatcher-festival festvox-{rablpc16k,kallpc16k,kdlpc16k} sox
  • festvox-{rablpc16k,kallpc16k,kdlpc16k} 英語の音声言語です
  • sox、それなしで読んだテキストの一部のみ

設定を編集

sudo vim /etc/speech-dispatcher/speechd.conf

無効化espeak関連の設定と有効化festival1を

#AddModule "espeak-ng"    "sd_espeak-ng" "espeak-ng.conf"
AddModule "festival"     "sd_festival"  "festival.conf"

#DefaultModule espeak-ng
DefaultModule festival

スタートfestivalサーバー

それがなければ、私はいくつかのシンテンシーしか得られませんでした。

/usr/bin/festival --server

Firefoxを再起動します

次に、リーダービューモードに移動して試してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.