Arbeta med ljudmetadata

Flash Player 9 och senare, Adobe AIR 1.0 och senare

Ljudfiler som använder MP3-format kan innehålla ytterligare data om ljudet i form av ID3-taggar.

Alla MP3-filer innehåller inte ID3-metadata. När ett Sound-objekt läser in en MP3-ljudfil, skickas en Event.ID3 -händelse om ljudfilen innehåller ID3-metadata. För att undvika körningsfel, ska programmet vänta på mottagning av Event.ID3 -händelsen innan Sound.id3 -egenskapen för ett inläst ljud hämtas.

I följande kod visas hur programmet känner igen när ID3-metadata för en ljudfil har lästs in:

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

Koden börjar med att skapa ett Sound-objekt och ange att avlyssning av en Event.ID3 -händelse ska ske. När ljudfilens ID3-metadata har lästs in anropas metoden onID3InfoReceived() . Målet för Event-objektet som överförs till onID3InfoReceived() -metoden är det ursprungliga Sound-objektet, så metoden får sedan Sound-objektets id3 -egenskap och itererar igenom alla sina namngivna egenskaper för att spåra deras värden.