Как установить MPLAYER, MENCODER?
Про этот пакет надо знать следующие вещи:
-
Авторы не рекомендуют использовать подготовленные бинарные варианты,
нужно обязательно конфигурировать, транслировать и устанавливать
программу на каждой отдельной машине. Авторы утверждают, что только в
этом случае Mplayer покажет свою настоящую производительность и не расстроит пользователя.
-
Mencoder является составляющей частью пакета Mplayer, компилируется и устанавливается вместе с MPlayer.
Итак, устанавливаем MPlayer в Linux-систему:
Простой (быстрый, но не самый лучший) способ:
-
скачиваем пакеты MPlayer, MPlayer-fonts, MPlayer-gui, MPlayer-skins с AltLinux
или его зеркала.
-
добавляем их в систему (RPM, или через APT)
-
сразу получаем в системе вполне рабочий MPlayer. Имеем возможность
снести пакеты при помощи RPM или APT.
Долгий путь, со всеми возможностями:
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-ами с сайта разработчика)