サウンドデザインに関する文書の翻訳

2009年7月26日日曜日

メタデータを抽出する

メタデータとはファイルについての情報のこと。実際のコンテンツと対応するもの。AudioPlayerに読み込んだ後、ファイルのメタデータを取得できる。これやりたい理由のほとんどはID3タグの情報を表示だと思う。短い例を示す:

import ddf.minim.*;

Minim minim;
AudioPlayer groove;
AudioMetaData meta;

void setup()
{
size(512, 256, P3D);

minim = new Minim(this);
// groove.mp3はスケッチのdataフォルダに入れておくこと
groove = minim.loadFile("groove.mp3");
meta = groove.getMetaData();

// serif.vlwはスケッチのdataフォルダに入れておくこと。PDEのToolsメニューからCreate Font...で。
textFont( loadFont("serif.vlw") );
textMode(SCREEN);
}

int ys = 15;
int yi = 15;

void draw()
{
background(0);
int y = ys;
text("File Name: " + meta.fileName(), 5, y);
text("Length (in milliseconds): " + meta.length(), 5, y+=yi);
text("Title: " + meta.title(), 5, y+=yi);
text("Author: " + meta.author(), 5, y+=yi);
text("Album: " + meta.album(), 5, y+=yi);
text("Date: " + meta.date(), 5, y+=yi);
text("Comment: " + meta.comment(), 5, y+=yi);
text("Track: " + meta.track(), 5, y+=yi);
text("Genre: " + meta.genre(), 5, y+=yi);
text("Copyright: " + meta.copyright(), 5, y+=yi);
text("Disc: " + meta.disc(), 5, y+=yi);
text("Composer: " + meta.composer(), 5, y+=yi);
text("Orchestra: " + meta.orchestra(), 5, y+=yi);
text("Publisher: " + meta.publisher(), 5, y+=yi);
text("Encoded: " + meta.encoded(), 5, y+=yi);
}

void stop()
{
// 使い終わったらMinimオーディオクラスをcloseしよう
groove.close();
// 終了前にMinimをstopしよう
minim.stop();

super.stop();
}

0 件のコメント: