Entrada de áudio da Web ao vivo ativada

Chris Wilson
Chris Wilson

Estou muito animado com um novo recurso que foi incluído na versão de ontem do Chrome Canary (23.0.1270.0): a capacidade de ter acesso de baixa latência a áudio ao vivo a partir de um microfone ou outra entrada de áudio no OSX. (Isso ainda não foi ativado no Windows, mas não se preocupe, estamos trabalhando nisso!)

Para ativar esse recurso, acesse chrome://flags/, ative o item "Web Audio Input" na parte inferior e reinicie o navegador. Tudo pronto para começar.

É possível testar a entrada de áudio em tempo real verificando o espectro da entrada usando o Visualizador de entrada ao vivo.

Para os programadores do Web Audio, confira como solicitar o stream de entrada de áudio e conseguir um nó para se conectar a qualquer gráfico de processamento que você quiser.

// success callback when requesting audio input stream
function gotStream(stream) {
    window.AudioContext = window.AudioContext || window.webkitAudioContext;
    var audioContext = new AudioContext();

    // Create an AudioNode from the stream.
    var mediaStreamSource = audioContext.createMediaStreamSource( stream );

    // Connect it to the destination to hear yourself (or any other node for processing!)
    mediaStreamSource.connect( audioContext.destination );
}

navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia;
navigator.getUserMedia( {audio:true}, gotStream );

Há muitas possibilidades para entradas de áudio de baixa latência, especialmente no espaço musical. Este breve exemplo mostra como usar esse recurso em um detector de tom simples que juntei. Tente conectar uma guitarra ou simplesmente assobiar no microfone.

Como prometido, adicionei o áudio ao vivo como fonte de entrada ao Vocoder que criei para o Google IO. Basta selecionar "live input" no modulador. Talvez seja necessário ajustar o ganho do modulador e o nível do sintetizador. Há um pequeno atraso devido ao processamento (não devido à latência de entrada). Agora que o recurso de entrada de áudio em tempo real está disponível, é hora de mais uma rodada de ajustes.

Por fim, confira a coleção das minhas demonstrações de áudio da Web. Quando você continuar, talvez eu tenha mais algumas demonstrações de áudio ao vivo disponíveis.