Saya sangat senang dengan fitur baru yang disertakan dalam build Chrome Canary kemarin (23.0.1270.0) - kemampuan untuk mendapatkan akses latensi rendah ke audio live dari mikrofon atau input audio lainnya di OSX. (Fitur ini belum diaktifkan di Windows - tetapi jangan khawatir, kami sedang mengerjakannya!)
Untuk mengaktifkannya, Anda harus membuka chrome://flags/ dan mengaktifkan item "Web Audio Input" di dekat bagian bawah, lalu meluncurkan kembali browser. Sekarang Anda siap untuk memulai.
Anda dapat menguji input audio live dengan memeriksa spektrum input menggunakan visualisator input live.
Bagi coders Web Audio di antara Anda, berikut cara meminta streaming input audio, dan mendapatkan node untuk terhubung ke grafik pemrosesan yang Anda sukai.
// 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 );
Ada banyak kemungkinan input audio latensi rendah, terutama di ruang musik. Anda dapat melihat contoh singkat tentang cara memanfaatkannya di pendeteksi nada sederhana yang saya buat - coba colokkan gitar, atau bahkan siul ke mikrofon.
Dan, seperti yang dijanjikan, saya telah menambahkan audio live sebagai sumber input ke Vocoder yang saya tulis untuk Google IO - cukup pilih "live input" di bagian modulator. Anda mungkin perlu menyesuaikan Perolehan Modulator dan Level Synth. Ada sedikit jeda karena pemrosesan (bukan karena latensi input). Setelah memiliki input audio live, sekarang saatnya untuk melakukan penyesuaian lagi.
Terakhir, Anda dapat melihat koleksi demo audio web saya - saat Anda membaca ini, saya mungkin sudah memiliki beberapa demo audio live lainnya.