ПортингLinux
Основная платформа разработки — это Linux на x86, хотя
MPlayer работает под многими другими портами Linux.
Бинарные пакеты MPlayer'а доступны из нескольких источников. Тем не менее,
ни один из этих пакетов не поддерживается.
Сообщайте о проблемах их авторам, а не нам.
Упаковка под Debian
Чтобы создать Debian пакет, выполните следующие команды в каталоге с исходным
кодом MPlayer'а:
fakeroot debian/rules binary
Затем, став root'ом Вы, как обычно, Вы можете установить .deb
пакет:
dpkg -i ../mplayer_версия.deb
Какое-то время Christian Marillat собирал неофициальные Debian пакеты с
MPlayer'ом, MEncoder'ом
и шрифтами, так что вы можете их скачать (apt-get'нуть)
их с его сайта.
RPM пакеты
Dominik Mierzejewski собирает и поддерживает официальные Red Hat RPM пакеты
MPlayer'а. Они доступны с его
сайта.
Mandrake RPM пакеты доступны с P.L.F..
SuSE включала искалеченную версию MPlayer'а в дистрибутив.
Из последних релизов они убрали эти пакеты. Вы можете взять
работающие RPM'ники с
links2linux.de.
ARMMPlayer работает на Linux PDAs с ARM процессором,
например Sharp Zaurus, Compaq Ipaq. Простейший способ получить
MPlayer — это скачать его с
пакетных пастбищ[feeds]
OpenZaurus. Если Вы хотите
скомпилировать его самостоятельно, обратите внимание на каталоги
MPlayer
и
libavcodec
в корне сборки[buildroot] дистрибутива OpenZaurus. Там всегда найдутся
свежий Makefile и патчи, используемые для сборки CVS MPlayer'а вместе с
libavcodec. Если Вам нужен GUI, используйте xmms-embedded.
*BSDMPlayer работает под FreeBSD, OpenBSD, NetBSD,
BSD/OS и Darwin. Существуют портированные[ports]/пакеты сорцов[pkgsrcs]/fink/
и т. п. версии MPlayer'а, которые наверное проще использовать, чем просто
исходный код.
Чтобы собрать MPlayer, Вам понадобится GNU make (gmake — родной BSD make
не будет работать) и свежая версия binutils.
Если MPlayer ругается, что он не может найти /dev/cdrom или
/dev/dvd, создайте соответствующую ссылку:
ln -s /dev/Ваше_cdrom_устройство /dev/cdrom
Чтобы использовать Win32 DLL'и с MPlayer'ом, Вам необходимо перекомпилировать
ядро с "option USER_LDT" (если только у Вас не FreeBSD-CURRENT,
где это включено по умолчанию).
FreeBSD
Если Ваш CPU поддерживает SSE, перекомпилируйте ядро с
"options CPU_ENABLE_SSE" (необходимо FreeBSD-STABLE
или патчи к ядру).
OpenBSD
В связи с ограничениями в различных версиях gas'а (переносы[relocation] и MMX),
Вы должны будете компилировать в два шага: сначала убедитесь, что не родной as
— первый в Вашем $PATH и выполните gmake -k
, затем убедитесь, что будет использоваться родная версия и запустите
gmake.
Darwin
См. секцию Mac OS.
Sun SolarisMPlayer должен работать под Solaris 2.6 и более
новыми версиями.
На UltraSPARC'ах, MPlayer
использует их расширение VIS (эквивалент MMX), но (в настоящий
момент) только в libmpeg2, libvo и
libavcodec, но не в mp3lib. Вы сможете просматривать VOB'ы
на 400MHz CPU. Вам потребуется установленная
mLib.
Чтобы собрать программу, Вам потребуется GNU make
(gmake, /opt/sfw/gmake), родной
Solaris'овый make не будет работать. Типичная ошибка которую Вы будете
получать при использовании Solaris'огово make, вместо GNU'шного:
% /usr/ccs/bin/make
make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen
На Solaris SPARC, Вам потребуется GNU C/C++ Compiler; при этом не имеет
значения, был ли GNU C/C++ компилятор сконфигурирован с или без GNU ассемблера.
На Solaris x86, Вам потребуются GNU ассемблер и GNU C/C++ компилятор,
сконфигурированный, чтобы использовать GNU ассемблер! На x86 платформах
код MPlayer'а использует много MMX, SSE и 3DNOW! инструкций, которые
Sun'овский ассемблер /usr/ccs/bin/as не может
скомпилировать.
Скрипт configure пытается обнаружить, какой ассемблер
используется Вашей командой "gcc" (в том случае, если автоопределение
не сработает, используйте опцию
, чтобы сообщить
скрипту configure, где можно обнаружить GNU "as" на Вашей
системе).
Сообщения об ошибках configure на Solaris x86 системах при
использовании GCC без GNU ассемблера:
% configure
...
Checking assembler (/usr/ccs/bin/as) ... , failed
Please upgrade(downgrade) binutils to 2.10.1...
(Решение: Установите и используйте gcc, сконфигурированный с )
Типичная ошибка при сборке GNU C компилятором, который не использует GNU as:
% gmake
...
gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math
-fomit-frame-pointer -I/usr/local/include -o mplayer.o mplayer.c
Assembler: mplayer.c
"(stdin)", line 3567 : Illegal mnemonic
"(stdin)", line 3567 : Syntax error
... more "Illegal mnemonic" and "Syntax error" errors ...
В связи с ошибками в Solaris 8, Вы не сможете проигрывать DVD диски, размером
больше 4 Гб:
Под Solaris 8 x86 драйвер sd(7D) содержит ошибку, проявляющуюся при доступе
к дискам, размером > 4 Гб на устройствах с логическим размером блока !=
DEV_BSIZE (например CD-ROM и DVD диски).
Из-за целочисленного 32битного переполнения, происходит доступ к дисковому адресу
по модулю 4 Гб
().
Проблема отсутствует в SPARC версиях Solaris 8.
Похожая ошибка существует в коде файловой системы hsfs(7FS) (ISO9660),
hsfs может не поддерживать разделы/диски больше 4 Гб, доступ к данным
происходит по модулю 4 Гб
().
Проблемы с hsfs могут быть исправлены установкой патча 109764-04 (sparc) /
109765-04 (x86).
Под Solaris с UltraSPARC CPU, вы можете получить ускорение за счёт использования
VIS инструкций этого процессора для некоторых поглощающих время операций. VIS
ускорение может использоваться в MPlayer'е путём вызова
функций в Sun'овской mediaLib.
VIS-ускоренные операции из mediaLib используются для декодирования mpeg2 видео
и преобразований цветовых пространств в драйверах видео вывода.
Silicon Graphics Irix
Вы либо можете попробовать установить программу GNU install, и (если Вы
не поместили её в Ваш глобальный путь), то укажите на её местонахождение:
./configure --with-install=
Или Вы можете использовать стандартную программу install, поставляемую вместе
с IRIX 6.5, но в этом случае Вы должны будете вручную немножко подправить
Makefile.
Поменяйте следующие две строки:
$(INSTALL) -c -m 644 DOCS/mplayer.1 $(MANDIR)/man1/mplayer.1
$(INSTALL) -c -m 644 etc/codecs.conf $(CONFDIR)/codecs.conf
на:
$(INSTALL) -m 644 mplayer.1 $(MANDIR)/man1/
$(INSTALL) -m 644 codecs.conf $(CONFDIR)/
И затем выполните (из корневого каталога MPlayer'а):
cp DOCS/mplayer.1 . ; cp etc/codecs.conf .
И затем просто соберите и установите MPlayer.
QNX
Работает. Вам нужно скачать и установить SDL для QNX. Затем запустите
MPlayer с опциями
и , и все будет работать быстро.
Вывод будет ещё медленнее, чем под Linux, поскольку под
QNX X'ы эмулируются, что ОЧЕНЬ медленно. Используйте SDL.
WindowsДа, MPlayer работает под Windows под
Cygwin и
MinGW.
Пока ещё нет GUI, но версия командной строки почти функциональна. Мы всегда
будем благодарны за патчи.
Вы можете получить помощь и последнюю информацию на рассылке
mplayer-cygwin.Лучшие результаты получаются при использовании родного DirectX видео
вывода () и родного Windows waveout аудио драйвера
(), поскольку OpenGL не работает, а на некоторых
системах SDL искажает звук и видео или ломает систему.
Если изображение искажено, попробуйте отключить аппаратное ускорение, указав
. Скачайте
файлы заголовков
DirectX 7, чтобы скомпилировать видео драйвер DirectX.Вы можете использовать Win32 кодеки и Real Win32 кодеки (не Real Linux кодеки),
если хотите. Поместите их куда-нибудь в пути или укажите
configure опцию (или , но
только под Cygwin). У нас были сообщения о том, что Real DLL'и должны быть
доступны пользователю, запускающему MPlayer, для записи, но только на
некоторых системах. Если у Вас проблемы с ними, попробуйте сделать их
записываемыми. QuickTime DLL'и также работают, но Вы должны поместить их
в системный Windows каталог (C:\Windows\system\
или что-то в этом духе).Консоль Cygwin/MinGW
слегка медленная. Перенаправление вывода или
использование опции улучшает производительность на
некоторых системах. Прямое воспроизведение[Direct rendering] () также может помочь. Вы можете избежать мерцания OSD, включив
опцией двойную буферизацию. Если воспроизведение
прерывисто, попробуйте . Если какие-то из этих
опций Вам помогут, стоит поместить их в конфигурационный файл.Иногда Саша Зоммер [Sascha Sommer] выпускает оффициальные бинарии
под Windows, Джой Пэрриш[Joey Parrish] собирает
неофициальные Windows пакеты с установочником. Ищщите ссылки в секции
Windows
нашей страницы проектов.CygwinCygwin версий до 1.5.0 не включал
inttypes.h. Поместите этот
inttypes.h
в /usr/include/, чтобы
MPlayer мог скомпилироваться.Файлы заголовков DirectX надо распаковать в
/usr/include/ или /usr/local/include/
.Вы можете найти инструкции и файлы для запуска SDL
под Cygwin на
сайте libsdl.Вы можете проигрывать VCD, проигрывая .DAT или
.MPGфайлы, которые Windows показывает на VCD'шниках.
Вот как это работает (подставьте букву Вашего CD-ROM'а):mplayer d:/mpegav/avseq01.datmplayer /cygdrive/d/MPEG2/AVSEQ01.MPGDVD'шники тоже работают, укажите букву Вашего DVD-ROM'а опцией
:mplayer dvd://<title> -dvd-device '\\.\d:'MinGWПрежде, установка версии MinGW,
способной скомпилировать MPlayer, была
слегка сложной, но сейчас все работает с самого начала. Просто установите
MinGW 3.1.0 или более новый и укажите
MSYS постустановщику, что MinGW
установлен.Если Вы используете более раннюю, чем 3.1.0 версию
MinGW, Вам нужно
заменить /mingw/include/sys/types.h этим файлом:
types.h.Распакуйте файлы заголовков DirectX в /mingw/include/.VCD'шники и DVD'шники работают почти как в Cygwin
(подставьте букву Вашего CD-ROM'а/DVD-ROM'а):mplayer d:/mpegav/avseq01.datmplayer /d/MPEG2/AVSEQ01.MPGmplayer dvd://<title> -dvd-device /d/Mac OS
Только Mac OS X 10.2 и выше "напрямую" поддреживаются
сорцами MPlayer'а. Если хотите, добавьте поддержку
юолее старых версий Mac OS и пришлите патч!
Для компиляции MPlayer'а предпочтителен
изменённый фирмой Apple GCC 3.x, особенно при использовании libavcodec, поскольку
Apple'вский GCC 2.95.x не очень хорошо поддерживает C99 синтакс.
Вы можете получить Aqua GUI для MPlayer вместе с
откомпилированными Mac OS X бинариями MPlayer'а
на сайте MPlayerOSX проекта.
HP UX
Martin Gansser поддерживает
HOWTO
по сборке MPlayer под HP-UX. Там даже есть FAQ!
Как бы то ни было, наши "сырые" исходники MPlayer'а
компилируются на HP-UX безошибочно.
Amiga/MorphOS (GeekGadgets)
Nicholas Det at Genesi сделал большой и значительный MPlayer
'а под MorphOS. К сожалению, он основан на серии 0.90.
Получите их с MorphZone:
MPlayer 0.91 бинарникMPlayer 0.91 исходный кодMEncoder 0.91 бинарник