Bir ses dosyası veya video dosyası, verileri yüklenirken oynatılıyorsa,
akışa alınıyor
demektir. Uzak bir sunucudan yüklenen harici ses dosyaları genellikle kullanıcı sesi dinlemeden önce tüm ses verilerinin yüklenmesini beklemek zorunda kalmayacak şekilde akışa alınır.
SoundMixer.bufferTime
özelliği, Flash Player veya AIR uygulamasının ses çalınmasına izin vermeden önce toplaması gereken ses verisinin milisaniye sayısını temsil eder. Başka bir deyişle,
bufferTime
özelliği 5000 olarak ayarlanırsa, Flash Player veya AIR uygulaması ses çalınmaya başlamadan önce ses dosyasından en az 5000 milisaniyelik veriyi yükler. Varsayılan
SoundMixer.bufferTime
değeri 1000'dir.
Uygulamanız, sesi yüklerken yeni bir
bufferTime
değerini açıkça belirterek tek bir ses için genel
SoundMixer.bufferTime
değerini geçersiz kılabilir. Varsayılan arabellek süresini geçersiz kılmak için, aşağıda gösterildiği gibi, ilk önce SoundLoaderContext sınıfının yeni bir örneğini oluşturun, bunun
bufferTime
özelliğini ayarlayın ve sonra bu özelliği
Sound.load()
yöntemine parametre olarak iletin:
import flash.media.Sound;
import flash.media.SoundLoaderContext;
import flash.net.URLRequest;
var s:Sound = new Sound();
var req:URLRequest = new URLRequest("bigSound.mp3");
var context:SoundLoaderContext = new SoundLoaderContext(8000, true);
s.load(req, context);
s.play();
Oynatma devam ettikçe, Flash Player ve AIR uygulaması ses arabelleğini aynı boyutta veya daha yüksek bir boyutta tutmaya çalışır. Ses verisi, oynatma hızından daha çabuk yüklenirse, oynatma kesinti olmadan devam eder. Ancak ağ sınırlamaları nedeniyle veri yükleme hızı düşerse, oynatma kafası ses arabelleğinin sonuna ulaşabilir. Bu durumda oynatma otomatik askıya alınır ancak ses verisi yüklendikten sonra otomatik olarak yeniden başlatılır.
Flash Player veya AIR uygulamasının veri yüklenmesini beklediğinden askıya alınıp alınmadığını öğrenmek için,
Sound.isBuffering
özelliğini kullanın.