X-Git-Url: https://erislabs.net/gitweb/?p=id3fs.git;a=blobdiff_plain;f=lib%2FID3FS%2FAudioFile%2FMp3.pm;fp=lib%2FID3FS%2FAudioFile%2FMp3.pm;h=2b90b5dad1a2e84d94e89e98c46333aa25d1e83b;hp=bcbd227781f9d8775856469df8dda6e78d3c26e1;hb=08717313d5feba3f77f848b6409ec46263ed548e;hpb=19d8ec06b9d280881f8065abe8bd7d8db28f5eb8 diff --git a/lib/ID3FS/AudioFile/Mp3.pm b/lib/ID3FS/AudioFile/Mp3.pm index bcbd227..2b90b5d 100644 --- a/lib/ID3FS/AudioFile/Mp3.pm +++ b/lib/ID3FS/AudioFile/Mp3.pm @@ -69,16 +69,36 @@ sub choose return $thing; } -sub year { return(shift->set("year", @_)); } -sub artist { return(shift->set("artist", @_)); } -sub album { return(shift->set("album", @_)); } -sub track { return(shift->set("title", @_)); } -sub tracknum { return(shift->set("track", @_)); } -sub comment { return(shift->set("comment", @_)); } +sub year { return(shift->set("year", @_)); } +sub artist { return(shift->set("artist", @_)); } +sub album { return(shift->set("album", @_)); } +sub track { return(shift->set("title", @_)); } +sub tracknum { return(shift->set("track", @_)); } +sub comment { return(shift->set("comment", @_)); } sub audiotype { return "mp3"; } sub haspic { return undef; } # NEXTVERSION +# we only set v2 genre +sub genre +{ + my ($self, $value)=@_; + if($value) + { + if(exists($self->{mp3tag}->{ID3v2})) + { + $self->{mp3tag}->{ID3v2}->remove_frame("TCON"); + } + else + { + $self->{mp3tag}->new_tag("ID3v2"); + } + $self->{mp3tag}->{ID3v2}->add_frame("TCON", $value); + + } + return($self->{mp3tag}->{ID3v2}->genre()); +} + sub v1genre { my($self, $val)=@_; @@ -156,7 +176,7 @@ sub write } else { - $self->{mp3tag}->{ID3v1}->remove_tag; + $self->{mp3tag}->{ID3v1}->write_tag; } } if(exists($self->{mp3tag}->{ID3v2})) @@ -279,7 +299,6 @@ sub uniq return(sort keys(%hash)); } - sub channels { my($self)=@_;