ActionScript 3.0 Dersleri – Sahnede Sürekli Ses – Müzik Çalma

s_3545e0b025209e_d56b34f5fdb7954e46c92a8e6
ActionScript 3.0 Derslerimize Sahnede Sürekli Ses – Müzik Çalma konusu ile devam ediyoruz, daha önceden ActionScript ile Ses Dosyası Çalma konusunu anlatmıştık o uygulamada ses çalma olayı için kullanıcının bir etkileşim içinde bulunması yani butona basması gerekiyordu, ama ben kullanıcı bir şeye basmasın yaptığım animasyon başlar başlamaz ses dosyası da çalsın diyorsanız aşağıda anlattıklarımı yapmanız gerekiyor, İlk olarak sürekli olarak ses çalma olayının nasıl olacağını kısaca anlatayım sonra kodlara geçelim
1- ilk olarak bir fonksiyon ile hangi ses dosyasının çalacağını belirtiyoruz.
2- Çalınacak bu dosya ile alakalı bir ses nesnesi oluşturuyoruz
3- Dosya yüklendikten sonra çalmaya başlanıyor ve aynı zamanda dosya bitince de tekrar çalması için gerekli olan fonksiyonu ekliyoruz.
4- Dosya bittiği zaman çalacak olan fonksiyon çalışıyor ve programı 3.adıma gönderiyor ve bu şekilde sonsuz bir döngü içinde müzik dosyası sürekli olarak çalıyor..

var ses:Sound;
var calinacak:SoundChannel;
cal("alkis.mp3");
/*Sahnede Çalınacak Olan Müzik Dosyası Fonksiyona gönderiliyor 
http://www.bilisimogretmeni.com/
*/
function cal(url:String):void {
var request:URLRequest = new URLRequest(url);
ses = new Sound();
ses.addEventListener(Event.COMPLETE, sesyuklendi);
ses.load(request);
}
/*Parametre olarak gelen dosya 
ses nesnesine yüklendiyse çalma fonksiyonuna gidiyor
http://www.bilisimogretmeni.com/
*/
function sesyuklendi(e:Event):void {
ses.removeEventListener(Event.COMPLETE, sesyuklendi);
muzikcal();
}
/**
Müzik çalışnıyor ve bitimine yuklendiysecal isimli fonksiyon ekleniyor
*/
function muzikcal():void {
calinacak = ses.play();
calinacak.addEventListener(Event.SOUND_COMPLETE, yuklendiysecal);
}
/*Ses Dosyası bittiğinde tekrardan
yukarıdaki fonksiyon çağrılıp çalıştırılıyor.. 
http://www.bilisimogretmeni.com/
*/
function yuklendiysecal(e:Event):void {
calinacak.removeEventListener(Event.SOUND_COMPLETE, yuklendiysecal);
muzikcal();
}

Pin It on Pinterest