sub flacinfo{
my $file=$_[0];
my $flac=Audio::FLAC::Header->new($file);
- $file = $prefix . scalar fileparse $file;
+ $file = scalar fileparse $file;
freeze +{
format => 'FLAC',
tracknumber => fix ($flac->tags('TRACKNUMBER') // '?'),
tracktotal => fix ($flac->tags('TRACKTOTAL') // '?'),
genre => fix ($flac->tags('GENRE') // '?'),
- path => $file,
+ file => $file,
}
}
sub mp3info{
my $file=$_[0];
my $mp3=MP3::Tag->new($file);
- $file = $prefix . scalar fileparse $file;
+ $file = scalar fileparse $file;
freeze +{
format => 'MP3',
tracknumber => fix ($mp3->track1 || '?'),
tracktotal => fix ($mp3->track2 || '?'),
genre => fix ($mp3->genre) || '?',
- path => $file,
+ file => $file,
}
}
sub vorbisinfo{
my $file=$_[0];
my $ogg=Ogg::Vorbis::Header::PurePerl->new($file);
- $file = $prefix . scalar fileparse $file;
+ $file = scalar fileparse $file;
freeze +{
format => 'Vorbis',
tracknumber => fix ($ogg->comment('TRACKNUMBER') || '?'),
tracktotal => fix ($ogg->comment('TRACKTOTAL') || '?'),
genre => fix ($ogg->comment('GENRE')) || '?',
- path => $file,
+ file => $file,
}
}
for (values %files) {
my @versions = @$_;
my %entry = (%{$versions[0]}, formats => []);
- push $entry{formats}, {format => $_->{format}, path => $_->{path}} for @versions;
+ push $entry{formats}, {format => $_->{format}, file => $_->{file}} for @versions;
push @files, \%entry
}
- $ht->param(files=>[sort { $a->{title} cmp $b->{title} } @files]);
+ $ht->param(files=>[sort { $a->{title} cmp $b->{title} } @files], prefix => $prefix);
print $ht->output;
}