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.
|
|
|