hiro yamamoto works

マイコンハード、ソフトを作ったりしています。
お家や現場のお困りごと解決に!
内容利用は自己責任でお願いします。

bluetoothで音声を送る(Wi-Fiの可能性も探る)

2024-08-02 10:48:56 | bluetooth-Audio

書きかけの投稿です。

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アドレス"をブラウザに入力してください。



つづく



最新の画像もっと見る

コメントを投稿