Hem ogg hem de mp3 formatına dönüştürmem gereken birkaç yüz .wav dosyam var. Audacity veya başka bir komut satırı aracından toplu olarak bunu yapmanın bir yolu var mı?
Hem ogg hem de mp3 formatına dönüştürmem gereken birkaç yüz .wav dosyam var. Audacity veya başka bir komut satırı aracından toplu olarak bunu yapmanın bir yolu var mı?
Yanıtlar:
Unix benzeri (Linux, OSX vb.) Komut satırından ffmpeg şu şekilde kullanılabilir:
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
Bu, bir dizindeki her WAV'ı bir MP3 ve bir OGG'ye dönüştürür; büyük / küçük harfe duyarlı olduğunu unutmayın (yukarıdaki komut .wav ile biten her dosyayı dönüştürür, ancak .WAV dönüştürmez). Büyük / küçük harfe duyarlı olmayan bir sürüm istiyorsanız:
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
Bir dizindeki her WAV'ı özyinelemeli olarak dönüştürmek için (yani: geçerli dizindeki her WAV ve geçerli dizindeki tüm dizinler) aşağıdakileri kullanabilirsiniz 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}' '{}' \;
(Max yanıtı için Dennis saygı burada bana Ffmpeg ile find a çalışma uygulamasını bulmak için)
Find ile büyük / küçük harfe duyarlı olmayan arama için, -iname
yerine kullanın -name
.
Bir not -q:a
: MP3 için kalite aralığı 0-9'dur, burada 0 en iyi kalitedir ve 2 çoğu insanın CD sesini dönüştürmek için yeterince iyidir; OGG için, 1-10 arasındadır, burada 10 en iyisidir ve 5 çoğu insan için CD kalitesine eşdeğerdir.
find . -type f -name '*.wav' -exec bash -c 'ffmpeg -i "$0" -c:a libmp3lame -q:a 2 "${0/%wav/mp3}"' '{}' \;
'
.
$ for f in *.wav; do ffmpeg -i "$f" -c:a libmp3lame -b:a 320k "${f/%wav/mp3}"; done
sadece 320 kbps mp3 için
OGG ve MP3 için foobar2000'i kodlayıcılarla kullanabilirsiniz . Rarewares'de kodlayıcılar bulabileceğinize inanıyorum .
WAV'ı OGG'ye dönüştürmek için oggenc'i kullanabilir ve WAV'ı MP3'e dönüştürmek için topal kullanabilirsiniz .
Aşağıdaki linkten ffmpeg'i indirin ve kurun: http://ffmpeg.zeranoe.com/builds/
içinde aşağıdaki komutları içeren bir toplu iş dosyası oluşturun ve çalıştırın:
echo converting *.wav to *.ogg
mkdir ..\Ogg
for /r %%i in (*) do ffmpeg -i %%i -acodec libvorbis ..\Ogg\%%~ni.ogg
Dönüştürülen tüm * .ogg dosyaları .. \ Ogg dizinine kopyalanacaktır.
SO'da bulduğum bir yarasa dosyasında bazı değişiklikler yaptım, şimdi, şarkı adlarında olduğu gibi dosya adlarındaki boşluklarla ilgileniyor. bu yarasa dosyası VLC komut satırı aracını kullanarak .wav dosyasını .mp3 biçimine dönüştürür. Ama wma -> mp3 ve benzeri formatlara değiştirebilirsiniz ...
@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 (vurgulu karakterlerle başa çıkmak için) kodlamayı değiştirir ab burada bit hızıdır 320