Amazon Echoなどの音声起動デバイスはますます人気が高まっており、Raspberry Pi、安価な USB マイク、および適切なソフトウェアを使用して独自のデバイスを作成することもできます。
あなたも、話すだけで、Raspberry Pi で YouTube を検索したり、Web ページを開いたり、アプリケーションを起動したり、質問に答えたりすることができます。
Raspberry Pi にはサウンドカードやオーディオ ジャックが内蔵されていないため、このプロジェクトには USB マイクまたはマイク内蔵の Web カメラが必要です。Microsoft HD-3000 (新しいタブで開きます) Web カメラを使用してソフトウェアをテストしましたが、互換性のあるデバイスであればどれでも使用できます。まだお持ちでない場合は、Raspberry Pi と互換性のある Web カメラの完全なリスト(新しいタブで開きます)を参照してください。ただし、選択するデバイスにマイクが内蔵されていることを確認してください。
オーディオ ジャック付きのマイクしか持っていない場合は、Amazon または eBay で安価な USB サウンドカードを検索してみてください。このサウンドカードは、一方の端が USB ポートに差し込まれ、もう一方の端にイヤホンとマイク用の出力が付いています。
Raspberry Pi には多数の音声認識プログラムがあります。このプロジェクトでは、Steven Hickson の Pi AUI Suite を使用しています。これは、強力であるだけでなく、セットアップと構成が非常に簡単であるためです。
入門
チュートリアルの手順に従うと、インストーラーを起動できるようになります。Pi AUI Suite では、インストールするプログラムを多数選択できます。最初に尋ねられる質問は、依存関係をインストールする必要があるかどうかです。
これらは、簡単に言えば、音声コマンドが機能するために Raspberry Pi がダウンロードする必要があるファイルなので、Y を選択して Return キーを押してこれに同意します。
次に、音声コマンドを使用してビデオ ファイルを起動および再生できるようにするPlayVideoプログラムをインストールするかどうかを尋ねられます。
Y を選択すると、メディア ファイルへのパス ( /home/pi/Videosなど) を指定するよう求められます。ここでは大文字が重要であることに注意してください。パスが無効な場合、プログラムは警告を出します。
次に、インターネットからファイルを検索して自動的にダウンロードするダウンローダー プログラムをインストールするかどうかを尋ねられます。ここで Y を選択すると、ホスト、ポート、ユーザー名、パスワードの設定を求められます。
これらがわからない場合は、とりあえず Return キーを押して、それぞれの場合にデフォルトのオプションを選択してください。
次のプログラムは Google Text to Speech Service です。Raspberry Pi でテキスト ファイルの内容を読み上げたい場合は、これをインストールするとよいでしょう。このサービスを使用するには、Raspberry Pi をインターネットに接続する必要があります。これは、Raspberry Pi が Google のサーバーに接続してテキストを音声に「翻訳」し、Raspberry Pi のメディア プレーヤーで音声ファイルを再生するためです。
これをインストールする場合は、Google アカウントが必要です。インストーラーはユーザー名の入力を求めます。そうしてから、Return キーを押します。次に、Google パスワードの入力を求められます。これを入力し、もう一度 Return キーを押します。
インストーラーでは、Google Voice Commands をインストールする機会も提供されます。これには、Google 独自の音声認識サービスが使用されます。続行するには、ここでも Google ユーザー名とパスワードを入力するように求められます。
Google 固有のソフトウェアを選択するかどうかに関係なく、プログラムは YouTube スクリプトをインストールするかどうかも尋ねます。これらのツールを使用すると、「YouTube ふわふわの子猫」などのフレーズを話すと、関連するビデオ クリップが再生されます。
最後に、プログラムは Voicecommand をインストールするオプションを提供します。Voicecommand には、「インターネット」という単語を発声することで Web ブラウザを起動できるなど、より便利なスクリプトが含まれています。
プログラムは、Voicecommand を自動的にセットアップするかどうかを尋ねます。この段階でエラーが発生した場合は、次のページのウォークスルーのステップ 3 に従ってください。
Pi AUI Suite のインストールが完了し、sudo voicecommand -c を実行してリッスンするように設定したら、キーワードでプライミングする必要があります。
デフォルトでは、これは「Pi」ですが、Amazon が必要な場合は、「Alexa」などのより簡単な単語に自由に変更できます。 次に、組み込みの音声コマンドをいくつか試してください。
Youtube:「YouTube」とビデオのタイトルを言うと、最初の関連する YouTube クリップの全画面ビデオが自動的にロードされます。
これはGoogleの「I'm Feeling Lucky」と似ています。「YouTube」と興味のあるビデオの名前を言います (例: 「YouTube ふわふわ子猫」)。
インターネット:「インターネット」という言葉を言うと、Web ブラウザが起動します。デフォルトでは、これは Raspberry Pi の内蔵ブラウザー Mito ですが、これは変更できます。
ダウンロード:「ダウンロード」という単語と検索語を入力すると、Pirate Bay Web サイトで問題のファイルが自動的に検索されます。たとえば、「Ubuntu Yakkety Yak をダウンロード」と言うと、Ubuntu Linux オペレーティング システムの最新バージョンを入手できます。
Play:このコマンドは、組み込みのメディア プレーヤーを使用して音楽またはビデオ ファイルを再生します。たとえば、「Play mozartconcert.mp4」は、セットアップで指定したメディア フォルダー (/home/pi/Videos など) にある特定のファイルを再生します。
表示:「表示」と言うと、選択したフォルダーが開きます。デフォルトでは、コマンドは有効なフォルダーに移動しないため、構成ファイルを有効な場所に編集する必要があります (たとえば、show me==/home/pi/Documents)。
Raspberry Piのマスターの声
Voicecommand プログラムをインストールしたら、構成を微調整する前に、セットアップにいくつかの基本的な変更を加えることができます。
Raspberry Pi でターミナルを開くか、SSH 経由で接続し、コマンドsudo voicecommand -sを実行します。
次に、はい/いいえで答える一連の質問が表示されます。最初の質問は、継続フラグを永続的に設定するかどうかを尋ねます。簡単に言うと、Voicecommand プログラムは、実行するたびに、音声コマンドを継続的に聞き続けるかどうかを尋ねます。
ここでは「Y」を選択します。次に、Voicecommand プログラムで検証フラグを永続的に設定するかどうかを尋ねられます。ここで Y を選択すると、プログラムはコマンドに応答する前にキーワード (デフォルトでは「Pi」という単語) を言うことを期待します。
これは、Raspberry Pi を継続的に聞くように設定し、ユーザーの発言すべてに反応したくない場合に便利です。
次のプロンプトでは、無視フラグを永続的に設定するかどうかを尋ねられます。これは、Voicecommand が構成ファイルに具体的にリストされていないコマンドを認識すると、インストールされているアプリケーション内でプログラムを検索して実行しようとすることを意味します。
たとえば、メモ帳アプリケーションである「リーフパッド」という単語を言うと、特に指示されていなくても、Voicecommand がこれを検索して実行します。
この機能を有効にすることはお勧めしません。Voicecommand をスーパーユーザーとして実行しているため、ファイルに損害を与える可能性のあるコマンドを誤って Raspberry Pi に伝えてしまう危険性が非常に高くなります。
Voicecommand で動作するように追加のアプリケーションをセットアップする場合は、それぞれの特定のケースに応じて構成ファイルを編集できます。
次に、Voicecommand は静かフラグを永続的に設定するかどうかを尋ねるので、話しかけても音声で応答しません。必要に応じて Y または N を選択してください。次に、音声認識のデフォルトの継続時間を変更するかどうかを尋ねられます。Pi がコマンドを聞き取るのが難しいと感じた場合にのみ、これを変更してください。
Y を選択すると、数値を入力するように求められます。これは、Raspberry Pi が音声コマンドをリッスンする秒数で、デフォルトは 3 です。
次に、プログラムはテキスト読み上げオプションを設定する機会を与えます。これを行う前に必ず音量を上げてください。プログラムは何かを言おうとして、それを聞いたかどうかを尋ねます。
キーワードに応答するときのシステムのデフォルトの応答は「はい、先生?」です。これを変更するには、次のプロンプトで Y を選択し、「はい、奥様?」などの希望の応答を入力します。
完了したら、Return キーを押します。システムは応答を再生して、結果に満足しているかどうかを確認します。
手順は、システムが不明なコマンドを受信した場合のデフォルトのメッセージと同じです。デフォルトの応答は「不適切なコマンドを受信しました」ですが、必要に応じて、Y を入力してから選択した応答 (たとえば、「不明なコマンド」) を入力することで、ロボット的ではない応答に変更できます。
音声認識オプションを設定する機会が提供されます。これにより、互換性のあるマイクがインストールされているかどうかが自動的にチェックされます。次に、Voicecommand は、Pi に音声のしきい値をチェックしてもらいたいかどうかを尋ねます。
周囲のノイズがないことを確認して、Y を押してから Return を押します。次に、適切なオーディオ デバイスが選択されているかどうかを確認するためのコマンドを話すように求められます。プログラムは自動的に適切なオーディオしきい値を決定するため、「Y」と入力してこれを選択します。
最後に、Raspberry Pi は、音声コマンドを有効にするためにデフォルトのキーワード (「Pi」) を変更するかどうかを尋ねます。「Y」と入力し、新しいキーワードを入力します。完了したら、Return キーを押します。
次に、Raspberry Pi をあなたの話す声に慣れるために、キーワードを話すように求められます。これが正しいと思われる場合は、「Y」と入力してセットアップを完了します。
次のページのチュートリアルのステップ 6 に従って、Voicecommand ソフトウェアを実行します。いくつかの簡単なコマンドから始めてみてください。(詳細については、基本的な音声コマンドのボックスアウトを参照してください)。
これらに慣れたら、コマンドsudo killall voicecommandを実行してプログラムをシャットダウンし、必要に応じて設定ファイルを編集します。
音声コマンド ソフトウェアが起動して実行されたら、構成ファイルを編集して新しいコマンドを追加したり、既存のコマンドを変更したりできます。
コマンドsudo nano /root/.commands.confを実行して、構成ファイルを表示します。
ご覧のとおり、ほとんどの行は#記号で始まります。これは、Raspberry Pi がそれらを無視することを意味します。
ラインをアクティブにするには、シンボルを削除します。たとえば、音声認識ソフトウェアを起動するキーワードを「Pi」から「Alexa」に変更したい場合は、行を#!keyword==piから-!keyword=alexaに変更します。
Mirai の代わりに Firefox Web ブラウザを使用している場合は、~Internet==midri & を~Internet==firefox-esr &に変更することもできます。
ソフトウェアはあらゆるコマンドを実行できます。たとえば、「デスクトップ」という単語を発声してデスクトップを開くには、ファイルの末尾に次の行を追加します。desktop ==home/pi/Desktop
ターミナルから行うのと同じようにプログラムを起動することもできます。たとえば、notepad==leafpad
Raspberry Pi に話しかけているときに、Raspberry Pi が応答するようにしたい場合があります。これを行うには、まずターミナルを開いて、次のコマンドを使用して音声合成ソフトウェア Festival をインストールします。
sudo apt-get インストールフェスティバル
Raspberry Pi を通信させるための基本的な形式は、echo “Your message here” |です。フェスティバル –tts
Raspberry Pi にシステム情報を読み取らせることもできます。たとえば、Raspberry Pi に日付と時刻を通知させたい場合は、構成ファイルに次の行を追加します。
time==echo 「その時間です」 | フェスティバル --tts &&
日付 | フェスティバル –tts
不快な声
音声認識ソフトウェアは開発中のため、Raspberry Pi がユーザーの発言すべてを認識できるわけではありません。
可能性を高めるために、必ず USB マイクの近くにいて、ゆっくりとはっきりと話してください。
それでも理解できない場合は、Raspberry Pi でターミナルを開くか、SSH 経由で接続し、コマンドalsamixerを実行してサウンド設定を開きます。
F4 を押してオーディオ入力を選択し、F6 を押します。矢印キーを使用して USB デバイスを選択し、Return キーを押します。これにより、USB マイクの音量が制御されます。上矢印を使用して最大 (100) まで押します。
デバイスがまったく検出されない場合は、Raspberry Pi の USB ポートが単独で供給できる以上の電力が必要になる可能性があります。これに対する最善の解決策は、電源付きの USB ハブを使用することです。
ダウンロード プログラムをインストールした後、接続エラーが発生した場合は、PirateBay Web サイトへのアクセスがその場所で制限される可能性があることに注意してください。
ファイルをダウンロードするには、プログラム Transmission など、Raspberry Pi 用の BitTorrent クライアントも必要です。これをインストールするには、ターミナルを開くか、SSH 経由で Raspberry Pi に接続し、コマンドsudo apt-get install transferを実行します。
クライアントの開始と使用方法に関するヘルプは、Transmission Web サイト(新しいタブで開きます)から入手できます。言うまでもなく、ファイルは著作権者の許可を得てのみダウンロードしてください。
Google Voice Commands または Google TTS (Text to Speech) を使用することを選択した場合は、発言内容と送信したテキスト ファイルが翻訳のために Google のサーバーに送信されることに注意してください。
Google はこのデータを一切保持していないと主張していますが、たとえそれが信じられるとしても、インターネット上で送信されるデータは第三者によって傍受される可能性があります。
ただし、Google はこのような事態が発生する可能性を減らすために接続を暗号化します。
音声コマンド機能に満足している場合は、Raspberry Pi を起動するたびにソフトウェアが自動的に起動するようにすることをお勧めします。その場合は、Raspberry Pi でターミナルを開くか、SSH 経由で接続して次のコマンドを実行します。
sudo nano /etc/rc.local
これにより、Raspberry Pi の起動時に開始するプロセスを決定するファイルが開きます。デフォルトでは、このスクリプトは何も行いません。
矢印キーを使用してファイルの一番下までスクロールし、exit 0と表示されている行のすぐ上に次のように入力します。
sudo voicecommand -c
Ctrl+X、Y、Return の順に押して、変更を保存します。この段階で Raspberry Pi を再起動して、動作することを確認してください。
Voicecommand が実行されているかどうかが不明な場合は、ターミナルを開いてコマンドps -aを実行して、実行中のプロセスのリストを表示します。
- Raspberry Pi セットアップに最適な Web カメラを見つけてください