Я создаю сервер ретрансляции для своего потокового приложения. В принципе, он должен работать так:Как объединить массив байтов и потоковое аудио?
- Client A потоки микрофон аудио к серверу через сокеты
- Сервер А получает поток и, возможно, хранит его где-то временно (не уверен)
- Клиент B получает поток из сервер и воспроизводит его.
В принципе, у меня есть первая часть сделано (отправка микрофонного аудио на сервере):
while(isStreaming)
{
minBufSize = recorder.read(buffer, 0, buffer.length);
mSocket.emit("stream", Arrays.toString(buffer));
}
и 3-й части сделано, просто играть аудио:
mediaplayer.reset();
mediaplayer.setDataSource("http://192.168.1.2:1337/stream");
mediaplayer.prepare();
mediaplayer.start();
Теперь я не уверен, как свести входящий массив байтов и потоковой передачи. Вот мой текущий код сервера:
var ms = require('mediaserver');
// from server to Client B
exports.letsStream = function(req, res, next) {
ms.pipe(req, res, "sample_song_music_file.mp3");
};
// from Client A to server
exports.handleSocketConnection = function(socket)
{
console.log("connected");
socket.on('stream', function(data)
{
var bytes = JSON.parse(data);
console.log("GETTING STREAM:" + bytes);
});
}
Любые предложения? Как я могу напрямую передать этот массив байтов?
Привет, вы нашли решение? –
@BackPacker nah, прекратил искать его давно. –
Хорошо, спасибо, я думаю, что мне нужно использовать webrtc или что-то в этом роде –