Acesso a objetos do MediaStream para assinantes
É possível acessar o objeto MediaStream utilizado por um assinante. O HTMLVideoElement objeto (no videoElementCreated evento disparado pelo Assinante, descrito na seção anterior), possui um srcObject propriedade. Este é o objeto MediaStream correspondente ao fluxo de áudio e vídeo do Assinante. Você pode usar esse objeto MediaStream como o MediaStream de origem para outro Video elemento (como seu srcObject propriedade):
session.on('streamCreated', function(event) {
const subscriber = session.subscribe(event.stream, { insertDefaultUI: false });
subscriber.on('videoElementCreated', event => {
// myVideoElement is a Video element you have created:
myVideoElement.srcObject = event.element.srcObject;
});
});
Em uma sessão roteada que utiliza Roteamento Adaptativo de Mídia, o MediaStream de um assinante pode mudar quando a sessão passa de fluxos retransmitidos para fluxos roteados (consulte isto Artigo da base de conhecimento da Central de Ajuda). Adicione um ouvinte de evento para o play evento do elemento Video de um objeto Subscriber para obter a instância atualizada do MediaStream:
session.on('streamCreated', function(event) {
const subscriber = session.subscribe(event.stream, { insertDefaultUI: false });
subscriber.on('videoElementCreated', event => {
// myVideoElement is a Video element you have created:
myVideoElement.srcObject = event.element.srcObject;
myVideoElement.play()
event.element.addEventListener('play', () => {
// The MediaStram has changed
myVideoElement.srcObject = event.element.srcObject;
myVideoElement.play();
});
});
});