Cannibal Caniche
Geeks Corner => Ware doux => Discussion démarrée par: sarah porte le avril 23, 2009, 14:23:40 pm
-
pour le netlabel antisocial, je me suis demandé comment mettre le maximum d'informations dans les mp3s.
Les informations possibles ( sous forme de tags )
http://www.id3.org/id3v2.3.0
4.20 AENC [#sec4.20 Audio encryption]
4.15 APIC [#sec4.15 Attached picture]
4.11 COMM [#sec4.11 Comments]
4.25 COMR [#sec4.25 Commercial frame]
4.26 ENCR [#sec4.26 Encryption method registration]
4.13 EQUA [#sec4.13 Equalization]
4.6 ETCO [#sec4.6 Event timing codes]
4.16 GEOB [#sec4.16 General encapsulated object]
4.27 GRID [#sec4.27 Group identification registration]
4.4 IPLS [#sec4.4 Involved people list]
4.21 LINK [#sec4.21 Linked information]
4.5 MCDI [#sec4.5 Music CD identifier]
4.7 MLLT [#sec4.7 MPEG location lookup table]
4.24 OWNE [#sec4.24 Ownership frame]
4.28 PRIV [#sec4.28 Private frame]
4.17 PCNT [#sec4.17 Play counter]
4.18 POPM [#sec4.18 Popularimeter]
4.22 POSS [#sec4.22 Position synchronisation frame]
4.19 RBUF [#sec4.19 Recommended buffer size]
4.12 RVAD [#sec4.12 Relative volume adjustment]
4.14 RVRB [#sec4.14 Reverb]
4.10 SYLT [#sec4.10 Synchronized lyric/text]
4.8 SYTC [#sec4.8 Synchronized tempo codes]
4.2.1 TALB [#TALB Album/Movie/Show title]
4.2.1 TBPM [#TBPM BPM (beats per minute)]
4.2.1 TCOM [#TCOM Composer]
4.2.1 TCON [#TCON Content type]
4.2.1 TCOP [#TCOP Copyright message]
4.2.1 TDAT [#TDAT Date]
4.2.1 TDLY [#TDLY Playlist delay]
4.2.1 TENC [#TENC Encoded by]
4.2.1 TEXT [#TEXT Lyricist/Text writer]
4.2.1 TFLT [#TFLT File type]
4.2.1 TIME [#TIME Time]
4.2.1 TIT1 [#TIT1 Content group description]
4.2.1 TIT2 [#TIT2 Title/songname/content description]
4.2.1 TIT3 [#TIT3 Subtitle/Description refinement]
4.2.1 TKEY [#TKEY Initial key]
4.2.1 TLAN [#TLAN Language(s)]
4.2.1 TLEN [#TLEN Length]
4.2.1 TMED [#TMED Media type]
4.2.1 TOAL [#TOAL Original album/movie/show title]
4.2.1 TOFN [#TOFN Original filename]
4.2.1 TOLY [#TOLY Original lyricist(s)/text writer(s)]
4.2.1 TOPE [#TOPE Original artist(s)/performer(s)]
4.2.1 TORY [#TORY Original release year]
4.2.1 TOWN [#TOWN File owner/licensee]
4.2.1 TPE1 [#TPE1 Lead performer(s)/Soloist(s)]
4.2.1 TPE2 [#TPE2 Band/orchestra/accompaniment]
4.2.1 TPE3 [#TPE3 Conductor/performer refinement]
4.2.1 TPE4 [#TPE4 Interpreted, remixed, or otherwise modified by]
4.2.1 TPOS [#TPOS Part of a set]
4.2.1 TPUB [#TPUB Publisher]
4.2.1 TRCK [#TRCK Track number/Position in set]
4.2.1 TRDA [#TRDA Recording dates]
4.2.1 TRSN [#TRSN Internet radio station name]
4.2.1 TRSO [#TRSO Internet radio station owner]
4.2.1 TSIZ [#TSIZ Size]
4.2.1 TSRC [#TSRC ISRC (international standard recording code)]
4.2.1 TSSE [#TSEE Software/Hardware and settings used for encoding]
4.2.1 TYER [#TYER Year]
4.2.2 TXXX [#TXXX User defined text information frame]
4.1 UFID [#sec4.1 Unique file identifier]
4.23 USER [#sec4.23 Terms of use]
4.9 USLT [#sec4.9 Unsychronized lyric/text transcription]
4.3.1 WCOM [#WCOM Commercial information]
4.3.1 WCOP [#WCOP Copyright/Legal information]
4.3.1 WOAF [#WOAF Official audio file webpage]
4.3.1 WOAR [#WOAR Official artist/performer webpage]
4.3.1 WOAS [#WOAS Official audio source webpage]
4.3.1 WORS [#WORS Official internet radio station homepage]
4.3.1 WPAY [#WPAY Payment]
4.3.1 WPUB [#WPUB Publishers official webpage]
4.3.2 WXXX [#WXXX User defined URL link frame]
et j'ai pondu un code en perl qui me permet d'inscrire rapidement tous les tags.
#!/usr/bin/perl5
#
use MP3::Tag;
my $artist="TEST";
my $album="TESt";
my $release="TEST";
while (<*.mp3>)
{
#my $filename="test.mp3";
$mp3 = MP3::Tag->new($_);
$mp3->new_tag("ID3v2");
$mp3->{ID3v2}->add_frame("TPE1", $artist);
$mp3->{ID3v2}->add_frame("TIT3", $release);
$mp3->{ID3v2}->add_frame("TOWN", $artist);
$mp3->{ID3v2}->add_frame("TCOM", $artist);
$mp3->{ID3v2}->add_frame("TALB", $album);
$mp3->{ID3v2}->add_frame("PCNT","100");
$mp3->{ID3v2}->add_frame("POPM","traktor@native-instruments.de","255","100");
$mp3->{ID3v2}->add_frame("TPUB","antisocial");
$mp3->{ID3v2}->add_frame("TCON","experimental");
$mp3->{ID3v2}->add_frame("WCOM","http://www.antisocial.be");
$mp3->{ID3v2}->add_frame("WCOP","http://creativecommons.com");
$mp3->{ID3v2}->add_frame("WOAF","http://www.antisocial.be");
$mp3->{ID3v2}->add_frame("WOAR","http://www.antisocial.be");
$mp3->{ID3v2}->add_frame("WOAS","http://www.antisocial.be");
$mp3->{ID3v2}->add_frame("WPUB","http://www.antisocial.be");
$mp3->{ID3v2}->add_frame("TCOP","Creative commons by nc sa");
$mp3->{ID3v2}->add_frame("LINK","http://www.antisocial.be");
$mp3->{ID3v2}->add_frame("WXXX","http://www.antisocial.be");
$mp3->{ID3v2}->write_tag;
}
Par retro ingénierie, j'ai remarqué que Traktor inscrivait dans les mp3s, le nombre d'étoiles attribués par l'utilisateur
d'ou l'ajout du tag POPM","traktor@native-instruments.de","255","100"
ce qui donne 5 étoiles, joués 100 fois.
pareil pour le tag PCNT, ( ici 100 ) qui permet de placer directement les mp3s dans le top des plus écoutés ( bien sur cela dépend des technos utilisés par les logiciels ).
un seul regret, je n'ai jamais réussi à ajouter la pochette dans le mp3.
-
comment ca marche?, j ai pas compris.
-
redemarrage
ID3 est le nom des métadonnées pouvant être insérées dans un fichier audio comme par exemple MP3. Ces métadonnées permettent d'avoir des informations sur le contenu du fichier comme le titre, le nom de l'interprète, ou encore la date de sortie.
extrait de wikipedia
Par exemple le genre , l'année, le nom de l'artiste, le titre mais on a plein d'autres
( on a toutes celle que j'ai listé au dessus )
avec le langage perl, j'ai fait un script qui insére plein de tags dans les mp3s.
-
http://massid3lib.sourceforge.net/
avec ça tu peux rajouter la pochette.
-
avec le langage perl.
je vois pas ce que c est mais ca repond a ma question. je cherchais genre un soft ce pas un truc trop complexe.
merci youthman pour ton lien
-
foobar2000 a un tres bon éditeur de tag (il peut aussi retagger tes albums automatiquement après une requete sur freedb, faire du tag à la volée sur une sélection, exporter tes pls d'après les tags, etc etc etc), winamp doit avoir son add-on qui le fait aussi...
-
j'ai mis a jour mon logiciel, cela ajoute dans les mp3s l'image cover.jpg
#!/usr/bin/perl5
#
use MP3::Tag;
use IO::File;
sub binslurp {
my $file = shift;
my $fh = IO::File->new("<$file") || die "$file: $!\n";
local $/ = undef; # file slurp mode
my $data = <$fh>;
return $data;
}
sub mime_type($) {
my $filename = shift;
my $mime_type;
chomp $filename;
$mime_type = 'image/jpeg' if $filename =~ /\.jpe?g$/i;
$mime_type = 'image/png' if $filename =~ /\.png$/i;
return $mime_type;
}
my $artist="XXX";
my $album="XXXX";
my $picture_file="cover.jpg";
while (<*.mp3>)
{
$mp3 = MP3::Tag->new($_);
$mp3->new_tag("ID3v2");
$mp3->{ID3v2}->add_frame("TPE1", $artist);
$mp3->{ID3v2}->add_frame("TOWN", $artist);
$mp3->{ID3v2}->add_frame("TCOM", $artist);
$mp3->{ID3v2}->add_frame("TALB", $album);
$mp3->{ID3v2}->add_frame("PCNT","100");
$mp3->{ID3v2}->add_frame("POPM","traktor\@native-instruments.de","255","100");
$mp3->{ID3v2}->add_frame("TPUB",$artist);
$mp3->{ID3v2}->add_frame("TCON","experimental");
$mp3->{ID3v2}->add_frame("IPLS",$artist);
$mp3->{ID3v2}->add_frame("TCOP","creative commons");
$mp3->{ID3v2}->add_frame("TENC",$artist);
$mp3->{ID3v2}->add_frame("WCOM","XXX");
$mp3->{ID3v2}->add_frame("WCOP","http://creativecommons.com");
$mp3->{ID3v2}->add_frame("WOAF","XXX");
$mp3->{ID3v2}->add_frame("WOAR","XXX");
$mp3->{ID3v2}->add_frame("WOAS","XXX");
$mp3->{ID3v2}->add_frame("WPAY","XXX");
$mp3->{ID3v2}->add_frame("TCOP","Creative commons by nc sa");
$mp3->{ID3v2}->add_frame("WPUB","XXX");
$mp3->{ID3v2}->add_frame("WXXX","WEB","XXX");
$mp3->{ID3v2}->add_frame('APIC',
chr(0x0), # Text Encoding
mime_type($picture_file), # MIME Type
chr(0x3), # Picture Type
$picture_file, # Description
binslurp($picture_file) # Binary Data
);
$mp3->{ID3v2}->write_tag;
}
-
C'est sous quelle licence ?