Praca z metadanymi dźwiękowymi

Flash Player 9 i nowsze wersje, Adobe AIR 1.0 i nowsze wersje

Pliki dźwiękowe korzystające z formatu mp3 mogą zawierać dodatkowe dane dotyczące dźwięku w postaci znaczników ID3.

Nie każdy z plików mp3 zawiera takie metadane ID3. Po załadowaniu przez obiekt Sound pliku dźwiękowego mp3 dysponuje on zdarzenie Event.ID3 , jeśli plik dźwiękowy zawiera metadane ID3. Aby nie doszło do błędów wykonywania, aplikacja powinna czekać na otrzymanie zdarzenia Event.ID3 przez uzyskaniem dostępu do właściwości Sound.id3 dla ładowanego dźwięku.

Poniższy kod ilustruje sposób rozpoznawania metadanych ID3 dla pliku dźwiękowego, który został załadowany:

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]); 
    } 
}

Kod ten rozpoczyna się od utworzenia obiektu Sound i ustawienia go do wykrywania zdarzenia Event.ID3 . Ładowanie metadanych ID3 pliku dźwiękowego powoduje wywołanie metody onID3InfoReceived() . Wartość docelowa obiektu Event przekazywana do metody onID3InfoReceived() jest oryginalnym obiektem Sound, dlatego metoda ta pobiera następnie właściwość id3 obiektu Sound, i iteruje ją przez wszystkie nazwane właściwości w celu śledzenia ich wartości.