Как установить MPLAYER, MENCODER?



Про этот пакет надо знать следующие вещи:

Итак, устанавливаем MPlayer в Linux-систему:

Простой (быстрый, но не самый лучший) способ:
Долгий путь, со всеми возможностями:

MPLAYER - прогрыватель видео всяческих форматов. Распространяется на условиях GPL.


    Установка

    Простейшие команды для запуска MPlayer

    7
  • Просто запуск из командной строки:
    gmplayer
    gmplayer - вариант mplayer с графическим интерфейсом. Далее из меню (щелкните правой кнопкой мыши на экране) вы можете сделать все, что вам захочется.
  • AVI-файл:
    gmplayer my.avi
  • DVD:
    gmplayer -dvd 2 /dev/dvd
    (dvd 2 означает, что надо начать со второй части)
  • DVD:
    gmplayer -alang ru -dvd 2 /dev/dvd
    (alang - audio language, -alang ru означает, что предпочтительна русская звуковая дорожка)
  • DVD:
    gmplayer -slang ru -alang ru -dvd 2 /dev/dvd
    (slang - subtiles language, -slang ru означает, что предпочтительны русские субтитры, также наличие этого параметра включает показ субтитров)
  • DVD:
    mplayer -vo vesa -dvd 2 /dev/dvd
    (vo - video output, выбирается драйвер подсистемы видеовывода. Если запустить "mplayer -vo help", увидите весь список драйверов. При просмотре "Миссия на Марс" только с vesa-драйвером мне удалось избежать сообщения о том, что моя система слишком медленна для воспроизведения этого диска. У меня был PIII-500, Nvidia GeForce 2 с драйвером карты от X11R6 V4.1.0. Я не воспользовался X-драйвером видеокарты от Nvidia, думаю это и явилось причиной проблем со скоростью вывода изображения.)
  • Просмотр телепрограмм с TV-тюнера (Avermedia, чип bt878):
    mplayer -tv on:device=/dev/video0:driver=v4l:input=0:width=320:height=240:\
    norm=SECAM:chanlist=europe-east:channel=R3
    (Значения input: 0=TV, 1=Composite1, 2=S-Video.)

MENCODER - перекодировщик видео/аудио. Входит в состав MPlayer.

Простейшие команды работы с mencoder


Установка
Ключи от mplayer имеют такое же значение и в mencoder, хотя не все они поддерживаются.
  • DVD ===> MP4? *** За 3 прохода ***:
    rm frameno.avi # удалить этот файл со звуком, если такой остался с прошлого 3-хпроходного кодирования
    mencoder -dvd 1 -ovc frameno -o frameno.avi -oac mp3lame -lameopts vbr=3
    mencoder -dvd 1 -ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=1057 -oac copy -o movie.avi
    mencoder -dvd 1 -ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=1057 -oac copy -o movie.avi
    Кодирование делается в три прохода.
    - сначала делается звуковой файл, чтобы его не кодировать дважды.
    - после первого прохода mencoder советует видео-bitrate для успешного кодирования на CD-диски (650/700/800Mb)
    - на первом проходе звук кодируется в MP3 с использованием программы Lame, выбирается способ с переменным битрейтом (vbr=3).
    :vbitrate=1057 указывает, что bitrate видео должен быть сделан 1057Kb/sec.
    -dvd 1 - говорит, что кодировать надо первую видеозапись. На некоторых дисках фильм идет вторым, тогда опция будет выглядеть так: -dvd 2
    -oac copy - говорит, что аудиокодек это просто копирование звуковой дорожки.
    -o указывает название выходного файла movie.avi
    -:vpass указывает номер прохода.
    Для пробы за 1.5 часа на PIV-2.4/DVD-16x без проблем обработал 94-минутный фильм.

    Может потребоваться указать номер русской звуковой дорожки. Определить номер дорожки можно так: mencoder -v -endpos 0 -dvd 1 -nosound -ovc frameno В информации, выдаваемой mencoder-ом, найдите строку про звук "ru", Там и будет указана цифра для ключа -aid

    Для автоматизации процесса можно использовать простенький скрипт:
    #!/bin/bash # # Простенький скрипт для создания mpeg4 <== DVD # # # VN - номер видеозаписи в заголовке # VN=1 # # Первый шаг - узнать ID русской звуковой дорожки # # Для этого получим инфо о DVD (ключ -v) # SS="language: ru aid:" typeset -i aid s=`mencoder -v -endpos 0 -dvd $VN -nosound -ovc frameno | grep "$SS" ` echo "$s" if [ `echo "$s" | wc -l` != "1" ] then echo "Проблемы с определением русской аудиодорожки" echo "Вот:$s" exit 1; fi aid=`echo "$s" | awk -F: '{print $5}'` if [ $? != 0 ] ; then echo "Проблемы с определением русской аудиодорожки"; exit 1; fi if [ -f frameno.avi ] then # remove this file, which can come from a previous 3-pass encoding (it interferes with current one) rm -f frameno.avi; if [ $? != 0 ] ; then echo "Error removing frameno.avi"; exit 1; fi fi # # Получаем файл со звуком, по дороге узнаем предполагаемый видео-битрейт. # SS="for 800MB CD:" typeset -i vr vr=`mencoder -dvd $VN -aid $aid -ovc frameno -o frameno.avi -oac mp3lame -lameopts vbr=3 \ | grep "$SS" | awk -F: '{print $2}'` if [ $? != 0 ] ; then echo "Error on pass0"; exit 1; fi mencoder -dvd $VN -aid $aid -ovc lavc -lavcopts vcodec=mpeg4:vpass=1:vbitrate=$vr \ -oac copy -o movie.avi if [ $? != 0 ] ; then echo "Error on pass1"; exit 1; fi mencoder -dvd $VN -aid $aid -ovc lavc -lavcopts vcodec=mpeg4:vpass=2:vbitrate=$vr \ -oac copy -o movie.avi if [ $? != 0 ] ; then echo "Error on pass2"; exit 1; fi
    Убого, но удобно. Иногда ручками стоит поменять предполагаемый размер CD(800MB) и номер видеозаписи (-dvd 1).

29.04.2002 Иванов Аркадий
Последняя модификация 01.02.2003 (для версии 0.90rc3,
Тренировался в AltLinux 2.0 с upgrade-ами с сайта разработчика)