Chuyển đổi hàng loạt .wav sang mp3 và ogg?


20

Tôi có vài trăm tệp .wav mà tôi cần chuyển đổi sang cả định dạng ogg và mp3. Có cách nào để tôi có thể thực hiện việc này hàng loạt từ Audacity hoặc từ một số công cụ dòng lệnh khác không?

audio  batch  mp3  audacity  ogg 

Câu trả lời:


25

Từ một dòng lệnh giống như Unix (Linux, OSX, v.v.), ffmpeg có thể được sử dụng như thế này:

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

Điều này sẽ chuyển đổi mọi WAV trong một thư mục thành một MP3 và một OGG; lưu ý rằng nó phân biệt chữ hoa chữ thường (lệnh trên sẽ chuyển đổi mọi tệp kết thúc bằng .wav, nhưng không phải .WAV). Nếu bạn muốn có một phiên bản không phân biệt chữ hoa chữ thường:

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

Để chuyển đổi mọi WAV trong thư mục theo cách đệ quy (nghĩa là: mọi WAV trong thư mục hiện tại và tất cả các thư mục trong thư mục hiện tại), bạn có thể sử dụng 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}' '{}' \;

(Tối đa tôn trọng Dennis vì phản hồi của anh ấy ở đây vì đã tìm cho tôi một triển khai tìm kiếm với ffmpeg)

Đối với tìm kiếm không phân biệt chữ hoa chữ thường với find, sử dụng -inamethay vì -name.

Một lưu ý về -q:a: đối với MP3, phạm vi chất lượng là 0-9, trong đó 0 là chất lượng tốt nhất và 2 là đủ tốt cho hầu hết mọi người để chuyển đổi âm thanh CD; đối với OGG, đó là 1-10, trong đó 10 là tốt nhất và 5 tương đương với chất lượng CD đối với hầu hết mọi người.


4
Rất hữu ích. Tôi đã sửa đổi điều này thành chuyển đổi hàng loạt .wav sang mp3 một cách đệ quy, vì tôi không cần ogg:find . -type f -name '*.wav' -exec bash -c 'ffmpeg -i "$0" -c:a libmp3lame -q:a 2 "${0/%wav/mp3}"' '{}' \;
smg

Ví dụ thứ ba, để chuyển đổi đệ quy, đã không khớp '.
Phản vệ

$ for f in *.wav; do ffmpeg -i "$f" -c:a libmp3lame -b:a 320k "${f/%wav/mp3}"; donechỉ với mp3 320 kbps
qwr


2

Có vẻ như bạn có thể sử dụng oggenc để chuyển đổi WAV thành OGG và bạn có thể sử dụng què để chuyển đổi WAV thành MP3.


2

Tải xuống ffmpeg từ liên kết bên dưới và cài đặt nó: http://ffmpeg.zeranoe.com/builds/

tạo và chạy tệp bó với các lệnh bên dưới:

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

Tất cả các tệp * .ogg được chuyển đổi sẽ được sao chép vào thư mục .. \ Ogg.


0

Tôi đã thực hiện một số thay đổi đối với tệp dơi mà tôi đã tìm thấy trên SO, bây giờ, xử lý các khoảng trắng trong tên tệp vì nó thường là trường hợp trong tên bài hát. tập tin bat này chuyển đổi .wav thành .mp3, sử dụng công cụ dòng lệnh VLC. Nhưng bạn có thể thay đổi định dạng wma -> mp3, v.v.

@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 thay đổi mã hóa (để xử lý các ký tự có dấu.) ab là tốc độ bit ở đây 320

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.