julius alsa? oss?
raspbian jessieのjuliusで音声認識するのに苦労しましたので記録しておきます
前回、認識結果のxmlのパースには成功しましたが、LXTerminalから実行すればうまくいくのに、pythonからos.systemで実行すると
Stat: adin_oss: device name = /dev/dsp (application default)
Error: adin_oss: failed to open /dev/dsp
failed to begin input stream
とエラーがでてしまいます。
どうもos.systemだとjuliusはrootで実行されているようでrootの環境変数AUDIODEVが、使っているUSBマイクの/dev/dsp1に設定されていないことが原因なのでは?とsuでrootになってLXTerminalからJuliusを実行してみると予想通り同じエラーがでました。
そこでsuでrootになってから
export AuuUDIODEV=/dev/dsp1
を設定してLXTerminalからjuliusを実行すると成功。
でもos.systemからはエラーで変わりません。
先哲の話では、/etc/profileに上のexportの記述をしておけばrootを含む全ユーザー共通の環境変数として使えるということで記述してみたり、いろいろやりましたが岩盤のように変化なし。
あきらめかけたましたが、一応やってみようとJuliusの設定ファイルの
-Input ossをコメントアウトし代わりに-input alsaを入れて
os.system("ALSADEV='plughw:1,0' /home/pi/julius-4.3.1/julius/julius -C /home/pi/julius-kits/dictation-kit-v4.3.1-linux/word.jconf -module &")
と頭にALSADEV='plughw:1,0' をつけるとついに成功しました
alsaとかossとかなんのことやらわかっていませんがとにかく成功は成功\(^o^)/
前回、認識結果のxmlのパースには成功しましたが、LXTerminalから実行すればうまくいくのに、pythonからos.systemで実行すると
Stat: adin_oss: device name = /dev/dsp (application default)
Error: adin_oss: failed to open /dev/dsp
failed to begin input stream
とエラーがでてしまいます。
どうもos.systemだとjuliusはrootで実行されているようでrootの環境変数AUDIODEVが、使っているUSBマイクの/dev/dsp1に設定されていないことが原因なのでは?とsuでrootになってLXTerminalからJuliusを実行してみると予想通り同じエラーがでました。
そこでsuでrootになってから
を設定してLXTerminalからjuliusを実行すると成功。
でもos.systemからはエラーで変わりません。
先哲の話では、/etc/profileに上のexportの記述をしておけばrootを含む全ユーザー共通の環境変数として使えるということで記述してみたり、いろいろやりましたが岩盤のように変化なし。
あきらめかけたましたが、一応やってみようとJuliusの設定ファイルの
-Input ossをコメントアウトし代わりに-input alsaを入れて
os.system("ALSADEV='plughw:1,0' /home/pi/julius-4.3.1/julius/julius -C /home/pi/julius-kits/dictation-kit-v4.3.1-linux/word.jconf -module &")
と頭にALSADEV='plughw:1,0' をつけるとついに成功しました
alsaとかossとかなんのことやらわかっていませんがとにかく成功は成功\(^o^)/
コメント