Batch-konvertieren.wav zu mp3 und ogg?

Ich habe ein paar hundert .wav-Dateien, die ich in das OGG-und MP3-Format konvertieren muss. Gibt es eine Möglichkeit, dies im Batch entweder über Audacity oder über ein anderes Befehlszeilentool zu tun?

Author: Community, 2012-01-02

5 answers

Über eine Unix-ähnliche Befehlszeile (Linux, OSX usw.) kann ffmpeg wie folgt verwendet werden:

for f in *.wav; do ffmpeg -i "$f" -c:a libmp3lame -q:a 2 "${f/%wav/mp3}" -c:a libvorbis -q:a 4 "${f/%wav/ogg}"; done

Dadurch wird jedes WAV in einem Verzeichnis in ein MP3 und ein OGG konvertiert; Beachten Sie, dass es Groß-und Kleinschreibung berücksichtigt (der obige Befehl konvertiert jede Datei, die endet .wav ist, aber nicht .WAV). Wenn Sie eine Groß-und Kleinschreibung Version wünschen:

for f in *.{wav,WAV}; do ffmpeg -i "$f" -c:a libmp3lame -q:a 2 "${f%.*}.mp3" -c:a libvorbis -q:a 4 "${f%.*}.ogg"; done

Um jede WAV in einem Verzeichnis rekursiv zu konvertieren (dh jede WAV im aktuellen Verzeichnis und alle Verzeichnisse im aktuellen Verzeichnis), können Sie verwenden find:

find . -type f -name '*.wav' -exec bash -c 'ffmpeg -i "$0" -c:a libmp3lame -q:a 2 "${0/%wav/mp3}" -c:a libvorbis -q:a 4 "${f/%wav/ogg}' '{}' \;

(In Bezug auf Dennis für seine Antwort hier für die Suche nach mir eine funktionierende Implementierung von find mit ffmpeg)

Verwenden Sie für die Groß-und Kleinschreibung Suche mit find -iname anstelle von -name.

A note on -q:a: für MP3, die Qualität Palette ist 0-9, wobei 0 die beste Qualität, und 2 ist gut genug für die meisten Menschen für die Umwandlung von CD-audio, für OGG, es ist 1-10, wobei 10 die beste und 5 entspricht CD-Qualität für die meisten Menschen.

 25
Author: evilsoup,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-03-20 10:17:42

Sie könnten foobar2000 mit Encodern für ogg und mp3 verwenden. Ich glaube, Sie können Encoder bei rarewares finden.

 3
Author: Nils Magne Lunde,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-01-02 20:39:51

Sieht so aus, als könnten Sie oggenc verwenden, um WAV in OGG zu konvertieren, und Sie können lame verwenden, um WAV in MP3 zu konvertieren.

 2
Author: Christian Mann,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-01-02 20:34:07

Download ffmpeg von unten link und installieren es: http://ffmpeg.zeranoe.com/builds/

Erstellen und führen Sie eine Batchdatei mit folgenden Befehlen aus:

echo converting *.wav to *.ogg 
mkdir ..\Ogg
for /r %%i in (*) do ffmpeg -i %%i -acodec libvorbis ..\Ogg\%%~ni.ogg

Alle konvertierten *.ogg-Dateien werden kopiert ..\Ogg-Verzeichnis.

 2
Author: Sathya,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2015-06-02 11:26:51

Ich habe einige Änderungen an einer BAT-Datei vorgenommen, die ich auf SO gefunden habe, es befasst sich jetzt mit Leerzeichen in Dateinamen, wie dies häufig bei Songs name der Fall ist. diese bat-Datei konvertieren .wav zu. mp3, mit dem VLC-Befehlszeilentool. Sie können jedoch in die Formate wma - > mp3 usw. wechseln...

@echo off
chcp 65001
SETLOCAL ENABLEDELAYEDEXPANSION

for /f "delims=" %%f IN ('dir /b /s "YOUR_DISK:\Path\To\Your Music\That May contain Spaces\*.wav"') do (
set file1=%%~nf.mp3
echo "file :" !file1!
set fic1=%%f
echo "file : " !fic1!

CALL "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe"  "!fic1!" --sout="#transcode{vcodec=none,acodec=mp3,ab=320,channels=2,samplerate=48000}:std{access=file{no-overwrite},mux=mp3,dst="""!file1!"""}" vlc://quit
)

echo .
echo conversion finished
pause

Chcp Ändern Sie die Codierung (um mit akzentuierten Zeichen umzugehen.) ab ist die bitrate hier 320

 2
Author: Tom,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-10-02 20:19:59