hàng loạt / lô chuyển đổi tập tin mp3 sang ogg thông qua dòng lệnh?


44

Có thể chuyển đổi mp3 sang ogg thông qua dòng lệnh?

Tôi muốn chỉ trong một số lượng lớn chuyển đổi các tệp mp3 của tôi thành ogg để tôi có thể phát chúng trong firefox mà không gặp vấn đề gì.


firefox nên phát các tệp mp3 tốt
mchid

Câu trả lời:


37

Tìm kiếm các gói phù hợp với ogg, tôi tìm thấy dir2ogg dường như chính xác những gì bạn muốn. Chỉ

sudo apt-get install dir2ogg
dir2ogg -r /path/to/mp3s/

Và nó đệ quy tìm và chuyển đổi tất cả các tệp mp3 theo /path/to/mp3s/ogg (giả sử tôi đọc hướng dẫn chính xác).


30

Sử dụng kết hợp FFMPEGThao tác chuỗi .

Thay đổi vào thư mục chứa mp3 của bạn:

cd mp3folder

Một ví dụ là sử dụng vòng lặp "for" đơn giản:

for file in *.mp3
  do ffmpeg -i "${file}" "${file/%mp3/ogg}"
done

Các trích dẫn kép ngăn không gian trong tên tệp được coi là "dòng mới".

ffmpeg có một số tùy chọn để đưa vào chuyển đổi như codec, bitrate, cỡ mẫu, âm thanh nổi / đơn âm, v.v ... Trên đây là chuyển đổi chung nhất với cài đặt mặc định.


Xuất sắc. dir2ogg đã không làm việc trên khò khè nhưng câu trả lời này hoạt động như một cơ duyên
Onimusha

dir2ogg cũng không hoạt động với tôi, nhưng tôi đã chuyển đổi m4a -> ogg. <a href=" linuxquestions.org/questions/linux-general-1/ Thẻ "title= linuxquestions.org"> lq </a> nhưng vòng lặp for ở trên đã làm (thay thế ffmpeg bằng avconv). Khi chuyển đổi m4a / mp3 sang ogg với quy trình trên, kích thước tệp tăng gấp 9 lần. Tuy nhiên, nếu lần đầu tiên bạn chuyển đổi m4a sang mp3 và sau đó mp3 thành ogg, kích thước tệp chỉ lớn hơn gấp 4 lần. <pre> <code> avconv -i "ManjusriMantra.m4a" " ManjusriMantra.mp3 "chờ avconv -i" ManjusriMantra.mp3 "" ManjusriMantra.ogg "<code> <pre>
afc888ny 14/03/2016

Điều này làm việc cho tôi: ffmpeg -i sound.mp3 -c:a libvorbis -q:a 10 sound.oggCài đặt chất lượng cao nhất, vẫn còn kém hơn đáng kể so với ban đầu. Các cài đặt mặc định hoàn toàn không hoạt động với tôi (trên Cygwin, vì vậy hãy kiện tôi :)), nhưng câu hỏi này có thông tin tốt: superuser.com/questions/273797/convert-mp3-to-ogg-vorbis
Kai Carver

19

Hãy cẩn thận với các chuyển đổi từ MP3, M4A, v.v. sang OGG vì kết quả có thể kém!

Cảnh báo : Cả MP3 và OGG đều là các định dạng mất dữ liệu , không giống như WAV hoặc FLAC. Điều này có nghĩa là họ đạt được khả năng nén của mình một cách tuyệt vời bằng cách loại bỏ các mẩu thông tin âm thanh không thể nghe được đến tai người (được gọi là psychoacoustics [wikipedia] )

Khi bạn mã hóa (chuyển mã) từ định dạng mất sang định dạng khác, hầu hết các bit dư thừa về mặt tâm lý đã biến mất, do đó, chất lượng chuyển mã sẽ bị ảnh hưởng và thậm chí có thể bị "đè nặng". Do đó, không nên thực hiện các chuyển đổi như vậy trừ khi thực sự cần thiết.


Giảm thiểu hiệu ứng nếu bạn làm như vậy bằng cách chọn tốc độ bit đích cao hơn tốc độ bit nguồn

Nếu bạn thực hiện chuyển đổi MP3-OGG này, bạn có thể giảm thiểu cơ hội tạo tác (chất lượng kém) bằng cách sử dụng tốc độ bit đích cao hơn tốc độ bit nguồn , ví dụ nếu MP3 của bạn ở mức 128 kbps, hãy thử sử dụng Ogg tại -q7(mức bitrate thay đổi 7), thường là khoảng ~ 200 kbps.

Bạn có thể chuyển -qtùy chọn cho dir2ogg (có sẵn trong các repos như @geirha đã đề cập) sẽ làm những gì bạn muốn.


10

bạn có thể sử dụng avconv một chương trình gpl, tôi đã tạo một shell cho ví dụ (chạy nó trên thư mục với các tệp .mp3):

#!/bin/bash
if hash avconv > /dev/null; then
    for file in *.mp3
        do avconv -i "${file}" "`echo ${file%.mp3}.ogg`";
    done
else
    echo "avconv not found"
fi

hoặc một phiên bản đơn giản hơn, không có xác nhận cài đặt avconv:

#!/bin/bash
for file in *.mp3
    do avconv -i "${file}" "`echo ${file%.mp3}.ogg`";
done

LƯU Ý: Các avconv gói là một nhánh mới / nĩa của ffmpeg , với cú pháp và các tính năng tương tự.
david6

CHÚ THÍCH 2: ffmpeg được chính thức phản đối và đề cập rõ ràng rằng bạn nên sử dụng avconvthay thế.
tro999

3

Việc phân tích / thay thế mp3 bằng ogg là không chính xác. Các hình thức chính xác phải là:

for file in *.mp3;

   do ffmpeg -i "${file}" -acodec libvorbis "${file%mp3}ogg";

done

2

Đây là một trong những người sử dụng mplayer Tôi nghĩ rằng điều này nhanh hơn avconv. Mặc dù, firefox nên phát các tệp mp3 nguyên bản.

#!/bin/bash
for f in *.mp3; do
 newname=`echo $f | tr ' ' '_' `
 mv "$f" $newname
 f=$newname
 mplayer $f -novideo -ao pcm:file=tmp.wav
 lame -V 0 -q 0 tmp.wav ${f/.mp3/.ogg}
 rm -f tmp.wav
done

1

Trong trường hợp bạn chỉ làm âm thanh, hãy sử dụng đoạn mã dưới đây [khác FF không phát .ogg]

for file in *.mp3;
   do ffmpeg -i "${file}" -acodec libvorbis "${file/%mp3/ogg}"; 
done

1

Ngoài ra còn có soundconverter . Nó hỗ trợ cả GUI và CLI và có thể thực hiện chuyển đổi hàng loạt trong cả hai chế độ.


0

Điều này có vẻ như nó có thể giải quyết vấn đề của bạn http://www.perturb.org/display/entry/687/


Bạn có thể giải thích "cái đó" là gì không? Nó sẽ thêm nhiều ngữ cảnh vào câu trả lời của bạn và tăng cường khả năng sử dụng nếu liên kết bạn tham chiếu đến một ngày biến mất =)
SaultDon

Sẽ làm như bạn đề xuất nhưng sau đó thấy câu trả lời của geirha, có vẻ tốt hơn nhiều so với của tôi nên tôi đã nâng cao nó.
Garry Cairns
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.