WMAのファイルのタグ情報を書き込んだりするには?

解決


VN  2010-02-09 06:43:16  No: 102237  IP: [192.*.*.*]

VB6,WinXP

拡張子がWMAのファイル(Windows Media Audio)のタグ情報(タイトル、アーティスト、アルバム名など)を取得したり書き換えたりするにはどうすればいいでしょうか?

下のサンプルを見つけたのですがうまく行きませんでした。
http://www.vector.co.jp/soft/win95/prog/se285185.html

どうやらタグのバージョンが違うみたいです。(ID3v1とID3v2があるようです)

よくわからないのですが、アドバイスなど頂けたらと思いまして。
よろしくお願いいたします。

編集 削除
横須賀の熊  2010-02-09 14:07:12  No: 102238  IP: [192.*.*.*]

まずは、ファイルフォーマットのチェックからでしょう、
タグ情報が、そのファイルのどこに格納されるのか?

RFCなどを見て確認ですね。

編集 削除
なな  2010-02-10 17:06:22  No: 102239  IP: [192.*.*.*]

一言だけ、たしかWMAはID3タグではない方法で情報持ってるんじゃなかったかな。

編集 削除
K.J.K.  2010-02-11 16:20:50  No: 102240  IP: [192.*.*.*]

とりあえず、読み込みだけですがサンプルを作りました。
http://www.koalanet.ne.jp/~akiya/vbtaste/vbp/ASFTags.lzh
WMVCore.dll を使っていますので、MSDNで調べるといいでしょう。

編集 削除
VN  2010-02-22 00:31:59  No: 102241  IP: [192.*.*.*]

みなさんありがとうございます。

直接書き込むのは相当大変そうですね。

「Windows Media Player」コントロールを使う方法が見つかり、何とか書き込むことができました。

コントロールをフォームに貼り付けて、ファイルを読み込ませて、「setItemInfo」メソッドでタグを編集することができました。

参考にしたサイト(Delphiですが)
http://cult-drang.com/program/tips/id3tag/id3tag_write.html

編集 削除
VN  2010-02-22 00:33:30  No: 102242  IP: [192.*.*.*]

失礼しました。
「解決」にチェックし忘れました。

編集 削除
K.J.K.  2010-02-22 09:41:16  No: 102243  IP: [192.*.*.*]

提示したサンプルを少しいじるだけで書き換えもできますよ。
読み込みには IWMHeaderInfo3 の GetAttributeByIndex メソッドを
使っていますが、新規書き込みには AddAttribute メソッドを、
既存のインデックスへの書き込みは ModifyAttribute メソッドを、
削除には DeleteAttribute メソッドを使えばいいのですし。

編集 削除