Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Parallelisierer für EAC + Lame mp3 encoder (https://www.delphipraxis.net/133099-parallelisierer-fuer-eac-lame-mp3-encoder.html)

helgew 25. Apr 2009 14:39


Parallelisierer für EAC + Lame mp3 encoder
 
Liste der Anhänge anzeigen (Anzahl: 1)
Wer kennt es nicht: Eine Festplatte ist über den Jordan gegangen und die Musiksammlung steht nurnoch in Scheiben im Regal, die man nun alle noch einmal rippen muss. :wall:

Exact Audio Copy (EAC) ist kein schlechtes Programm, doch der Umstand, dass es in Version 0.99 noch zu keiner Parallelisierung von rippen und encoding fähig ist, kostet nicht nur Zeit sondern frustriert ungemein.

Das hier umgesetzte Tool ermöglicht ein wesentlich schnelleres rippen mit EAC dadurch, dass es den Encoder von EAC abkoppelt, sich um die Dateinamen kümmert und die übrigbleibende, temporäre Datei entsorgt. Alles funktioniert wie gewohnt, nur schneller, da bei einfachen Systemen gleichzeitig von CD gelesen und encodiert werden kann, bei Mehrkernsystemen mit schnellen Laufwerken laufen üblicherweise mehrere Encoderinstanzen.


Zur Verwendung:
lamerun.exe wird ins gleiche Verzeichnis wie lame.exe kopiert. Den Encoderparametern muss ein -loop hinzugefügt werden, die Ausgabedatei wird als Originaldateiname der .wav - Datei gesetzt.

Zitat:

-loop -V 0 --vbr-new --add-id3v2 --pad-id3v2 --ta "%a" --tt "%t" --tl "%g" --ty "%y" --tn "%n" %s %o
1. Schritt: lamerun -loop <parameterliste> ruft sich selbst auf, ohne auf ein Beenden der Applikation zu warten. Der Aufruf erfolgt als lamerun <parameterliste>
2. Schritt: Die neue Instanz von lamerun ergänzt den Dateipfad (gleicher Pfad wie jener der Quelldatei %s) und korrigiert die Dateiendung zu .mp3, mit der modifizierten Parameterliste wird lame.exe ausgeführt und gewartet, bis das encoding abgeschlossen ist. Danach wird die temporäre Datei %s gelöscht.




ich weiß, dass das noch alles sehr statisch ist. Begrüßenswerte Weiterentwicklungen wären:
- eigenständige Parameter für das aufzurufende Programm
- frei wählbare Datienamenserweiterung
- Ein Management für die Rückgabewerte, die momentan ignoriert werden.
- sollten zu viele Anwendungen laufen, kann es sein, dass ein encoderprozess nicht gestartet wird. Man sollte den Rückgabewert des Execute-Befehls noch prüfen, ggf. die Prozesspriorität zum Starten hochsetzen.

helgew 26. Apr 2009 18:22

Re: Parallelisierer für EAC + Lame mp3 encoder
 
Liste der Anhänge anzeigen (Anzahl: 1)
Neue Version


- jetzt mit der Erweiterung, dass man encoder und Dateierweiterung beliebig wählen kann
- jetzt exe-Name beliebig wählbar
- Prozessprioritätsproblem gelöst (hoffentlich keine überbleibenden .wav Dateien mehr)


Zitat:

-loop "lame.exe" "mp3" -V 0 --vbr-new --add-id3v2 --pad-id3v2 --ta "%a" --tt "%t" --tl "%g" --ty "%y" --tn "%n" %s %o


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:57 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz