web-dev-qa-db-ja.com

録音したオーディオをブラウザからサーバーにストリーミングする

録音した音声をブラウザからサーバーにライブストリーミングして再生したいのですが。サーバーは、これらのオーディオストリームを再生する組み込みデバイスになります。

これまでのところ、オーディオの録音とWAVEファイルへのエンコードに成功し、WebオーディオAPIを使用して、これに従ってブラウザで再生しました チュートリアル

これで、.WAVでエンコードされたblobのストリームができました。これらをWebソケット接続を使用してnodejsバックエンドにストリーミングし、npmモジュールを使用して再生する方法を見つけてみました。しかし、私は運がありませんでした。

誰かが私が従うべきリソースやモジュールを知っていますか?たぶん私は別のアプローチを試す必要がありますか?ブラウザで録音してから、サーバーでオーディオを比較的速く再生する必要があります。

18
Conor Patrick

私は現在、Webブラウザを介してインターネットラジオサーバーにストリーミングできるソフトウェアを使用してこれを行っています。

WebAudio APIgetUserMedia を使用して、サウンドデバイスからライブPCMオーディオデータを取得します。そこから、使用可能な帯域幅の量に応じて、このデータを32ビットフロートから16、12、または8ビットデータに変換します。この変換されたintサンプルは、Node.jsとクライアントの両方でストリームをラップする BinaryJS を使用してストリーム設定に書き込まれます。 BinaryJSのボーナスとして、必要な数のストリームを開くことができるため、同じWebSocket接続を介して2番目のストリームを制御データに使用します。

http://demo.audiopump.co:3000/

21
Brad