Wanneer een geluidsbestand of videobestand wordt afgespeeld terwijl er nog gegevens uit het bestand worden geladen, is er sprake van
streaming
. Externe geluidsbestanden die vanaf een externe server worden geladen, worden vaak gestreamd, zodat de gebruiker niet hoeft te wachten tot alle geluidsgegevens zijn geladen om naar het geluid te kunnen luisteren.
De eigenschap
SoundMixer.bufferTime
staat voor het aantal milliseconden aan geluidsgegevens dat door Flash Player of AIR moet worden verzameld voordat er kan worden gestart met het afspelen van het geluid. Met andere woorden, als de eigenschap
bufferTime
op 5000 is ingesteld, laadt Flash Player of AIR ten minste 5000 milliseconden aan gegevens uit het geluidsbestand voordat het afspelen van het geluid wordt gestart. De standaardwaarde voor
SoundMixer.bufferTime
is 1000.
Uw toepassing kan de algemene waarde van
SoundMixer.bufferTime
voor een specifiek geluidsbestand onderdrukken door bij het laden van het geluid expliciet een nieuwe waarde voor
bufferTime
op te geven. Als u de standaardbuffertijd wilt onderdrukken, maakt u eerst een nieuwe instantie van de klasse SoundLoaderContext, stelt u de waarde voor de eigenschap
bufferTime
hiervan in en geeft u dit vervolgens door als parameter aan de methode
Sound.load()
, zoals hieronder wordt weergegeven:
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();
Terwijl het afspelen wordt vervolgd, probeert Flash Player of AIR de geluidsbuffer even groot of groter te houden. Als de geluidsgegevens sneller dan de afspeelsnelheid worden geladen, wordt het afspelen zonder onderbreking voortgezet. Als de snelheid waarmee de gegevens worden geladen door netwerkbeperkingen afneemt, zou de afspeelkop echter het einde van de geluidsbuffer kunnen bereiken. Als dit gebeurt, wordt het afspelen onderbroken, om vervolgens automatisch te worden hervat zodra er meer geluidsgegevens zijn geladen.
Als u wilt nagaan of het afspelen is onderbroken omdat Flash Player of AIR wacht tot er gegevens zijn geladen, gebruikt u de eigenschap
Sound.isBuffering
.