Geluidsbestanden die de MP3-indeling gebruiken, kunnen aanvullende gegevens over het geluid bevatten, in de vorm van ID3-tags.
Niet alle MP3-bestanden bevatten ID3-metagegevens. Wanneer een object Sound een MP3-geluidsbestand laadt, wordt de gebeurtenis
Event.ID3
verzonden als het geluidsbestand ID3-metagegevens bevat. Om uitvoeringsfouten te voorkomen, moet uw toepassing wachten tot de gebeurtenis
Event.ID3
is ontvangen voordat de eigenschap
Sound.id3
voor een geladen bestand wordt opgevraagd.
In de volgende code ziet u hoe u kunt merken of de ID3-metagegevens voor een geluidsbestand zijn geladen:
import flash.events.Event;
import flash.media.ID3Info;
import flash.media.Sound;
var s:Sound = new Sound();
s.addEventListener(Event.ID3, onID3InfoReceived);
s.load("mySound.mp3");
function onID3InfoReceived(event:Event)
{
var id3:ID3Info = event.target.id3;
trace("Received ID3 Info:");
for (var propName:String in id3)
{
trace(propName + " = " + id3[propName]);
}
}
Deze code begint met het maken van een object Sound, waarna wordt geluisterd naar de gebeurtenis
Event.ID3
. Wanneer de ID3-metagegevens van het geluidsbestand zijn geladen, wordt de methode
onID3InfoReceived()
aangeroepen. Het doel van het object Event dat wordt doorgegeven aan de methode
onID3InfoReceived()
, is het oorspronkelijke object Sound, wat betekent dat de methode vervolgens de eigenschap
id3
van het object Sound ontvangt en dan alle benoemde eigenschappen doorloopt om de bijbehorende waarden op te vragen.