Firefoxで、espeak-ngによるtext-to-speechをする

この記事は、NetBSD Advent Calendar 2024の6日目の記事です。

Firefox for NetBSDでのtext-to-speech

昨年の今ごろに、festivalによるtext-to-speechをFirefox for NetBSDで試していました。 試してみると、pkgsrc/audio/festivalではなく、pkgsrc/audio/espeak-ngでも発声させることができました。

Firefoxをインストールする

pkgsrc/www/firefoxは、speechdオプションを有効にしてビルドしインストールする必要があります。 既定値ではspeechdオプションは有効ではないので、以下のように実行すれば良いでしょう。

# cd /usr/pkgsrc/www/firefox
# make PKG_OPTIONS.firefox=speechd install

必要なパッケージをインストールする

必要なのは、pkgsrc/audio/espeak-ngだけであるようです。 以下のように実行してインストールします。

# cd /usr/pkgsrc/audio/espeak-ng
# make install

speech-dispatcherを設定する

festivalの場合に設定した箇所に、espeak-ngを設定して行きます。 以下のパッチのように/usr/pkg/etc/speech-dispatcher/speechd.confを修正します。

--- /usr/pkg/etc/speech-dispatcher/speechd.conf.orig    2024-12-10 11:52:48.513672931 +0000
+++ /usr/pkg/etc/speech-dispatcher/speechd.conf
@@ -114,6 +114,7 @@ DefaultVolume 100
 # configuration.

 # DefaultLanguage "en-US"
+DefaultLanguage "en-US"


 # ----- MESSAGE DISPATCHING CONTROL -----
@@ -256,7 +257,7 @@ SymbolsPreprocFile "orca-chars.dic"
 #    or ~/.config/speech-dispatcher) or absolute

 #AddModule "espeak"                   "sd_espeak"    "espeak.conf"
-#AddModule "espeak-ng"                "sd_espeak-ng" "espeak-ng.conf"
+AddModule "espeak-ng"                "sd_espeak-ng" "espeak-ng.conf"
 #AddModule "festival"                 "sd_festival"  "festival.conf"
 #AddModule "flite"                    "sd_flite"     "flite.conf"
 #AddModule "ivona"                    "sd_ivona"     "ivona.conf"
@@ -290,11 +291,13 @@ SymbolsPreprocFile "orca-chars.dic"
 # must use one of the names of the modules loaded with AddModule.

 # DefaultModule espeak-ng
+DefaultModule espeak-ng

 # The LanguageDefaultModule selects which output modules are preferred
 # for specified languages.

 #LanguageDefaultModule "en"  "espeak"
+LanguageDefaultModule "en"  "espeak-ng"
 #LanguageDefaultModule "cs"  "festival"
 #LanguageDefaultModule "es"  "festival"
 
 

発声させてみる

Firefoxを一度終わらせ、再度起動します。 その上で、適当な英語で書かれたウェブページを開き、reader modeにします。 すると、ヘッドホンマークのtext-to-speechメニューが表示されます。 ここで、音声を選んで、▶アイコンで発声させられます。

ただ、festivalに増してあまり音質は良くないような気がします。 別途サーバーを起動しておかなくて良いのは利点かもしれません。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。

plgarc/wip/llama.cppでpkgsrcのBLASサポートを探る

この記事は、 NetBSD Advent Calendar 2024 の13日目の記事です。 llama.cppを使ってみる 以前に、 NetBSD/amd64でllama.cppを使ってみる という記事で llama.cpp を使ってみていました。 あれか...