Odpowiedzi:
Szukając pakietów pasujących do ogg, znalazłem dir2ogg, który wydaje się być dokładnie tym, czego chcesz. Właśnie
sudo apt-get install dir2ogg
dir2ogg -r /path/to/mp3s/
I rekurencyjnie znajduje i konwertuje wszystkie pliki mp3 /path/to/mp3s/
do formatu ogg (zakładając, że poprawnie przeczytałem instrukcję).
Użyj kombinacji FFMPEG i manipulacji ciągiem .
Przejdź do folderu, w którym znajdują się pliki mp3:
cd mp3folder
Jednym z przykładów jest użycie prostej pętli „for”:
for file in *.mp3
do ffmpeg -i "${file}" "${file/%mp3/ogg}"
done
Podwójne cudzysłowy zapobiegają traktowaniu spacji w nazwach plików jako „znaki nowej linii”.
ffmpeg ma kilka opcji do włączenia w konwersję, takich jak kodeki, szybkość transmisji, wielkość próbki, stereo / mono itp. Powyższe jest najbardziej ogólną konwersją z ustawieniami domyślnymi.
ffmpeg -i sound.mp3 -c:a libvorbis -q:a 10 sound.ogg
ustawienie najwyższej jakości, wciąż zauważalnie gorsze niż oryginalne. Domyślne ustawienia w ogóle mi nie działały (w Cygwin, więc pozwij mnie :)), ale to pytanie miało dobre informacje: superuser.com/questions/273797/convert-mp3-to-ogg-vorbis
Ostrzeżenie : Zarówno MP3, jak i OGG są formatami stratnymi , w przeciwieństwie do WAV lub FLAC. Oznacza to, że osiągają kompresję w dużej mierze poprzez wyrzucanie fragmentów informacji audio, które są niewidoczne dla ludzkiego ucha (zwane psychoakustyka [wikipedia] )
Kiedy kodujesz (transkodujesz) z jednego stratnego formatu na inny, większość z tych psychoakustycznie nadmiarowych bitów już nie ma, więc jakość transkodowania ucierpi i może nawet być „słyszalna” w wyniku. Dlatego nie zaleca się wykonywania takich konwersji, chyba że jest to absolutnie konieczne.
Jeśli wykonasz tę konwersję MP3 do OGG, możesz zminimalizować ryzyko wystąpienia artefaktów (słaba jakość), używając wyższej docelowej przepływności niż źródłowa , np. Jeśli pliki MP3 mają prędkość 128 kb / s, spróbuj użyć Ogg przy -q7
(zmiennym poziomie przepływności) 7), co zwykle wynosi około ~ 200 kb / s.
Możesz przekazać -q
opcję do dir2ogg (dostępnego w repozytoriach, jak wspomniano @geirha), który powinien zrobić, co chcesz.
możesz użyć programu avconv a gpl, zrobiłem powłokę dla przykładu (uruchom ją na folderze z plikami .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
lub prostsza wersja, bez sprawdzania poprawności instalacji avconv:
#!/bin/bash
for file in *.mp3
do avconv -i "${file}" "`echo ${file%.mp3}.ogg`";
done
ffmpeg
jest oficjalnie przestarzała i wyraźnie wspomina, że należy jej użyć avconv
.
Oto jeden z mplayera. Myślę, że jest szybszy niż avconv. Chociaż Firefox powinien odtwarzać pliki mp3 natywnie.
#!/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
Jeśli robisz tylko dźwięk, użyj poniższego kodu [inaczej FF nie odtwarza .ogg]
for file in *.mp3;
do ffmpeg -i "${file}" -acodec libvorbis "${file/%mp3/ogg}";
done
Istnieje również konwerter dźwięku . Obsługuje zarówno GUI, jak i CLI i może przeprowadzać transformacje zbiorcze w obu trybach.
Wygląda na to, że może rozwiązać Twój problem http://www.perturb.org/display/entry/687/