Audio en vivo con Socket.io
Publicado por Juanky (1 intervención) el 23/01/2018 20:25:50
Hice una aplicación para enviar audio en vivo con Socket.io. El problema es que solo funciona entre pestañas en la misma ventana de Chrome. Cuando trato de enviar o recibir audio desde otro pc o incluso desde otra ventana, aparece este error:
Este es el codigo en main.js (de la página):
Este es el código en el servidor (index.js):
1
GET blob:https://server/ce74cfe7-bb9c-40b0-9cb0-1138b22b1b11 404 (Not Found)
Este es el codigo en main.js (de la página):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
$(document).ready(function(){
var socket = io("https://server:4000", verify=false);
socket.on('audio stream', function(blob){
var video = document.querySelector('video');
video.src = blob;
});
$('#ptt').click(function(){
micOn();
document.getElementById("ptt").disabled = true;
document.getElementById("ptt-off").disabled = false;
});
$('#ptt-off').click(function(){
stream.getAudioTracks()[0].stop();
document.getElementById("ptt").disabled = false;
document.getElementById("ptt-off").disabled = true;
});
function micOn(){
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
var constraints = {
audio: true,
video: false
};
var video = document.querySelector('video');
function successCallback(stream) {
window.stream = stream; // stream available to console
var blob = window.URL.createObjectURL(stream);
socket.emit('audio stream', myName, blob);
}
function errorCallback(error) {
console.log('navigator.getUserMedia error: ', error);
}
navigator.getUserMedia(constraints, successCallback, errorCallback);
}
});
1
2
3
socket.on('audio stream', function(blob){
socket.broadcast.emit('audio stream', blob);
});
Valora esta pregunta


0