Dün yayınlanan Chrome Canary sürümüne (23.0.1270.0) eklenen yeni bir özellikten gerçekten çok heyecanlıyım. Bu özellik, OSX'te mikrofondan veya diğer ses girişlerinden canlı sese düşük gecikmeli erişim elde etmenizi sağlıyor. (Bu özellik henüz Windows'ta etkinleştirilmedi ancak endişelenmeyin, üzerinde çalışıyoruz.)
Bunu etkinleştirmek için chrome://flags/ adresine gidip en alttaki "Web Ses Girişi" öğesini etkinleştirmeniz ve tarayıcıyı yeniden başlatmanız gerekir. Artık hazırsınız.
Canlı giriş görselleştiricisini kullanarak girişinizin spektrumunu kontrol ederek canlı ses girişini test edebilirsiniz.
Aranızdaki Web Audio kodlayıcıları için ses giriş akışını nasıl isteyeceğinizi ve istediğiniz işleme grafiğine bağlamak için bir düğüm nasıl alacağınızı burada bulabilirsiniz.
// 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 );
Özellikle müzik alanında düşük gecikmeli ses girişi için birçok zengin olasılık vardır. Bu özelliğin nasıl kullanılacağına dair kısa bir örneği, hızlıca oluşturduğum basit bir perde algılayıcıda görebilirsiniz. Gitar bağlamayı veya mikrofonu ıslıklayarak kullanmayı deneyin.
Sözleştiğimiz gibi, Google IO için yazdığım Vocoder'a giriş kaynağı olarak canlı ses ekledim. Bunun için modülatör bölümünde "canlı giriş"i seçmeniz yeterli. Modülatör kazancını ve sentezleyici seviyesini ayarlamanız gerekebilir. İşleme nedeniyle küçük bir gecikme yaşanıyor (giriş gecikmesinden değil). Canlı ses girişi aldığıma göre, ayarlamalara devam edebiliriz.
Son olarak, web ses demolarımın koleksiyonuna göz atabilirsiniz. Bu makaleyi okuduğunuzda daha fazla canlı ses demosu yayınlamış olabilirim.