Actionscript 3.0 ‘a geçmek için 10 Sebep – 7

Uygulamayı yeni bir sayfada görmek için tıklayın

Merhaba arkadaşlar ;

Actionscript 3.0 ‘a geçmek için 10 Sebep – 7 olarak Actionscript 2.0’da olmayan 3.0 ile gelen Ses dosyaların bitlerine erişebilmemizi sağlayan ByteArray Classı ve tasarımsal bir örneğini göstermek istedim.

// Çalacak mp3 dosyasını URLRequest metoduyla çağırıp ses adlı sound objesine yüklüyoruz.

var ses:Sound = new Sound();
var adres:URLRequest = new URLRequest(“1.mp3”);
ses.load(adres);
var seskanal1:SoundChannel = new SoundChannel();
seskanal1 = ses.play();

// Anasahnede şarkının id3 lerini okuyup sarki_txt içerisine yazan kontrolu ekledik.
ses.addEventListener(Event.COMPLETE,cal);
function cal(e:Event) {
sarki_txt.text = ses.id3.artist + ” -” +ses.id3.songName ;
}

// ByteArray classı yardımıyla ses dosyasının kanal yogunluklarını DrawAPI ler yardımıyla mixer_mc isimli bir MovieClip içerisinde çizdirdik. MovieKlip içerisine çizdirmekte fayda var ileride alphası,konumu,rotationıyla daha rahat oynamak için.

var sesByte:ByteArray = new ByteArray();
stage.addEventListener(Event.ENTER_FRAME,eko);
var mixer_mc:MovieClip = new MovieClip()
addChild(mixer_mc)

function eko(e:Event) {
mixer_mc.graphics.clear();
SoundMixer.computeSpectrum(sesByte,true);
mixer_mc.graphics.moveTo(0,200);

//Grafiklerin stilleri mixer_mc.graphics.lineStyle(1,0xffccff) ile belli oluyor.
Burada 1 alpha değeri oxffccff de siyahla öne çıkan sarımsı bir renk.

for (var i:uint=0; i<256; i++) {
mixer_mc.graphics.lineStyle(1,0xffccff);
var yPos:Number = (-sesByte.readFloat() * 150 ) + 100;
mixer_mc.graphics.lineTo(i *2, yPos * 2);
mixer_mc.x = 150
mixer_mc.y = 150
}
}

Yukarıda play butonuna basınca çalan ve stop butonuyla da duran çalışmamın fla sı için tıklayın.

Not : Dışardan stream edilerek çağırılan 1.mp3 dosyasını da swf dosyası ile aynı yerde olduğundan emin olun.Fla direk çalıştırdığınızda mp3 dosyasını bulamazsa çalışmaz.

Faydalı olması dileğiyle…

Reklamlar

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s


%d blogcu bunu beğendi: