Ich werde demnächst einige meiner TV-Aufnahmen umwandeln, und damit ich nicht alles von Hand machen muss, wollte ich mir eine kleine Batch-Datei basteln. Das ist nach 4 Stunden dabei rausgekommen:
for %%I in (*.mpg) do ( "DGindex.exe" -AIF=[%%I] -IA=4 -YR=1 -OM=1 -TN=80 -OFD=[%%I] -EXIT ) for %%I in (*.ac3) do ( "eac3to.exe" "%%I" 1: "%%I.wav" -down2 -simple ) for %%I in (*.wav) do ( "lame.exe" "%%I" "%%I.mp3" -h -b 192 ) del *.ac3 del *.txt del *.d2v del *.wav
Manch einer mag jetzt die Hände über den Kopf zusammen schlagen, aber wie gesagt, ich habe vor 4 Stunden mit dem Thema überhaupt erst angefangen...
Was soll das Script tun?
In der ersten Schleife werden per DGIndex die mpg-Dateien in einen m2v- und ac3-Stream geteilt. Danach wird per eac3to das AC3-File in ein Wav-File gewandelt (ich weiß, das könnte ich direkt in DGIndex machen, aber beim decodieren in Wav werden keine Delay-Infos in den Dateinamen geschrieben, und die brauche ich später beim umwandeln). Zu guter letzt wird das Wav-File in ein MP3-File umgewandelt. Vor der Umwandlung soll noch ein kommandozeilenbasierter Normalizer kommen, aber den habe ich noch nicht gefunden.
Zu guter letzt sollen alle überflüssigen Dateien gelöscht werden.
Das klappt im großen und ganzen schon recht gut. Ich habe nur ein Problem: In jeder for-Schleife wird nach einer bestimmten Dateiendung gesucht und der Dateinahme zur weiteren Verwendung in eine Variable gespeichert. Das Problem ist nun dass der Dateiname (incl. Endung) jetzt auch zum abspeichern benutzt wird. So wird nach jeder weiteren Verarbeitung aus
datei.mpg
datei.mpg.ac3
datei.mpg.ac3.wav
und schließlich
datei.mpg.ac3.wav.mp3
Das ist natürlich nicht Sinn der Sache.
Gibt es eine Möglichkeit, die Endung vom Dateinahmen zu entfernen, und nur mit "Datei" weiter zu arbeiten? denn dann würde ich
datei.mpg -->
datei.ac3 -->
datei.wav -->
datei.mp3
rausbekommen.
Und eine weitere Frage wäre da noch:
Bis jetzt wird ja im Grunde alles noch nach Datentyp bearbeitet, also zuerst wird alles demuxed, dann alle ac3-Files in wav, wav normalisieren, und dann alle Wav-Files in mp3. Wäre es evt. möglich das nach File zu bearbeiten? Also dass zuerst ein mpg-File demuxed wird, dann das daraus resultierende ac3-File in Wav gewandelt, dass dann normalisiert und anschließend in mp3 umgewandelt wird und dann erst das nächste mpg-File drann kommt? Ich hätte da nämlich noch eine Idee und dafür wäre diese rangehensweise vielleicht besser. Hierfür müsste jeder Dateiname aber in eine eigene Variable gespeichert werden...
Wäre klasse wenn mir da jemand helfen könnte...
Besten dank
Lapje
Dieser Beitrag wurde von Lapje bearbeitet: 26. Juni 2011 - 02:57

Hilfe
Neues Thema
Antworten

Nach oben


