サウンドメタデータの操作

MP3 形式を使用するサウンドファイルには、サウンドに関する追加データが ID3 タグの形式で含まれることがあります。

すべての MP3 ファイルに ID3 メタデータが含まれるわけではありません。 Sound オブジェクトが MP3 サウンドファイルをロードすると、サウンドファイルに ID3 メタデータが含まれる場合でも、 Event.ID3 イベントが送出されます。ランタイムエラーを防ぐため、アプリケーションでは、 Event.ID3 イベントを受信するのを待ってから、読み込まれたサウンドの Sound.id3 プロパティにアクセスする必要があります。

次のコードでは、サウンドファイルの ID3 メタデータが読み込まれたことを認識する方法を示します。

var s = new air.Sound(); 
s.addEventListener(air.Event.ID3, onID3InfoReceived); 
var urlReq = new air.URLRequest("mySound.mp3"); 
s.load(urlReq); 
 
function onID3InfoReceived(event) 
{ 
    var id3 = event.target.id3; 
 
    air.trace("Received ID3 Info:"); 
    for (propName in id3) 
    { 
        air.trace(propName + " = " + id3[propName]); 
    } 
}

このコードでは、最初に Sound オブジェクトを作成し、 id3 イベントをリッスンするように指示しています。サウンドファイルの ID3 メタデータが読み込まれると、 onID3InfoReceived() メソッドが呼び出されます。 onID3InfoReceived() メソッドに渡される Event オブジェクトの対象は、元の Sound オブジェクトです。その後、このメソッドは Sound オブジェクトの id3 プロパティを取得し、指定されているプロパティを順番に参照して値を追跡します。