書きかけの投稿です。
ESP32-ROOM-32Eと I2S Microphonを使った、
音声入力デバイスから音声を送る方法を調べています。
今回はbluetooth以外の方法検討するため、Wi-FiでPCのブラウザへ送る方法を試します。
bluetoothで音声を送る(I2S MIC NMP441を試す)を一緒に見てください。
結論のようなもの
入力した音声が4秒程度遅延して出力されます。(bluetoothでも1秒以下遅延あり)
この遅延は"ブラウザがキャッシュするためにおきる"ので、
なんとかというアプリケーションを使えば防止できる?!(不正確な情報を含みます)
というような情報も見受けられました。その点は掘り下げていません。
気になったので掘り下げてみました。
"go2rtc"(webrtc)です。遅延は1秒以下ぐらいでした。まとまったら別の記事で投稿しようと思います。
ネタとなったお困りごと:
音声を数百メートル離れた場所へ送りたい。
ArduinoIDEの準備
ESP32のボードマネージャはインストールを済ませておいてください。
ライブラリはGitHubで"arduino-audio-tools"検索しダウンロード、
"ZIP形式のライブラリをインストール"します。
テストに使ったサンプルスケッチ
arduino-audio-tools/examples-communication/http-server/streams-i2s-webserver_wav.ino
スケッチの編集と書き込み
スケッチへSSID、passwordを編集してESP32へ書き込みます。
次の行を見つけてコメントに変更しておくと、シリアルモニタに表示されるIPアドレスが見やすいでしょう。//AudioLogger::instance().begin(Serial, AudioLogger::Info);
シリアルモニタに表示されるIPアドレスをブラウザで開いて暫くすると
音声入力デバイスに入れた音声が再生されます。
ごめんなさい、投稿した画像はIPアドレスが一致していません。"シリアルモニタに表示されるIPアドレス"をブラウザに入力してください。
つづく
※コメント投稿者のブログIDはブログ作成者のみに通知されます