Perl MP3::Info MP3::Tag | Index of /.Phantom
いい書き方かどうかは不明だけど。
ここから取得したものは, shift_jisで
エンコードされているので shift_jis決め打ちで。
#!perl use strict; use warnings; use MP3::Info; use MP3::Tag; use Encode; my $file = shift or die "Usage: $0 mp3_file"; my $tag = get_mp3tag($file) or die "No Tag data"; for my $tag_key (qw/title artist album year genre comment/) { my $hash_key = uc $tag_key; my $tag_value = encode_utf8( decode('shift_jis', $tag->{$hash_key}) ); printf "%-15s : %s\n", $tag_key, $tag_value; } my $info = get_mp3info($file) or die "No Info data"; for my $info_key (qw/size time stereo vbr bitrate frequency copyright mode frames frame_length/) { my $hash_key = uc $info_key; printf "%-15s : %s\n", $info_key, $info->{$hash_key}; }
結果
title : ロック 01 artist : 奏サウンド album : 奏サウンド試聴サンプル year : genre : Metal comment : Copyright (C) Sou-Sound Inc. size : 1120018 time : 00:35 stereo : 1 vbr : 0 bitrate : 256 frequency : 44.1 copyright : 0 mode : 1 frames : 1339 frame_length : 836
古いモジュールということもあるけど、あまりおしゃれじゃない感じ。