C#用にMP3のID3タグを扱うライブラリはいくつか公開されています。
以下のサンプルは「ID3.NET Tagging Library for MP3s(http://id3.codeplex.com/)」を使用してMP3ファイルに画像ファイルを埋め込みを行います。
1. NuGetを使用してID3.NETを追加する
・メニュー「プロジェクト-NuGetパッケージ管理」を選択する
・ID3.NETを検索する
・"ID3.NET Core", "ID3.NET File Extentions", "ID3.NET Windows Forms Extentions"をインストールします。
2.名前空間を追加する
using Id3;
using Id3.Frames;
3.MP3ファイルを読み込みます。
mp3_file = new Mp3File(args[0], Mp3Permissions.ReadWrite);
if (mp3_file == null)
{
Console.WriteLine("Error : Can't open mp3 file");
return;
}
4.タグを作成します。
id3_tag = (Id3.Id3v2.v23.Id3v23Tag)mp3_file.GetTag(2,3);
if (id3_tag == null)
{
id3_tag = new Id3.Id3v2.v23.Id3v23Tag();
}
5.JPEGファイルを開きます。
image = Image.FromFile(args[1]);
if (image == null)
{
Console.WriteLine("Error : Can't open jpeg file");
return;
}
6.ID3タグの設定を行います。
picture_frame = new PictureFrame();
picture_frame.PictureType = PictureType.FrontCover;
picture_frame.EncodingType = Id3TextEncoding.Unicode;
picture_frame.MimeType = "image/jpeg";
picture_frame.SetPicture(image);
id3_tag.Pictures.Add(picture_frame);
7.MP3ファイルにタグを書き込ます。
//タグをMP3ファイルに設定する
result = mp3_file.WriteTag(id3_tag, 2, 3, WriteConflictAction.Replace);
サンプルコード
TestID3NET.zip
0 件のコメント :
コメントを投稿