#!/usr/bin/perl use MP3::Tag; use Data::Dumper; my $dir = "."; opendir(CWD, $dir) or die "What? \n$!"; my $file = ''; while( defined ( $file = readdir CWD ) ) { chomp $file; next if $name =~ /^\.\.?$/; # . and . if ( ( -f $file ) && ( $file =~ m/mp3$/i ) ) { print "$file is an mp3\n"; my $mp3 = MP3::Tag->new($file); $mp3->get_tags; if ( exists $mp3->{ID3v2}) { my $id3v2 = $mp3->{ID3v2}; my $frameIDs_hash = $id3v2->get_frame_ids(); print Dumper $frameIDs_hash; foreach my $frame (keys %$frameIDs_hash) { print "\n############# $frame #############\n"; print Dumper $id3v2->get_frame($frame); } } print "\n"; } } closedir(CWD);