eyeD3 Genre string cannot be parsed with '^[A-Z 0-9+/\-\|!&'\.]+*$'
Lässt man musicbrainz in Verbindung mit lastfmplus die Tags ausfüllen, kommt es in der Regel zu mehreren Genres, die durch ; getrennt sind. ; ist Konfigurationsstandard bei lastfmplus. zB mit Exiftool abgefragt: [ID3] - Title : Moment [ID3] - Artist : Aziza Mustafa Zadeh [ID3] - Track : 12/18 [ID3] - Album : Audio's Audiophile, Volume 1: Vocals and Instruments [ID3] - Recording Time : 1993 [ID3] - Genre : Jazz; Piano; Fusion; World [ID3] - User Defined Text : (MusicBrainz Album Type) compilation [ID3] - User Defined Text : (MusicBrainz Album Artist Id) 89ad4ac3-39f7-470e-963a-56509c546377 [ID3] - User Defined Text : (MusicBrainz Artist Id) 98b1796d-a888-4a69-9c2a-86bfff3156f1 [ID3] - Original Release Time : 1972 [ID3] - Comment : Disc-ID 0e113912 [ID3] - Band : Various Artists [ID3] - Comment : (Songs-DB_Custom1) 1980S [ID3] - Comment : (Songs-DB_Custom2) Female Vocalists; Female [ID3] - User Defined Text : (ALBUMARTISTSORT) Various Artists [ID3] - Performer Sort Order : Zadeh, Aziza Mustafa [ID3] - User Defined Text : (MusicBrainz Album Id) 797916e6-c244-4c2a-ba57-817c0eb01ecc [ID3] - Grouping : Rock [ID3] - User Defined Text : (MusicBrainz Album Release Country) DE [ID3] - User Defined Text : (MusicBrainz Album Status) official [ID3] - Tagging Time : 2009-06-27T21:25:21 [ID3] 0x0003 Title : Moment [ID3] 0x0021 Artist : Aziza Mustafa Zadeh [ID3] 0x003f Album : Audio's Audiophile, Volume 1: [ID3] 0x005d Year : 1993 [ID3] 0x0061 Comment : [ID3] 0x007f Genre : None eyeD3 bringt dann die Meldung: Genre string cannot be parsed with '^[A-Z 0-9+/\-\|!&'\.]+*$' Kennt wer ein Tool, dass per Script v2.4-Tags _schreiben_ kann bzw. zu idv2.4 konvertieren kann _und_ mit UTF-8 klarkommt? (@David: Perl will in letzter Zeit auch nicht mehr, so wie es schon funktioniert hat und ich suche nach einer Lösung.) Mit welchen Tools kann man obigen "User Defined Text" _ändern_, picard schreibt die ja automatisiert hinein? Speziell "Grouping" ist oft sehr daneben. Al -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Am Sam, 27 Jun 2009, Al Bogner schrieb:
Lässt man musicbrainz in Verbindung mit lastfmplus die Tags ausfüllen, kommt es in der Regel zu mehreren Genres, die durch ; getrennt sind. ; ist Konfigurationsstandard bei lastfmplus. [..] [ID3] - Genre : Jazz; Piano; Fusion; World [..] eyeD3 bringt dann die Meldung:
Genre string cannot be parsed with '^[A-Z 0-9+/\-\|!&'\.]+*$'
Du könntest einfach das ';' im Genre erlauben...: (vor dem site-packages steht der jew. python-Pfad) --- site-packages/eyeD3/tag.py~ Mon Feb 2 04:54:52 2009 +++ site-packages/eyeD3/tag.py Mon Jun 29 00:27:16 2009 @@ -1543,7 +1543,7 @@ # Non standard, but witnessed. # Match genre alone. e.g. Rap, Rock, blues, 'Rock|Punk|Pop-Punk', etc - regex = re.compile("^[A-Z 0-9+/\-\|!&'\.]+\00*$", re.IGNORECASE) + regex = re.compile("^[A-Z 0-9+/\-\|!&'\.;]+\00*$", re.IGNORECASE) if regex.match(genreStr): self.setName(genreStr); return; Dann einmal als root eyeD3 DATEI aufrufen, damit das tag.pyc aus dem tag.py neu erstellt wird.
Kennt wer ein Tool, dass per Script v2.4-Tags _schreiben_ kann bzw. zu idv2.4 konvertieren kann _und_ mit UTF-8 klarkommt? (@David: Perl will in letzter Zeit auch nicht mehr, so wie es schon funktioniert hat und ich suche nach einer Lösung.)
Kenn ich so keines, und ich hab's nicht vergessen.
Mit welchen Tools kann man obigen "User Defined Text" _ändern_, picard schreibt die ja automatisiert hinein? Speziell "Grouping" ist oft sehr daneben.
Hä? ;) (bin wohl schon zu müde) HTH, -dnh --
Mit "T" wie "Timeo danaos et dona ferentes"? "Quidquid Ihr eat, timeo danone et donuts ferenghi!" -- V. Gringmuth und KK in darw -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Am Montag 29 Juni 2009 00:47:26 schrieb David Haller: Hallo David,
eyeD3 bringt dann die Meldung:
Genre string cannot be parsed with '^[A-Z 0-9+/\-\|!&'\.]+*$'
Du könntest einfach das ';' im Genre erlauben...:
Verstehe ich es also richtig, dass die Meldung auf das _Schreiben_ keinen Einfluss hat?, sondern nur eine Warnung ist? Es werden also alle anderen Tags geschrieben und Genre ignoriert, d.h das bestehende Genre-Feld bleibt unangetastet? Meine Tests sehen danach aus, aber vielleicht entdeckst du beim Lesen der Sourcen etwas anderes. Die Fehlermeldung an sich ist mir egal, solange es nur eine optische Sache ist.
(vor dem site-packages steht der jew. python-Pfad)
--- site-packages/eyeD3/tag.py~ Mon Feb 2 04:54:52 2009 +++ site-packages/eyeD3/tag.py Mon Jun 29 00:27:16 2009 @@ -1543,7 +1543,7 @@
# Non standard, but witnessed. # Match genre alone. e.g. Rap, Rock, blues, 'Rock|Punk|Pop-Punk', etc - regex = re.compile("^[A-Z 0-9+/\-\|!&'\.]+\00*$", re.IGNORECASE) + regex = re.compile("^[A-Z 0-9+/\-\|!&'\.;]+\00*$", re.IGNORECASE) if regex.match(genreStr): self.setName(genreStr); return;
Dann einmal als root eyeD3 DATEI aufrufen, damit das tag.pyc aus dem tag.py neu erstellt wird.
Soll ich das in der eyeD3-ML zitieren? Mir scheint die ML ist aber tot. Ich habe sie abonniert, aber es kommt nie was rein.
Kennt wer ein Tool, dass per Script v2.4-Tags _schreiben_ kann bzw. zu idv2.4 konvertieren kann _und_ mit UTF-8 klarkommt? (@David: Perl will in letzter Zeit auch nicht mehr, so wie es schon funktioniert hat und ich suche nach einer Lösung.)
Kenn ich so keines, und ich hab's nicht vergessen.
Ich gebe hier eine kurze Antwort zu Problemen mit mp3-Tags, die ich mit David privat diskutiere, da ich denke, dass es von allgemeinem Interesse ist. Mittlerweile glaube ich, mp3-Tags sind ein "Fass ohne Boden". Vermutlich ist es besser, auf bestimmte Regeln zu achten. Leider kann es passieren, dass nach einer Aktualisierung mit musicbrainz / picard Probleme entstehen. Es gibt folgende Längenproblematik: http://www.id3.org/iTunes The major problem with the implementations is that the 2.4 support gets the frame length wrong when writing frames > 127 bytes. It treats the frame lengths as not sync-safe integers (as 2.3 did) rather than sync-safe integers (as 2.4 specifies). Exiftool sollte diese Problematik ab der nächsten Version berücksichtigen, wie mir der Autor mitteilte. 90% meiner mp3-Tag-Probleme konnte ich durch Abspeichern in Amarok in den Griff kriegen. Alternativ half eyeD3 --to-v2.4 "$INP" Die restlichen Fälle brauchen dann etwas Spürsinn, woran es liegen könnte. Sehr lange Titel kürzt man am besten und manchmal sahen die Tags völlig normal aus und auch im Kommentarfeld stand nicht übermäßig viel, allerdings waren UTF8-Zeichen aus Russisch, Griechisch, Arabisch, Japanisch, etc. bei Artist, Album oder Titel vorhanden, nicht aber im Kommentar. (Ich habe Picard so eingestellt, dass die Originalsprache erhalten bleibt). Es half dann den Kommentar zu löschen um alle Metadaten auslesen zu können. So etwas nervt natürlich, wenn man ein Script viele mp3-Dateien zur Umbenennung des Dateinamens abarbeiten lässt und das Skript immer wieder bei Problemdateien hängen bleibt. Ich denke daher David, wir stellen diese "mp3/Perl-Thema" zurück und tun bei Video weiter, wenn du Lust und Zeit hast. Ich habe mir ein neues Bash-Script gemacht, bin Kompromisse eingegangen und ich bin zufrieden damit. Die Groß- Kleinwandlung mit den Transliterationen mache ich nun mit sed und Ersetzen, anstatt mit tr und Zeichensatz wechseln wie früher. SIcher ist das mit Perl eleganter lösbar, bringt mir aber nichts, wenn ich nach einem Update nicht weiter weiß, warum es nicht mehr funktioniert und ich anstehe. Eben hat ein Imagemagick-Update mein anderes Script (nur) am 64bit-Rechner lahmgelegt. Siehe Thread nebenan.
Mit welchen Tools kann man obigen "User Defined Text" _ändern_, picard schreibt die ja automatisiert hinein? Speziell "Grouping" ist oft sehr daneben.
Hä? ;) (bin wohl schon zu müde)
David ganz einfach, dieses "Grouping-Feld" wird von Picard geschrieben und passt einfach oft nicht. Das wäre genau das Feld, mit dem ich meine CD- Sammlung unabhängig vom Genre sortieren könnte. Aziza Mustafa Zadeh bei Rock zu gruppieren ist schon sehr schräg. Genre: Jazz; Piano; Fusion ist ok. Ich würde sie entweder in eine Gruppe Jazz oder Worldmusic geben. Al -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
participants (2)
-
Al Bogner
-
David Haller