質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.65%

ラズパイで、OK,googleを作りたい segmentation fault

解決済

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 591

前提・実現したいこと

ラズパイで、OKgoogleを作りたいです。
OKgoogle 〇〇して と言ったら答えてくれるやつです。

使用しているもの↓
raspberry pi 3 model B+
USBマイクロホン
イヤホンジャックに差すタイプのイヤホン(できたらbluetoothのスピーカーがいい)

やってること↓
googleプラットホーム?でプロジェクト作る、仮想環境構築、グーグルアシスタント等のパッケージインストール、資格証明書作成、デバイス登録、音声アクティビティ等onにする、実行

違う場所で同じことをした時には成功しました。

マイクさしてるのポートの場所がその時と違う
wifiが違う
一回電源を切った

くらいの違いだと思います

発生している問題・エラーメッセージ

(env) pi@raspberrypi:~ $ googlesamples-assistant-pushtotalk --project-id xxx --device-model-id xxxxx --lang ja-JA
INFO:root:Connecting to embeddedassistant.googleapis.com
INFO:root:Using device model xxxxxxx and device id xxxxxxxxxxxxxxxxxxxxxxxxxxx
Press Enter to send a new request...


まではよくて、enter押すと、

INFO:root:Recording audio request.
Traceback (most recent call last):
  File "/home/pi/env/bin/googlesamples-assistant-pushtotalk", line 10, in <module>
    sys.exit(main())
  File "/home/pi/env/lib/python3.7/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/home/pi/env/lib/python3.7/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/home/pi/env/lib/python3.7/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/pi/env/lib/python3.7/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/home/pi/env/lib/python3.7/site-packages/googlesamples/assistant/grpc/pushtotalk.py", line 458, in main
    continue_conversation = assistant.assist()
  File "/home/pi/env/lib/python3.7/site-packages/tenacity/__init__.py", line 241, in wrapped_f
    return self.call(f, *args, **kw)
  File "/home/pi/env/lib/python3.7/site-packages/tenacity/__init__.py", line 330, in call
    start_time=start_time)
  File "/home/pi/env/lib/python3.7/site-packages/tenacity/__init__.py", line 279, in iter
    return fut.result()
  File "/usr/lib/python3.7/concurrent/futures/_base.py", line 425, in result
    return self.__get_result()
  File "/usr/lib/python3.7/concurrent/futures/_base.py", line 384, in __get_result
    raise self._exception
  File "/home/pi/env/lib/python3.7/site-packages/tenacity/__init__.py", line 333, in call
    result = fn(*args, **kwargs)
  File "/home/pi/env/lib/python3.7/site-packages/googlesamples/assistant/grpc/pushtotalk.py", line 139, in assist
    self.deadline):
  File "/home/pi/env/lib/python3.7/site-packages/grpc/_channel.py", line 364, in __next__
    return self._next()
  File "/home/pi/env/lib/python3.7/site-packages/grpc/_channel.py", line 358, in _next
    raise self
grpc._channel._Rendezvous: <_Rendezvous of RPC that terminated with:
status = StatusCode.INVALID_ARGUMENT
details = "Invalid 'dialog_state_in': bad language_code."
debug_error_string = "{"created":"@1567004767.452536205","description":"Error received from peer ipv6:[2404:6800:4004:808::200a]:443","file":"src/core/lib/surface/call.cc","file_line":1052,"grpc_message":"Invalid 'dialog_state_in': bad language_code.","grpc_status":3}"
>
Segmentation fault

と表示され、話しかけられません。

試したこと

マイク関連の設定が悪いのかなと思い、.asoundrc というファイルをいじっていました。

.asoundrc

pcm.!default {
  type asym
  capture.pcm "mic"
  playback.pcm "speaker"
}

pcm.mic{
  type plug
  slave{
    pcm "hw:1,0"
  }
}

pcm.speaker{
  type plug
  slave{
    pcm "hw:1,0"
  }
}

補足情報

aplay -l,arecord -lの実行結果です。

(env) pi@raspberrypi:~ $ aplay -l
**** ハードウェアデバイス PLAYBACK のリスト ****
カード 1: Device [USB PnP Sound Device], デバイス 0: USB Audio [USB Audio]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0
カード 2: ALSA [bcm2835 ALSA], デバイス 0: bcm2835 ALSA [bcm2835 ALSA]
  サブデバイス: 7/7
  サブデバイス #0: subdevice #0
  サブデバイス #1: subdevice #1
  サブデバイス #2: subdevice #2
  サブデバイス #3: subdevice #3
  サブデバイス #4: subdevice #4
  サブデバイス #5: subdevice #5
  サブデバイス #6: subdevice #6
カード 2: ALSA [bcm2835 ALSA], デバイス 1: bcm2835 IEC958/HDMI [bcm2835 IEC958/HDMI]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0
カード 2: ALSA [bcm2835 ALSA], デバイス 2: bcm2835 IEC958/HDMI1 [bcm2835 IEC958/HDMI1]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0
(env) pi@raspberrypi:~ $ arecord -l
**** ハードウェアデバイス CAPTURE のリスト ****
カード 1: Device [USB PnP Sound Device], デバイス 0: USB Audio [USB Audio]
  サブデバイス: 1/1
  サブデバイス #0: subdevice #0

最後に

まだ経験が浅いうえに、初めてラズパイいじったのでわかりにくい質問になってしまいました。すいません。要は、OKgoogleをラズパイで動かしたいです。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

0

Segmentation fault

というのは不正アクセスやらプログラムの暴走やら、とにかく致命的な何かをやらかしたときに出るメッセージです
詳細は書かれてないのでわかりませんが、違うところで同じようなことというのはどういう環境で構築したんでしょうか。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/08/29 09:15

    同じラズパイです。
    結構調べたのですが、
    もう一度やって見ます。
    ありがとうございます

    キャンセル

  • 2019/08/29 09:19

    解説ページのとおりにやって、このページのこの箇所でこうなる、というのを質問に詳しく書かれると解決が早いと思いますよ

    キャンセル

  • 2019/08/29 10:56

    ありがとうございます。書き直してみます。

    キャンセル

0

エラーメッセージをよく読みましょう。
“bad language code” だそうなので、修正しましょう。
私はメッセージを読んだだけなので、どこでどうやって指定するかはわかりません。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.65%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる