C#でMP3, MP4のメタデータを取得/編集する方法

NuGetにtaglibという便利なライブラリがあるので、早速、インストールしてみた。
使い方は、以下のような感じ。
ジャケットイメージも付けれるので、貯まったメディアファイルの整理に役立ちそう。

  1. private void SaveTag() {
  2. var f = TagLib.File.Create(@"C:\Temp\対象.mp3");
  3.  
  4. //タイトル
  5. f.Tag.Title = "タイトル";
  6. //アーティスト
  7. f.Tag.Performers = new string[] { "タイトル名" };
  8. //ジャンル
  9. f.Tag.Genres = new string[] { "洋楽" };
  10. //歌詞
  11. f.Tag.Lyrics = "歌詞";
  12. //コメント
  13. f.Tag.Comment = "コメント";
  14.  
  15. //画像
  16. string imgPath = @"C:\Temp\カバー画像.jpeg";
  17. var ic = new System.Drawing.ImageConverter();
  18. var ba = (byte[])ic.ConvertTo(Image.FromFile(imgPath), typeof(byte[]));
  19. var byteVector = new TagLib.ByteVector(ba);
  20. var pic = new TagLib.Picture(byteVector);
  21. pic.Type = TagLib.PictureType.FrontCover;
  22. pic.Description = "Cover";
  23. pic.MimeType = System.Net.Mime.MediaTypeNames.Image.Jpeg;
  24. f.Tag.Pictures = new TagLib.IPicture[] { pic };
  25.  
  26. f.Save();
  27. }
  28.  

将来構想

貯まったMP3,MP4に対する情報を、Webから収集し、メタデータとして自動付与するツールを作成。
後は、全文検索ツールのPokuda Searchを使って、
見たいファイルにすぐにアクセスといったことを考え中。

これで、ファイル整理の手間も省けるかも。。。

0 件のコメント:

コメントを投稿

厳選 Visual Studioの便利なショートカット

  エラー箇所にジャンプ 「Ctrl + Shift + F12」 ブレークポイント 設定/解除 「F9」 有効化/無効化 「Ctrl + F9」 ViEmu特有 「:ls」:バッファナンバーのリストを表示。 「:b2」:バッファ2のファイルを開く。 「:n」:次のバッファのファ...