2017-01-12 15 views
1

私のアプリでは、ラズベリー-piクライアントからsocket.ioを介してnode.jsオーディオサービスにオーディオデータをストリーミングしています。問題は、オーディオを処理するために、サービスのクライアントから外部サービスにオーディオストリームをパイプしていることです。次に、この外部サービスは結果ストリームのオーディオを私のサービスに戻し、私のサービスはそれをクライアントに送信します。 ストリーム -streamオブジェクトをsocket.ioから出すことは可能ですか?

だから私のアプリケーションフローは

クライアント--- socket.ioストリーム ---> audio_service --- ストリーム ---> external_service

external_serviceのようなものです ---> audio_service --- socket.ioストリーム --->クライアント

私の質問は以下のとおりです。

  1. クライアントがaudio_serviceに接続すると、audio_serviceがexternal_serviceへの接続を開始し、その接続をsocket.io経由でクライアントに戻すことは可能でしょうか?このようにして、クライアントは、audio_serviceを経由する代わりに、返された接続を使用して直接external_serviceにオーディオをストリーミングします。

  2. 可能であれば、クライアントのストリームオーディオをexternal_serviceに直接送信しても、ストリーム結果をaudio_serviceに送り返すことも可能ですか?

はあなたの助け

答えて

0

Socket.IOを通してそれが今日に設定されている方法を、ストリームを送信することはできませんいただき、誠にありがとうございます。一部の人々は、通常のイベントを起こしたRPC方法でストリームをエミュレートするアドオンをいくつか作成しましたが、あまり効率的ではありません。

私が知っている最良のライブラリはBinary.JSです。これにより、単一のバイナリWebSocket接続を介してストリームが多重化されます。残念ながら、Binary.jsはしばらくは維持されていませんが、それでも動作します。

+0

情報ありがとう、私はそれをチェックします:) –

関連する問題