O áudio não jogar mais no Safari 13 a menos getUserMedia é chamado

votos
0

Estou gravando áudio usando getUserMedia, em seguida, permitindo que o usuário clique em um botão para ouvir tanto a gravação ou outro buffer. Isto tem tudo funcionou bem por um ano, então eu não acho que estou a violar qualquer uma das regras que causam AudioContext a ser suspensa. E, de qualquer maneira, eu estou testando o AudioContext para se certificar de que não está suspensa no meu manipulador de botão.

Isto tem tudo funcionando bem sido em todos os sistemas modernos com muitos navegadores. No entanto, este não está jogando o áudio no Safari 13 em iOS. Ele irá retornar das promessas como se estivesse jogando áudio, mas nada parece até que eu chamo getUserMediade novo.

Como uma experiência, eu coloquei a seguinte linha na parte superior do meu processador de botão:

navigator.mediaDevices.getUserMedia({
    audio: {
        echoCancellation: {ideal: false},
    }
});

E funciona!

Mas por que? Eu não estou confortável com essa solução, porque eu não sei por que o browser quer isso. Não faz sentido para mim que eu teria que solicitar o microfone para jogar qualquer som.

A única pista que tenho é que uma vez eu faço o getUserMediaque eu manter a gravação aberto no Safari (eu faço isso porque Safari tem um tempo - quando eu solicitar o microfone, ele abre uma janela para o usuário para permitir que o microfone Às vezes. pode levar o usuário 90 segundos para dar a volta a pressionar record, e se eu não deixar o microfone abri-lo aparece a caixa de diálogo novamente.)

Alguém tem alguma idéia do que está acontecendo? E, eu não tenho sido capaz de encontrar qualquer write-se técnico do Safari e áudio. Existe alguma coisa além do MDN padrão?

Publicado 10/10/2019 em 00:40
fonte usuário
Em outras línguas...                            


1 respostas

votos
0

IOS13 também quebrou uma das nossas aplicações. Ele tem trabalhado muito bem durante anos. Sem erros são jogados e nós não está violando nenhuma regra. Aqui está o link para o meu post: Tem IOS13 quebrados <audio> marcas usadas como buffers de áudio ligado ao contexto de áudio?

Mesmo que seja um uso diferente do api, eu acredito que é relacionado. A Apple quebrou claramente algo sobre este novo lançamento.

Respondeu 10/10/2019 em 12:27
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more