Конветирование AVI в кашерный OGG

Раньше я использовал утилиту oggconvert входящую в состав репозитариев Debian/Ubuntu. В репозитариях ArchLinux я не смог её найти, ну и не жалко так как oggconvert поставляется с GTK интерфейсом и позволяет конвертировать только 1 файл за раз, а это сами понимаете не удобно.

Но недавно нашёл программу ffmpeg2theora программа консольная, и имеет больше опций чем oggconvert, например можно изменять размер изображения выходного файла (опции --width и --heigth) или выбирать номер канала звука, а это, поверьте, весьма актульно когда у вас имеется компатное устройство типа Asus EEE PC 701 как у меня.

Размер программы 1,4М, установки не требует, скачал и запустил :), там же можно взять исходники

например вот так можно вручную сконвертировать avi файл в ogg

~/Download/ffmpeg2theora-0.21.linux32 MASH.#006.\(1x06\).-.Yankee.Doodle.Doctor.\(rus\,eng\).\[DVD-rip.by.MYury\].avi --audioquality 3  --videoquality 6 --width 600 --height 480 -c 1 --starttime 45 --endtime 1500 --videobitrate 1500

разбор опций:

  1. --audioquality 3 - качество звука (от -2 до 10)
  2. --videoquality 6- качество видео (от 0 до 10)
  3. --width 600 --height 400 - размер выходного изображения
  4. --starttime 45 --endtime 1500 - время начала и конца записи, так я вырезаю субтитры
  5. --videobitrate 1500 - видео битрейт
  6. -c 1 - номер аудио дорожки, зачем мне на ноутбуке стерео звук и английский перевод? да ни зачем

Для пакетной обработки я набросал небольшой скриптик

  1. PROG="/home/ubuntu/Download/ffmpeg2theora-0.21.linux32" # задаём полное имя программы, у меня она лежит в папке для закачки
  2. cd $1 # переходим в папку заданную первых аргументом при вызове скрипт
  3. for name in `ls *.avi`;do # в цикле перебираем все .avi файлы найденные в папке
  4.     $PROG  --audioquality 2 -c 1 --videoquality 5 --width 600 --height 480 --starttime 45 --videobitrate 1000 $name; # применяем к файлам перекодировшик
  5. done

 

А вот ещё один способ конвертирования видео с помощью mencoder

mencoder input.avi  -oac mp3lame -lameopts cbr:br=32  -ovc lavc -lavcopts vcodec=mpeg4:vbitrate=600 -o output.avi