Pergunta

Eu tenho uma fila de áudio que tenho tocando, parando, fazendo uma pausa corretamente, mas estou encontrando a função Audioqueuestop () para demorar muito tempo para executar.

Eu gostaria de parar imediatamente e reiniciar tocando uma fila de áudio e estava se perguntando qual seria a maneira mais rápida de fazer.

No meu projeto, tenho várias filas de áudio que mantenho para tocar sons específicos repetidamente. Há uma situação em que devo parar alguns desses sons e depois interpretá -los imediatamente e muito mais ao mesmo tempo. Não é tão ruim se houver apenas algumas filas de áudio que eu faço isso, mas começa a demorar muito tempo se houver muitas que eu preciso parar e reiniciar.

Eu poderia fingir chamando a parada em uma fila de áudio e depois criando uma nova com o mesmo som, mas estava se perguntando se havia uma maneira melhor de fazê -lo.

Foi útil?

Solução

AudioQueue pode ser confuso para esse tipo de coisa. É difícil parar a fila no meio-buffer, e isso significa que o buffer atual continuará a jogar. Além disso, você precisa lidar com problemas de latência.

Para parada rápida e reprodução com baixa latência, eu recomendaria usar o Remoteio Audiounit.

Você pode encontrar um ótimo tutorial com código aqui:

Usando a unidade de áudio remoteio

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top