1
resposta

Video stream não funcionando no MAC IOS

Estou tentando fazer um web app com um chat de video e gravação de video. No windows e android tudo funciona muito bem, mas no MAC tenho dois problemas:

1º Ao fazer a gravação do video, usando a api navigator.mediaDevices.getUserMedia e o new MediaRecorder() Eu consigo gravar o video e ele é enviado ao meu servidor, mas pro usuario, a tag video fica preta como se não estivesse gravando.

2º Na tela da video chamada, recriei o formato do whatsapp ( uma stream grande atras e a nossa pequena acima) mas o iphone não respeita o css e mostra só uma das stream como se tivesse dado um fullscreen no video automaticamente.

Algum de voces ja passou por algo parecido ? Qualquer uma das duas que souberem responder ja vão me ajudar demais !!! Muito obrigado !

Segue abaixo o código de como peço a camera:

navigator.mediaDevices.getUserMedia(options).then(stream => {
      this.localStream = stream
      this.mediaRecorder = new MediaRecorder(stream);
      this.addVideoStream('video1', stream)
      let chunks = [];
    (...)

OBS: Na tag video, coloco srcObject quando é stream e src quando é pra mostrar o video gravado.

1 resposta

Fala ai João, tudo bem? Vamos lá:

1º Ao fazer a gravação do video, usando a api navigator.mediaDevices.getUserMedia e o new MediaRecorder() Eu consigo gravar o video e ele é enviado ao meu servidor, mas pro usuario, a tag video fica preta como se não estivesse gravando.

Não como você está passando os dados para o video, mas, você pode fazer algo assim:

navigator.getUserMedia(
    { video: true },
    stream => cam.srcObject = stream, // cam = referência do video no DOM
    error => console.error(error)
)

No meu mac funciona de boas.

2º Na tela da video chamada, recriei o formato do whatsapp ( uma stream grande atras e a nossa pequena acima) mas o iphone não respeita o css e mostra só uma das stream como se tivesse dado um fullscreen no video automaticamente.

Nesse caso não sei como estão o CSS, mas, provavelmente seja ajustes de position com z-index.

Espero ter ajudado.