Рис. 3.4. Интерфейс KMPlayer
Вероятно, поэтому он хорошо интегрируется в эту среду. В отличие от GMPlayer, интерфейс KMPlayer локализуется вместе с рабочей средой, его внешний вид соответствует используемой теме оформления, меню стандартно для приложений KDE, и многие настройки (например, прокси-сервера) берутся прямо из Konqueror. Выполнив команду Настройка → Настроить KMPlayer, можно обнаружить, что за простотой оформления скрываются большие возможности. Так, кроме MPlayer, он может выводить видео, используя библиотеки других проигрывателей (Xine и Gstreamer), захватывать видео с ТВ-тюнеров, используя MEncoder, FFMpeg, Xine и MPLayer, автоматически воспроизводить Video CD или DVD, выводить видео и аудио, используя различные драйверы, и многое другое. Для часто посещаемых ресурсов прямо из кода можно составлять закладки. Здесь можно найти все стандартные функции, присущие проигрывателям, – изменение размера экрана, поддержку плейлистов в различных форматах, в том числе и транслируемых через RSS, и прочее. Для установки KMPlayer в Kubuntu достаточно ввести sudo apt-get install kmplayer.
Kaffeine (http://kaffeine.sourceforge.net/) – это видеопроигрыватель, который используется в Kubuntu по умолчанию (рис. 3.5). Он, как и KMPlayer, хорошо интегрируется в среду KDE, при желании его значок можно встроить в панель и управлять им оттуда. В настройках по умолчанию для вывода используется библиотека xine-lib, но при необходимости это может быть и MPlayer, а с версией 0.7 разработчики добавили поддержку и GStreamer.
Рис. 3.5. Окно Kaffeine
Следовательно, Kaffeine теперь поддерживает три наиболее популярных движка для вывода видео и по возможностям не уступает KMPlayer. Выбрать нужный движок можно выполнением команды Настройка → Движок вывода; если установлена нужная программа или библиотека, появится соответствующий пункт. Поддержка такого количества движков приводит к тому, что с воспроизведением файлов в различных форматах и кодеков у Kaffeine нет проблем. Это может быть звуковой или видеофайл, потоковое вещание, DVD, Video CD, Аудио CD, DVB (Digital Video Broadcasting – цифровое видеовещание) и другие. При работе с DVB-картами это самое удобное приложение.
При помощи Kaffeine можно также захватить аудиодиск, DVB и потоковое вещание, сохранив информацию в файл на жестком диске. Файл или поток, воспроизводимый при помощи Kaffeine, можно транслировать в локальную сеть. Для этого необходимо выполнить команду Файл → Сетевое вещание → Транслировать поток и указать номер порта, на который будет отсылаться информация. Поддерживается работа с плейлистами, их экспорт и импорт. При установленном флажке Autodownload covers (Автозагрузка обложек) Kaffeine будет самостоятельно скачивать обложки проигрываемых альбомов. Параметры пункта Опции выхода в меню Файл позволяют автоматически выключать компьютер или закрывать проигрыватель по окончании воспроизведения. При запуске проигрывателя не щелчком на файле, а из меню К появится окно, в котором можно выбрать действие (см. рис. 3.5).
Видеопроигрыватель Totem (рис. 3.6) (http://www.gnome.org/projects/totem/), в отличие от предыдущих, построен специально для среды GNOME (хотя его можно запускать и, например, в KDE) и, начиная с версии 2.10, официально входит в ее состав. Хорошо интегрируется в GNOME и файловый менеджер Nautilus. Для вывода видео используются библиотеки GStreamer, но вместо них можно подключить Xine. С его помощью можно просмотреть видеофайлы во многих стандартах, DVD, VCD, CD и потоковое вещание. Поддерживаются плейлисты, вывод видео на несколько мониторов, ТВ-выход видеокарты, субтитры, мультиканальный звук, дистанционное управление при помощи LIRC, различные эффекты при воспроизведении аудиофайлов, предосмотр видеофайлов и многое другое. Есть плагин для веб-браузера Mozilla.
Рис. 3.6. Окно видеопроигрывателя Totem
По умолчанию Totem используется в качестве проигрывателя в дистрибутиве Ubuntu. Чтобы увидеть его в Kubuntu, следует выполнить команду sudo apt-get install totem.
Хine – это видеопроигрыватель, основная функциональность которого заключается в разделяемой библиотеке хine-lib, которая поддерживает многочисленные фронт-энды. Разработчики предагают только один из них – хine-ui (рис. 3.7). При этом номера хine-lib и хine-ui часто не совпадают, но это не должно пугать. Другими словами, проигрыватель имеет модульную конструкцию, его графическая оболочка отделена от программы воспроизведения, что позволяет использовать альтернативную. Любой новый кодек можно добавить на лету, при каждом запуске приложение обновляет их список.
Рис. 3.7. Cкин по умолчанию в xine-ui
В Kubuntu для установки используйте пакет хine-lib и один из понравившихся фронт-эндов, найти которые можно, введя sudo apt-cache search хine. Это могут быть пакеты хine-ui, gхine, oхine (целый медиацентр на его базе) или любой проигрыватель, о котором говорилось ранее. Как вы уже видели, библиотеку хine-lib используют во многих подобных проектах. Хотя Xine при воспроизведении некоторых форматов также требует сторонние библиотеки, как, например, liba52, libmpeg2, FFmpeg, libmad, FAAD2, и для доступа к зашифрованным Video DVD – libdvdcss. Как и в MPLayer, поддержка остальных форматов может быть реализована путем подключения двоичных кодеков. Стоит также отметить, что Xine отлично работает с потоками MPEG2-TS, которые используются при кодировании сигналов спутникового ТВ, получаемого с DVB-карт (тот же MPlayer приходится перезапускать каждый раз при переключении каналов).
Официальный сайт проекта расположен по адресу http://xinehq.de/. Проект возник в 2000 году, когда его основатель Гюнтер Бартш посетил LinuxTag (ежегодная выставка, посвященная свободным продуктам, проходящая в Германии), где познакомился с процессом воспроизведения DVD в Linux. В то время это был настоящий кошмар для пользователя данной системы. До версии 0.5 проигрыватель работал нестабильно, но после его стали рекомендовать пользователям. Одним из несомненных достоинств этого проигрывателя является возможность вручную замедлять (клавиша N) и ускорять (M) аудиопоток по отношению к видеопотоку.
После установки, особенно если она производилась из исходных текстов, чтобы не настраивать все параметры вручную, желательно запустить утилиту хine_check, которая поможет автоматически сделать все настройки, необходимые для нормальной работы программы (сервер звука, видеодрайвер и так далее). После этого можно запускать программу. Внешний вид интерфейса, идущего в комплекте, можно изменить с помощью скинов. Сделать их доступными для программы можно, распаковав полученный архив в $prefix/share/xine/skins (установив права 755) или лучше – в $HOME/.xine/skins. Проигрыватель работает со всеми возможными форматами файлов, а также с различными видео– и аудиокодеками. Возможен также запуск с различными драйверами аудио (OSS, ALSA, aRts и другие) и видео (Xvideo, XShm, OpenGL, SDL, ASCII Art library, Syncfb, framebuffer), имеющимися в Linux. При запуске в командной строке программе можно передать некоторые параметры и просмотреть результат ее работы, включая возможные ошибки и количество выпавших кадров. Например, параметр -A позволяет задать используемый аудиодрайвер, и иногда после запуска, если перед этим его неправильно установили в параметрах, Xine заканчивает работу. В случае если вы не знаете вообще, какой драйвер может использоваться, можно набрать -A null и затем установить его при помощи настроек. Аналогично этому для видео есть параметр -V. Все значения затем автоматически записываются в конфигурационный файл ~/.Xine/config. Параметр -f позволяет запустить воспроизведение сразу в полноэкранном режиме, -g – спрятать графическую оболочку после старта, -B выводит окно без рамки вокруг, -p запускает воспроизведение сразу после активации, а параметр -G WxH[+X+Y] позволяет задать размер и положение окна просмотра. Например, хine -G 800x600 установит размер окна 800 x 600 пикселов, а если запустить проигрыватель с параметром -n, появляется интересная возможность управлять Xine через сеть. Для реализации этого необходимо создать файл ~/.Xine/passwd и в нем добавить строки, разрешающие пользователям подключаться, иначе вы получите сообщение вроде «ERROR: there is no password file for network access.!». В самом общем случае там может быть прописана строка ALL:ALLOW, разрешающая управление всем пользователям. Теперь в файл /etc/services добавьте следующую строку:
Xinectl 6789/tcp # Xine control
Для подключения к Xine по сети следует использовать программу telnet.
$ telnet localhost 6789
Теперь для получения списка доступных команд введите help, а об используемых далее командах можно узнать, набрав help название команды или syntax название команды.
Есть еще один интересный параметр – MRL (media resource locator – локатор медиаресурсов). Запустив с ним Xine, можно передать в него видеофайл, набрав путь к нему в строке web-браузера: file://<путь>, fifo://<путь>, stdin://mpeg2, tcp://<узел>:<порт>, http://<узел>, vcd://<номер дорожки>. Это удобная возможность смотреть видео через Интернет.
Xine можно управлять с помощью комбинаций клавиш. Перезакрепить их можно в файле ~/.xine/keymap, который имеет вполне понятную структуру. Необходимо учитывать, что клавиша расширения соответствует Alt на клавиатуре. Кроме вышеперечисленных конфигурационных файлов, чтобы не задавать каждый раз аргументы в командной строке, можно использовать дополнительно файл ~/.xine/xinerc, например: