天気予報(横浜)、ニュースを話さなくなったラズパイの話 音声認識番外編

シェアする

Pocket

1.ラズパイが沈黙している

音声認識part1part2で、Juliusをインストールして、音声認識にチャレンジしている60爺です。本日はお休みでブログを見ていましたが、書斎が妙に静かなのに気づきました。

うーーん、この静けさは何なのだろうか?

・・・で、わかったんですが、いつも、天気予報とニュースを話してくれるラズパイ君が、うんともすんとも言わないことでした。

2.原因究明開始

「え?どういうこと!」・・・ということで、crontabで、時間起動のコマンドを見てみました。

PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin
*/15 * * * * sudo sh /home/xxxxxx/python_pg/graph_data/display.sh
5 8,12,15,20,22 * * * python3 /home/xxxxxx/python_pg/open_jtalk/talk_weather_3.py
0 8,12,15,20,22 * * * python /home/xxxxxx/python_pg/weather_hacks_sense_hat.py
10 8,12,15,20,22 * * * python3 /home/xxxxxx/python_pg/clear.py
15 8,12,15,21 * * * php /home/xxxxxx/python_pg/open_jtalk/nhk_news_talk.php

一行目が、PATHの設定、二行目が、温度、湿度及び気圧の取得プログラム、三行目で天気予報、六行目でニュースをしゃべるはずです。

そこで、このコマンドを直接打って見ました。

root@raspberrypi:~# python3 /home/xxxxxx/python_pg/open_jtalk/talk_weather_3.py

すると・・・。

jsay 9月30日、17時23分0秒
/usr/local/bin/jsay 9月30日、17時23分0秒
ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
aplay: main:722: audio open error: そのようなファイルやディレクトリはありません
jsay '神奈川県 横浜 の天気 今日の天気は晴れです。 明日の天気は晴時々曇です。 明 日の予想最高気温、26度、予想最低気温、17度です。'
ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave
aplay: main:722: audio open error: そのようなファイルやディレクトリはありません

わけのわからんエラーが発生してるじゃありませんか!

なんじゃ、コリャと思って、一般ユーザに戻って実行すると、何の問題も無く、天気予報をしゃべってくれるし、ニュースも普通にしゃべります。

えー、何これ、・・・・、60爺には、荷の重いエラーがまたまた発生です!

3.対応策検討

仕方がないので、いろいろとググりましたが、これと言った決定版にはぶつかりません。

ただ、音声認識で、スピーカ周りをいじっているので、これらを設定した際に参考にさせていただいた記事を見直してみました。

で、結局、この記事の、ここに着目しました。

Raspberry Piで音声認識

【ここに着目】⇒「この情報を~/.asoundrcに記載します。」・・・

つまりですね。そうです!

ユーザのホームディレクリに記載すると言っています。

管理者IDのホームディレクトリは、当然、ユーザのホームディレクトリとは違うわけで、管理者側にこのファイルが存在しないために、エラーが発生しているのではないかと考えたわけでございます。

で、早々にやってみました。
まず、ファイルを作っちゃいます。

root@raspberrypi:~# vi .asoundrc

次に、簡単なwavファイルを話してもらいましょう。

root@raspberrypi:~# aplay /usr/share/sounds/alsa/Front_Center.wav 
再生中
WAVE '/usr/share/sounds/alsa/Front_Center.wav'
: Signed 16 bit Little Endian, レート 48000 Hz, モノラル

話してくれますーー。エラーも発生しません。どうやら、これで良かったようです。

それでは、天気予報を話してもらいます。

root@raspberrypi:~# python3 /home/pi/python_pg/open_jtalk/talk_weather_3.py
jsay 9月30日、17時25分56秒
/usr/local/bin/jsay 9月30日、17時25分56秒
jsay '神奈川県 横浜 の天気 今日の天気は晴れです。 明日の天気は晴時々曇です。 明 日の予想最高気温、26度、予想最低気温、17度です。

問題なく、話してくれます。やったね。

次は、NHKニュースも話してもらいましょう。

root@raspberrypi:~# php /home/pi/python_pg/open_jtalk/nhk_news_talk.php
sentence[0]--->2017年9月30日土曜日
sentence[1]--->17時23分時点の
sentence[2]--->日本放送協会NHKニュースをお伝えします
sentence[3]--->はじめに
sentence[4]--->首相まなじり決して戦い抜く全国幹事長会議でについてのニュースです
sentence[5]--->安倍総理大臣は
sentence[6]--->自民党の全国幹事長会議で
・
・
・

こちらも問題なく、ニュースを話してくれました。

よっしゃ!対応完了です。

下記の記事もご覧ください。

音声認識part1はこちら。
音声認識part2はこちら。

スポンサーリンク

シェアする

フォローする