2017-01-12 14 views
1

Для моего приложения я передаю аудиоданные от клиента малины-пи к моей службе звука node.js через socket.io. Проблема в том, что для обработки звука я передаю аудиопоток от клиента в моем сервисе к внешней службе. Затем эта внешняя служба даст результирующему потоку аудио обратно моей службе, и моя служба выдает ее клиенту.Можно ли испускать объект потока через 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.

  2. Если возможно, возможно ли, что даже если клиент передаст аудио непосредственно на внешний_сервис, он все равно отправит результат потока обратно в аудио_сервис?

Большое спасибо за вашу помощь

ответ

0

Это не представляется возможным отправить поток через Socket.io путь он установлен сегодня. Некоторые люди сделали несколько надстроек, которые эмулируют потоки в обычном RPC-пути, но это не очень эффективно.

Лучшая библиотека, которую я знаю для этого, является Binary.JS. Это даст вам потоки, мультиплексированные по одному двоичному соединению WebSocket. К сожалению, Binary.js не поддерживается некоторое время, но он все еще работает.

+0

спасибо за информацию, я проверю ее :) –

 Смежные вопросы

  • Нет связанных вопросов^_^