Audio::M4P::QuickTime を使えば m4a ファイルに対してタグを付けることができ、もちろん iTunes 上でも、設定したタグを確認することができます。
sub set_metainfo { my ($file, $title, $artist) = @_; my $qt = Audio::M4P::QuickTime->new( file => $file ); $qt->SetMetaInfo( TITLE => $title ); $qt->SetMetaInfo( ARTIST => $artist ); $qt->WriteFile($file); }
上記の例では、もちろん $title, $artist は decode 済であることが前提で、そうでなければ派手に文字化けしたタグが設定される。
ちなみに、同モジュールは MP3::Tag と互換性を持ったメソッドも用意されていて、例えば上記の例は以下のようにも書き直すことができます。個人的にはこっちの方が好きです。
sub set_metainfo { my ($file, $title, $artist) = @_; my $qt = Audio::M4P::QuickTime->new( file => $file ); $qt->title($title); $qt->artist($artist); $qt->WriteFile($file); }