Archiv verlassen und diese Seite im Standarddesign anzeigen : Mp3 -> mp3 mit lame: Id3-Tags 'mitnehmen'?
Hallo zusammen
Erstmal: Erstaunt hats mich auch, aber auf dieses Problem scheint hier noch niemand gestossen zu sein. (Sufu "lame id3" gibt 1 unnützes Resultat). Auch in der Manpage von lame bin ich nicht fündig geworden.
Nunja, das Problem ist schnell erklärt. Ich will meine Mp3s von 320 kbit/s teilweise runterkodieren auf 128 kbit/s. Das geht auch ganz prima mit lame (zB. lame --preset 128 filename.mp3) Leider kommen die Id3-Tags nicht mit. Wie gesagt steht dazu nichts in der Manpage. Erstellt wurden die Mp3s mit Grip, der auch lame benutzte, der die Id3-Tags jedoch wahrscheinlich aus dem Netzt holte und per --tt --ta --tl usw. hinzufügte. Das stimmt mich zusätzlich skeptisch. Meine Frage also: Gibt es eine Möglichkeit, per lame Id3-Tags quasi "mitzukodieren"?
Thx & Gruss
Joedl
hallo,
so weit ich weiss kann lame das nicht. aber wenn du die id-tags der quell-mp3s auslesen kannst, könntest du dir ein bash-script basteln, das das ganze automatisch erledigt.
felix
Oke, danke für die Info. Werde mich mal umschauen, wie man das machen kann. Oder weiss etwa jemand gerade, wie man das macht?
Achja, wenn wir schon beim Thema lame und bash sind: Ich wollte ein Skript erstellen, welches alle Dateien aus einem Verzeichnis ausliest, und sie einzeln kodiert. Das klingt vielleicht trivial, ist es aber nicht ganz, wenn die Dateinamen Leerzeichen enthalten. Dann wird nämlich nach jedem Leerzeichen (allgemein nach jedem Whitespace) und nicht nur nach jedem File eine neuer Listeneintrag fürs Skipt generiert.
Gruss
Joedl
Hi!
Schau dir da mal mein any2mp3 (http://www.pfeifferpascal.de/any2mp3)-Skript an. Das Skript erwartet die einzelnen Dateien als Argument und encodiert sie anschließend unter Beibehaltung von Interpret und Titel neu.
Gruß
fuffy
edit: URL aktualisiert
Ok, vielen Dank für die Antwort. Werde das Skript auf jeden Fall checken. :)
Gruss
Raphael
Hi!
Schau dir da mal mein any2mp3 (http://www.pascal-pfeiffer.de/fuffy/nopaste.php/6)-Skript an. Das Skript erwartet die einzelnen Dateien als Argument und encodiert sie anschließend unter Beibehaltung von Interpret und Titel neu.
Gruß
fuffy
hab dein sript in '~/bin' aufgenommen, allerdings könnte das ein 'any2mp3 --help' oder 'any2mp3 -h' gebrauchen.
felix
converts various audio formats to fit for my portable mp3 stick player
Hallo fuffy. Anregung für eine Abänderung/(Vebesserung?) deines Skriptes: Es soll die Dateien nicht in ein vorgegebenes Format inkl. Bitrate kodieren, sondern der User soll dem Skript bspw. lame-Argumente übergeben können. Oder ist das zu kompliziert.
Leider fühle ich mich noch nicht ganz fähig, einen solchen Eingriff in deinem Skript vorzunehmen, sonst könnte ich das natürlich selber versuchen. ;)
Gruss
joedl
Hi!
hab dein sript in '~/bin' aufgenommen, allerdings könnte das ein 'any2mp3 --help' oder 'any2mp3 -h' gebrauchen.
Ja, ich weiß. Es war bisher auch nur für mich persönlich gedacht. Werd mich wohl mal dran setzen.
Anregung für eine Abänderung/(Vebesserung?) deines Skriptes: Es soll die Dateien nicht in ein vorgegebenes Format inkl. Bitrate kodieren, sondern der User soll dem Skript bspw. lame-Argumente übergeben können.
Das ist bereits möglich. Setz einfach die Umgebungsvariable LAMEOPTS entsprechend.
Gruß
fuffy
falls du dein script weiterentwickeln solltest, veröffentliche es doch hier. währe jedenfalls dran interessiert.
felix
falls du dein script weiterentwickeln solltest, veröffentliche es doch hier. währe jedenfalls dran interessiert.
felix
Natürlich wird es das machen, wir sind hier ja schliesslich eine Open-Source-Community ;)
Hi!
Natürlich wird es das machen, wir sind hier ja schliesslich eine Open-Source-Community ;)
Hehe.
any2mp3 (http://www.pfeifferpascal.de/any2mp3) mit '--help'.
Gruß
fuffy
Hallo fuffy
Super Sache mit dem "--help" ;)- Ich für meinen Teil bin dran, mein kleines Skript um die ID3-Tag-schreib Funktionen zu erweitern. Dabei habe ich mich natürlich in grösserem Stil bei deinem Code bedient. Aber das ist ja erlaubt. Nun, etwas begreife ich nicht ganz:
Dies ist gut nachvollziehbar:
TITLE=$(id3v2 --list "$FILE" | grep TIT2 | cut -c 44-)
Allerdings habe ich bemerkt, dass danach $TITLE noch nicht gesetzt ist. Darum habe ich die folgende Zeile aus deinem Sktipt kopiert, und dann gings. Nur begreife ich diese Zeile nicht, kannst du sie vielleicht erklären?
[ "$TITLE" ] || TITLE=$(id3v2 -l "$FILE" | grep '^Ti' | cut -b 10-39)
EDIT: Vielleicht sollte ich mich präziser ausdrücken. Was mir nich klar ist, ist die [ "$TITLE" ] Schreibweise. Zudem: Hat || die Bedeutung eines logischen oders?
Gruss
Joedl
Allerdings habe ich bemerkt, dass danach $TITLE noch nicht gesetzt ist. Darum habe ich die folgende Zeile aus deinem Sktipt kopiert, und dann gings. Nur begreife ich diese Zeile nicht, kannst du sie vielleicht erklären?
[ "$TITLE" ] || TITLE=$(id3v2 -l "$FILE" | grep '^Ti' | cut -b 10-39)
Mit [ "$TITLE" ] wird überprüft ob die Variable TITLE gesetzt ist. Ist dies nicht der Fall (weil eine Datei z.B. kein ID3v2 Tag enthält), wird versucht die Variable mit dem Wert des ID3v1 zu setzen.
Das nach der ersten Deklaration die Variable noch nicht gesetzt ist, könnte also daran liegen, dass deine MP3s keinen ID3v2-Tag haben.
Das ist eben das seltsame daran. Wenn ich das Kommando in der Shell ausführe, wird das korrekte ID3-Tag ausgegeben. Nur im Skript gehts dann nicht.
Aber danke für die Info.
Gruss Joedl
EDIT: Problem gelöst.
Hi!
Dabei habe ich mich natürlich in grösserem Stil bei deinem Code bedient. Aber das ist ja erlaubt.
Nur unter Beachtung der GNU GPL in der Version 2. ;)
EDIT: Problem gelöst.
Worin bestand das Problem denn?
Hab meinem Skript inzwischen Kommentare hinzugefügt.
Außerdem ist jetzt das permanente Setzen der Variablen über eine Datei namens ~/.any2mp3.conf möglich.
Gruß
fuffy
Hallo,
habe dafür ein kleines qt-Programm geschrieben, das auf lame und id3cp basiert.
finden kann man es hier: http://www.osteronline.de/download.html
Also ich wäre für Feedback dankbar, wenn das mal jemand ausprobieren möchte =)
Worin bestand das Problem denn?
Ich habe den Mechanismus nicht begriffen, wann welche der zwei ID3-Tag-Abfragungsmöglichkeiten zum Einsatz kommen. Auf der Kommandozeile habe ich dann gesehen, es sich um die Unterscheidung zwischen ID3v1 und ID3v2 -Tags handelt.
Also ich wäre für Feedback dankbar, wenn das mal jemand ausprobieren möchte =)
Erste schnelle Eindrücke. Das Programm trägt sich nach rpm-Instlation nicht in ein Verzeichnis ein, das sich in der (Standard-) $PATH befindet. Gut, das liegt vielleicht daran, dass ich Gnome benutze. Desweitern passt sich die Oberfläche nicht ans Qt-Design an, welches ich eingestellt habe.
Achja, getestet habe ich es noch nicht ;)
Gruss JOedl
Das mit der Oberfläche kann ich hier nicht nachvollziehen, das Path-Problem kann daran liegen, dass ich mich nicht genug mit der RPM-Generierung auskenne.
Aber ansonsten? Für die Zukunft ändere ich noch die Eigenart, dass man nur komplette Verzeichnisse umkodieren kann.
Hallo oster
Mal ein bisschen getestet. Scheint alles prima zu funktionieren. Nettes kleines Tool ;)
Gruss Joedl
thx, vielleicht hab ich auch irgendwann mal Zeit und Lust, es weiterzuentwickeln ;)
Wäre natürlich super ;). Aber nur nichts übereilen, es gibt schliesslich wichigeres.
Immerhin erstetzt das Tool schon jetzt mein etwas mühsames Shell-Skript.
Das QT-Tool ist spitze! Danke vielmals, hier ist es schon heftig im Einsatz :)
Danke, schön zu hören dass man mal nicht nur was für die Tonne oder sich selber programmiert hat :)
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.