Ebuild для пакета mplayer-mt

Май 19, 2009
Gentoo

Последнее время быстро растет популярность видео в формате full HD. Декодирование видеоряда с таким разрешением накладывает серьезные ограничения на аппаратное обеспечение, и иногда одного ядра процессора может не хватать для плавного проигрывания динамических сцен. Несвободные многопоточные декодеры под Windows применяются уже давно, в то время как под Linux они считаются нестабильными. Тем не менее, не следует бояться слова «нестабильный». В мире Linux во многих случаях это значит «недостаточно оттестированный». Это же верно для ветки ffmpeg-mt проекта ffmpeg с экспериментальной поддержкой многопоточного декодирования.

Недавно я собрал mplayer с библиотекой ffmpeg-mt и остался очень доволен результатом. Плеер смог правильно и без задержек декодировать все фильмы формата 1080p, которые у меня были. Предлагаю пользователям системы Gentoo свой пакет mplayer-mt.ebuild, а остальным — инструкции по сборке вручную.

Прежде всего необходимо встроить ffmpeg-mt в mplayer. Для этого берем их последние версии из репозитариев:

# svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer
# git clone git://gitorious.org/~astrange/ffmpeg/ffmpeg-mt.git

Для встраивания замените в mplayer директории libavcodec, libavformat и libavutil новыми из ffmpeg-mt. Учтите, что последняя версия mplayer может быть несовместима с текущей ffmpeg-mt. Если Вы хотите сделать архив на будущее, то будет полезно удалить служебные папки системы контроля версий, которые занимают в mplayer почти половину всего объема:

# find . -name '.svn' | xargs rm -r

Если у Вас нет возможности напрямую обратиться к репозитариям (закрыты порты и пр.), Вы экономите время и трафик или просто немножко ленивы, то можете скачать архив с этого сайта. Компилировать и устанавливать — как обычно:

# ./configure && make && make install

Для включения параллельного декодирования укажите следующие опции:

# mplayer-mt -lavdopts threads=N file.mkv

где N — это количество потоков исполнения.

Ebuild (для пользователей Gentoo)

Я переделал официальный ebuild для mplayer, который теперь компилирует модифицированные исходники, устанавливает плеер в директорию /opt/mplayer-mt и делает линк в /opt/bin на исполняемый файл. Загрузите скрипт, перенесите его в /usr/local/portage/media-video/mplayer-mt (или в другой локальный оверлей, который задан переменной окружения PORTDIR_OVERLAY). Положите mplayer-mt-20090510.tar.bz2 в /usr/portage/distfiles и выполните

# cd /usr/local/portage/media-video/mplayer-mt
# ebuild mplayer-mt-20090510.ebuild manifest

Теперь Вы можете установить mplayer-mt с помощью пакетного менеджера.

Обновление (03.10.2009)

Обновление (02.12.2009)

Никита Мельниченко.

Комментарии

Никита Мельниченко
11.08.2009, 01:31

Файл mplayer-mt-20090510.tar.bz2 занимает 8240477 байт. Если в процессе загрузки у Вас возникают разрывы соединения, используйте wget для продолжения закачки.

anonymous
06.10.2009, 19:12

спасибо за ебилд и архив: работает отлично! пробовал собирать по другим мануалам - на всех собранный мплеер крэшится при запуске.

Никита Мельниченко
07.10.2009, 00:08

Рад помочь!

Комментирование приостановлено