Ich möchte viele WAV-Dateien mit LAME und Automator in MP3-Dateien konvertieren. Ich benötige ein Skript, mit dem ich mit der rechten Maustaste auf einen Ordner klicken und alle WAV-Dateien im Ordner in MP3-Dateien konvertieren kann. Ich konnte ein Skript zum Konvertieren einer einzelnen Datei finden, weiß aber nicht, wie ich es ändern soll, damit ich viele Dateien mit einem einzigen Klick konvertieren kann.
Ich habe ein Skript verwendet, das ich hier für einzelne Dateien gefunden habe. Hier ist eine ähnliche Frage, aber anstatt "Run Applescript" zu verwenden, wird "Run Shell Script" verwendet. Ich habe versucht, LAME-Parameter zwischen "do" und "done" zu ersetzen, aber es ist mir nicht gelungen, etwas zu konvertieren.
Wie kann ich also einen Ordner voller WAV-Dateien in MP3-Dateien konvertieren? Für mich spielt es keine Rolle, ob Applescript oder Shell Script in Automator verwendet werden, wenn beide Möglichkeiten möglich sind.
Antworten:
Der Automator "hängt" leider beim Versuch, den LAME-Encoder zu verwenden. Es ist auch nicht effizient oder ratsam, einen Multithread-Prozess als Automator-Service zu verwenden. Für Aufgaben wie diese ist es am besten, entweder ein einfaches Skript auszuführen oder eine alternative Methode zu verwenden.
Das folgende Skript codiert in 3 Sekunden eine 20-MB-WAV in MP3 ! (bei höchsten Qualitätseinstellungen)
Zum Installieren, Herunterladen und Öffnen des Terminals:
sudo install encode-mp3 /usr/local/bin
Navigieren Sie zur Verwendung in einen gewünschten Konvertierungsordner und geben Sie Folgendes ein:
Dadurch werden Ihre WAV-Dateien in MP3 codiert
Konvertieren Sie .wav in .mp3 | LAME Encoder Shell Script [md5: 72d4e24f14ea9139136900f2c4281a7f]
quelle
In der Aktion "Shell-Skript ausführen" von Automator können Sie Folgendes verwenden (ändern Sie "Eingabe übergeben" in "Als Argumente"):
Dadurch werden alle WAV-Dateien im ausgewählten Ordner einschließlich der Unterordner gefunden (und alle Nicht-WAV-Dateien übersprungen). Wenn Sie nicht möchten, dass es in Unterordnern angezeigt wird, können Sie Folgendes ändern:
Natürlich würden Sie
-V 0 -q 0
zu denlame
Optionen wechseln , die Sie bevorzugen.Wenn Sie benachrichtigt werden möchten, wenn dies erledigt ist, können Sie einen
say
Befehl hinzufügen, eine Aktion "Growl-Benachrichtigung anzeigen" (wenn Sie Growl installiert haben) oder einenbeep
Befehl in einer Aktion "AppleScript ausführen" verwenden.Unten sehen Sie einen Screenshot davon, wie mein Workflow mit dem zusätzlichen
say
Befehl und der Growl-Benachrichtigung aussieht . Beachten Sie auch, dass ich die Option "Dienst erhält ausgewählt" oben in "Ordner" geändert habe (standardmäßig "Text").quelle
find
Befehl, müssen Sie nicht die verwendenfor
,do
oderdone
Befehle überhaupt nicht . Diese Befehle bilden eine Schleifenanweisung, um jede Datei im Ordner zu verarbeiten. Derfind
Befehl liefert ähnliche Ergebnisse, wird jedoch nurlame
für Dateien mit der Erweiterung .wav ausgeführt. Ich werde die Antwort bearbeiten und einen Screenshot von Automator hinzufügen.Der Thread ist etwas aktualisiert, aber für diejenigen, die ihn nützlich finden könnten,
Ich habe das hier beschriebene Automator-Setup verwendet und konnte vermeiden, dass es mit der -S-Option von lame hängen bleibt. Mein Befehl "Shell-Skript ausführen" sieht also folgendermaßen aus:
(Außerdem ist mein lahmer Manager an einem anderen Ort)
Die Option -S deaktiviert den Lames-Fortschrittsbericht
quelle