PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mp3s rekursiv im Verzeichnisbaum in ogg konvertieren



mave2k3
09.04.04, 08:08
Hallo

Ich habe ein Problem und zwar will ich meine mp3 Sammlung mal ein bischen grössenmäßig abspecken da viele verschiedene bitraten . An sich kein Problem wenn da nicht die Masse der Dateien mir da ziemliche Probleme bereiten.

Nun denken einige sicher: "das geht doch mit ner Schleife". Ok das hab ich auch versucht nur leider konvertiert die immer nur Dateien im angegebenen Verzeichnis nicht aber in den Subfiles.

Ich nutze dafür eine Schleife wie diese und dacht auch schon an die Möglichkeit die Datein mit find in die Schleife einzubinden. Das wollte mir aber irgendwie nicht gelingen.

cd /mp3
for a in *.mp3; do
lame --mp3input -b 128 $a mp3/$a
done


Das Verzeichnis hat nur zig Unterverzeichnisse geordnet nach Interpret Style usw weswegen es hier keinen Sinn macht es mit dieser Schleife zu versuchen da würde ich noch nächstest Jahr dran sitzen. Noch dazu hört die Schleife nach dem 6 -7 mal auf weiter zu encodieren bzw lame tut das. dachte das läge an einer mp3 also die letzte mal gelöscht trotzallem ging es immer noch nicht.

Distri: Suse 9.0
Sondkarte: cl Audigy 2 platinum
Sound: alsa
Kernel: 2.4

Wäre sehr froh wenn mir jemand in mein mp3 Sammlungs wirwar mal Ordnung mit ner vernünftigen Schleife bringen könnte

Columbo0815
09.04.04, 08:41
Hallo,

seh dir mal unser Partnerforum http://mrunix.de an. Dort kann dir bei solchen Problemen sicher weitergeholfen werden.

Gruß Columbo

geronet
09.04.04, 08:43
Probiers doch mal irgendwie so

for a in $(find -name *.mp3); do

core
09.04.04, 15:10
Vielleicht so:
cd mp3
mkdr mp3-neu
find . -type f -name *.mp3 -exec lame --mp3input -b 128 "{}" "./mp3-neu/`basename {}`" \;

king_of_R&R
09.04.04, 21:47
kann Audacity nicht auch sowas?


gruß

King_of_R&R

mave2k3
10.04.04, 01:42
so hier mal mein Feedback zur Lösungs-Methode von core

Geht ganz gut. Finden tut er die mp3s nur kommt als Echo immer nur "can't init outfile"

Can't init outfile './mp3-neu/./House of Pain - Fine Malt Lyrics /House of Pain - Fine Malt Lyrics - 02 - Jump Around.mp3'

Hab deinen Befehlskette nochmal genau angeschaut aber konnte auch keinen Fehler finden warum er die Dateien nicht erstellt.

chmod ist auf 777 das sollte kein Problem sein oder ist es vielleicht sogar lame der das nicht will naja ich bin auf jedenfall des Ausprobierens müde und hoffe einer hat dafür die Lösung.

gruss mave

core
10.04.04, 12:48
Ja, da ist dieses
`basename {}`

Problem ist, dass das zu früh evaluiert wird.
Versuch mal
find . -type f -name *.mp3 -exec lame --mp3input -b 128 "{}" "./mp3-neu/\`basename {}\`" \;

Gruss.

EDIT: Nein, das geht auch nicht.........
Zur erklärung, {} enthält den pfad und den dateinamen.
er kann nun das file nicht erstellen, weil es das verzeichnis nicht gibt.

also du könntest das umgehen indem du die dateien nicht in ein neues verzeichnis schreibst..


find . -type f -name *.mp3 -exec echo lame --mp3input -b 128 "{}" "{}.neu" \;

Dann erstellt der Dateien wie bla -bla.mp3.neu
anschliessend müsstest du halt diese aussortieren und umbenennen.
(geht auch mit geschickter befehlseingabe......)

taylor
10.04.04, 12:52
http://freshmeat.net/projects/mp32ogg/

Phlogiston
10.04.04, 14:48
konvertiers doch in ogg, dann kannst du noch ein bischen bitrate sparen ;)

Wie sieht das aus, wenn mann ne ganze Sammlung konvertiert? Braucht das apspielen von ogg eigentlich mehr CPU als das von mp3?

greets

EDIT: Nun ich werde das mal lassen:

Man lese ;) (http://www.vorbis.com/faq.psp#transcode)

:cool:

mave2k3
10.04.04, 15:27
So abschliessend ein Dank an core dein

cd /mp3
find . -type f -name *.mp3 -exec lame --mp3input -b 128 "{}" "{}.neu" \;

funktioniert prächtig. Hätte ich Ochse auch selber drauf kommen können das der keine Dateien in nicht vorhandene Verzeichnisse schreibt bzw schreiben kann ;)

nochmals danke

Gruss mave

PS: das mit ogg is ja schön und gut nur nicht jedes Gerät (autoradio dvd etc) kann ogg abspielen.