Современные технологии все глубже проникают в нашу жизнь. Появляются устройства, о которых мы раньше и не мечтали, но без которых уже не представляем свою жизнь. Так и компьютер: из инструмента, предназначенного для работы, он постепенно превратился в центр развлечений, где можно поиграть, посмотреть фильм и послушать музыку. Но теперь и этого мало — нужна удобная и простая в использовании оболочка, которая сможет объединить разнородные по задачам инструменты под одной крышей. В Linux есть подобные решения. Ты не знал? Тогда вперед!

 

Проект MythTV

Первоначальным назначением MythTV было наделить компьютер, имеющий ТВ-тюнер, функциональностью «живого телевидения». Используя единое приложение, можно было смотреть телепередачи, записывать их по расписанию, пропускать рекламу, перематывать вперед/назад, делать паузу. В общем, система работала как интеллектуальный видеомагнитофон. Основной упор был сделан именно на функции захвата видео, которая весьма тесно завязана с планировщиком. Готовые записи можно было монтировать, вырезая ненужные фрагменты (например, рекламу) и экономя таким образом свое время и дисковое пространство.

Идея народу понравилась, и через некоторое время с помощью дополнительных модулей MythTV научился показывать видеофайлы, хранящиеся на жестком диске, и проигрывать DVD. С его помощью стало можно прослушивать музыку, разбирать по категориям и преобразовывать mp3/Ogg/FLAC/CD-аудиофайлы, создавать плей-листы, просматривать изображения, серфить веб и читать RSS-новости.

Сейчас отдельные модули MythTV позволяют выводить информацию о погоде прямо в основном окне программы, разговаривать с помощью SIP. Любителям игр MythTV тоже полезен, так как позволяет запускать PC’шные игры и через эмуляторы MAME, NES, SNES и т.д. (поддерживается работа с 16 эмуляторами). Если в первых версиях для просмотра DVD и видео использовались только внешние программы, вроде MPlayer или Xine, то сейчас доступен встроенный проигрыватель, что упрощает настройку и уменьшает количество дополнительных приложений.

Системные требования, предъявляемые к компьютеру, в целом зависят от того, для чего, собственно, будет использоваться MythTV. Для большинства повседневных операций, вроде просмотра видео, слайд-шоу и прослушивания музыки, компьютера с процессором 733 МГц и 256 Мб ОЗУ хватает с головой. Если же планируется захват видео, то требуется процессор как минимум в 2 раза мощнее. Кроме того, при захвате видео необходимо наличие свободного места на диске, так как час «сырого» видео может занять около 8 Гб. Файловая система ext2/3 поддерживает максимальный размер файла не более 4 Гб, поэтому раздел весьма желательно отформатировать в ReiserFS или XFS.

Если на компьютере установлено несколько видеокарт, то это только увеличит возможности, позволяя при просмотре реализовывать режим «картинка в картинке», а при захвате записывать информацию сразу с нескольких источников. В качестве драйверов используется Video4Linux, поэтому к выбору видеокарт следует подойти очень серьезно. Еще попадаются поделки, которых даже в Windows тяжело заставить нормально работать. Изображение, естественно, можно вывести на телевизор и управлять изображением дистанционно, используя пакет LIRC, причем, как это странно ни звучит, последний поддерживает большее количество пультов, чем Windows XP Media Edition.

В MythTV использована клиент-серверная архитектура, поэтому серверный компонент можно разместить на более мощной машине и затем подключаться к нему по сети, прописав в свойствах клиента его параметры.

 

Установка MythTV

На момент написания статьи последняя версия — 0.20. Несмотря на то что, судя по номеру, продукт еще далек от финального релиза, стоит заметить, что, начиная с версии 0.16, MythTV можно считать вполне работоспособным и стабильным приложением. Это косвенно подтверждается и его включением в репозитарии пакетов многих дистрибутивов. Учитывая множественные зависимости, лучше устанавливать MythTV именно таким способом. Для Red Hat Linux/Fedora Core поищи пакеты на atrpms.net/topic/multimedia, для Debian – на сайте debian.video.free.fr, для Mandriva – на rpm.nyvalls.se. Пользователи Slackware или дистрибутивов, использующих его пакеты, могут обратиться к ресурсу
www.linuxpackages.net. Кстати,
для Debian доступен скрипт A.M.I.C.U.S.Automatic Multimedia Installation Configuration Utility System (sf.net/projects/amicus), задача которого — упростить процесс установки и получить функционирующий MythTV. В KUbuntu все необходимые пакеты можно найти, набрав команды:

$ sudo apt-get update
$ sudo apt-cache search mythtv

В результате будет получен длинный список, включающий и все модули в отдельных пакетах. Для минимальной установки достаточно ввести:

$ sudo apt-get install mythtv mythplugins mythcontrols

В качестве зависимостей указан и GDM, поэтому в процессе установки будет выдан запрос о том, какой из менеджеров входа в систему использовать: KDM или GDM. Можно оставить KDM, тем более что он более симпатичный и удобный. В Ubuntu есть пакет ubuntu-mythtv-frontend собственной разработки, представляющий собой фронт-енд к программе настройки mythtv-setup. После установки его ярлык спрячется в меню «К -> Настройка -> MythTV Backend Setup». Если ты желаешь собрать MythTV самостоятельно, в KUbuntu следует выполнить следующие команды:

$ sudo apt-get build-dep mythtv mythplugins
$ sudo apt-get source mythtv mythplugins –compile

После этого будут загружены все пакеты, необходимые для сборки, и проведена компиляция. Если планируется установка самой последней версии MythTV, то вторую команду вводить не нужно. Пользователей других дистрибутивов, чтобы не занимать драгоценное журнальное место, за списком зависимостей отсылаю к сайту проекта и документации, идущей вместе с основным архивом. Как минимум при самостоятельной компиляции тебе потребуются: библиотеки Freetype 2, заголовочные файлы QT версии не менее 3.3 (с 4.х не работает) и XMLTV для работы с ТВ-списками. Кроме того, понадобится работающая версия MySQL. Для последней необходимы Qt-модули (libqt3-mysql). В KUbuntu ставим:

$ sudo apt-get install libqt3-mt-mysql

Далее скачиваем дистрибутив MythTV размером 11,8 Мб. В отличие от Freevo, в MythTV плагины доступны единым архивом, что очень удобно. Исключение составляет модуль для Webmin и несколько официально неподдерживаемых плагинов, которые можно найти через поисковики. Рекомендую сразу скачать файл mythplugins и набор тем myththemes, который позволит облагородить внешний вид MythTV.

При наличии необходимых компонентов компиляция происходит без проблем. При конфигурировании (./configure) по умолчанию включены все параметры. Обрати внимание на результат, который будет выдан, вдруг скрипт чего-то не найдет и нужная функциональность не будет включена. Далее вводим:

$ qmake mythtv.pro
$ make
$ sudo make install

Если компьютер имеет несколько процессоров, то вместо второй команды лучше ввести «make qmake; make -j 2». Установка плагинов ничем не отличается: распаковываем архив, заходим внутрь и вводим команды:

$ ./configure
$ qmake mythplugins.pro
$ make
$ sudo make install

И темы:

$ tar xjvf myththemes-0.20.tar.bz2
$ cd myththemes-0.20
$ qmake myththemes.pro
$ sudo make install
 

Приступаем к настройке

После установки в системе появятся несколько исполняемых файлов, основными из которых являются сервер mythbackend и клиент mythtv. Если MythTV устанавливался с помощью apt, скорее всего MySQL настраивать не придется. Если что-то пошло не так, вначале следует создать базу данных и таблицы, в которых MythTV будет хранить свои настройки. Для удобства в состав дистрибутива входит подготовленный файл mc.sql (при установке из пакетов этот файл находится в /usr/share/mythtv/sql), поэтому процесс не очень сложен:

$ sudo /etc/init.d/mysql restart
$ mysql -u root < mythtv-0.20/database/mc.sql

Все, на этом предварительный этап настройки можно считать завершенным. Дальше все действия будут осуществляться с помощью графического интерфейса. Вводим mythtv-setup (или выбираем MythTV Backend Setup), в результате чего должна загрузиться оболочка. Первым делом программа запросит очистить текущую конфигурацию карт видеозахвата и настройки видео, если они есть. Здесь нужно согласиться, чтобы в дальнейшем избежать неожиданностей. После этого станет доступно 5 пунктов меню, советую зайти и просмотреть их все, в большинстве случаев можно оставить значения по умолчанию. При первом запуске попросят выбрать язык, в длинном списке доступен и русский.

Теперь заходим в «Общие» (General) и указываем расположение сервера MySQL. Так как все компоненты находятся на одном и том же компьютере, то оставляем, как есть. Обрати внимание, что межсетевой экран не должен закрывать доступ к TCP-портам 3306 (MySQL), 6543 и 6544 (MythTV). Затем указываем каталог, в который будет сохраняться захваченное видео, локальные параметры телевизионных трансляций и прочее. Заполнив пункт, нажимаем кнопку «Далее».

В «Картах захвата» (Capture Cards) настраиваем устройства захвата видео. Здесь просто: выбираем «Новая карта захвата» и заполняем предложенные параметры. Да, если в компьютере нет ТВ-тюнера, то не пытайся его настраивать, просто выходи по <Esc>. Программа шуток не любит. Иначе при следующем запуске MythTV попытается инициализировать карту и при ее отсутствии может завершиться с ошибкой.

В следующем пункте «Видеоисточники» (Video Sources) аналогичным образом выбираем видеоисточник. В поле «Название видеоисточника» вводим понятное название (например, antenna, cable) и заполняем параметры.

Четвертый пункт «Соединение входов» (Input Connections) — заключительный этап. Здесь связываются различные видеоисточники, ранее определенные с конкретным физическим устройством. И, наконец, в «Редакторе каналов» (Channel Editor) можно изменить параметры каналов, в том числе яркость, контраст и прочее.

После того как все сделано, выходим из программы настройки, заносим параметры в базу данных, вызвав mythfilldatabase, и запускаем сервер mythbackend:

$ /usr/local/bin/mythbackend

В процессе запуска может возникнуть ошибка вроде:

/var/lib/mythtv/recordings/nfslockfile.lock: 
Permission denied
Unable to open lockfile!

Это значит, что текущий пользователь не может записывать информацию в каталог, предназначенный для записи захваченного видео. Следует установить необходимые права:

$ sudo chmod +w /var/lib/mythtv/recordings

Если запуск происходит без проблем, можно прибить процесс и запустить его в качестве демона, добавив опцию ‘-d’. В противном случае сохраняем вывод ошибок в отдельный файл для дальнейшего анализа.

$ mythbackend > /home/sergej/mythbackend.log 2>&1 &

И когда все препятствия позади, запускаем фронт-энд:

$ mythfrontend

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

При помощи уже известной mythfilldatabase можно автоматизировать некоторые операции. Например, с помощью опции ‘—xawchannels’ можно добавить ТВ-каналы, созданные в xawtv. Саму же утилиту mythfilldatabase следует периодически запускать, иначе все текущие настройки могут быть потеряны. Для запуска при помощи cron в каталоге configfiles лежат два скрипта.

$ cp configfiles/mythfilldatabasecron ~/.mythtv
$ cp configfiles/mythcrontab ~/.mythtv
$ crontab ~/.mythtv/mythcrontab

Управлять MythTV можно с клавиатуры или мышкой. В довольно подробной документации описан процесс настройки совместной работы с LIRC, как, впрочем, и остальные рабочие моменты. Примеры конфигурационных файлов для настройки LIRC можно найти в configfiles.

 

Плагины MythTV

Возможности клиентской части MythTV определяются, в том числе, и установленными плагинами, поэтому для полноты картины следует сказать пару слов об имеющихся плагинах. Так, модуль MythWeb дает возможность управлять некоторыми настройками MythTV для записи трансляций через обычный веб-браузер. Для его работы потребуется веб-сервер с поддержкой PHP. В корневой каталог веб-сервера копируем каталог mythweb из архива с плагинами:

$ sudo mkdir /var/www/html/mythweb
$ sudo cp -r . /var/www/html/mythweb

Владельцем новых файлов устанавливаем пользователя, от имени которого запущен веб-сервер:

$ sudo chown -R www-data /var/www/html/mythweb

Теперь, чтобы попасть на нужную страницу, достаточно набрать в веб-браузере «http://IP-adress-server/mythweb».

Другой плагин — MythBrowser — позволяет просматривать веб-страницы прямо из окна MythTV. Поддерживаются вложенные окна, навигация с помощью клавиатуры и пульта ДУ. Наиболее часто посещаемые ресурсы можно занести в менеджер закладок. Для просмотра RSS-новостей в комплект входят два плагина: MythFlix (Netflix) и MythNews (RSS). Полученная информация сохраняется в базе данных. В комплекте уже имеется большое количество ссылок на различные новостные ресурсы.

Модуль MythPhone позволяет настроить в клиенте MythTV работу с VoIP-телефонией. Для регистрации подойдет любой SIP-провайдер. После нее можно звонить на любые телефоны или напрямую, если на другом конце также работает MythPhone. Поддерживаются и некоторые модели web-камер.

Если тебе лень выглянуть в окно, чтобы узнать, какая сегодня погода, настраивай модуль MythWeather — и прогноз погоды будет выводиться прямо на рабочий стол.

Мы поговорили о модулях, позволяющих работать в интернете. Еще в комплекте имеется целый ряд полезных модулей, предназначенных для локального использования. Так, модуль MythDVD представляет собой полноценный проигрыватель DVD с функцией копирования DVD-дисков. MythDVD позволяет выводить картинку на внешние или внутренние проигрыватели видео.

Другой модуль — MythVideo — позволяет воспроизводить видео. Для ускорения поиска файлы каталогизируются. При воспроизведении можно выбрать один из трех режимов просмотра. Также здесь реализованы родительский контроль и получение детальной информации о каждом фильме через базу Internet Movie Data Base.

Для прослушивания музыки предназначен плагин MythMusic. С его помощью также можно составлять плей-листы. Здесь присутствуют все необходимые возможности: перемотка, пауза, несколько режимов воспроизведения, визуализация.

Просмотр фотографий в MythTV тоже простое дело: выбираем плагин MythGallery — и вперед. Плагин умеет поворачивать изображения, работать в режиме слайд-шоу, использовать разные эффекты перехода, генерировать уменьшенные копии изображений.

Надстройка MythGame позволяет играть в старые игры через эмулятор. Для запуска игры понадобится ROM-образ и подходящий эмулятор. Весьма подробно настройка MythGame в различных режимах расписана на WiKi-странице проекта. Поначалу, конечно, придется повозиться, но зато потом приятно будет играть.

И, наконец, последний модуль MythArchive. Его задача – создание DVD-образа. Сюда могут быть записаны телепередачи, файлы, о которых знает MythVideo. Возможно создание диска с меню или без оного. Сюда же включаются все метаданные. Реализован весь список функции записи диска: стирание перезаписываемых дисков, поддержка двухслойных дисков и прочее.

Чтобы описать все возможности MythTV, не хватит и книги, но, я думаю, ты и так уже оценил эту отличную и понятную в настройках систему, позволяющую превратить компьютер в медиастанцию и при этом абсолютно бесплатную.


Полную версию статьи
читай в июльском номере Хакера!

Оставить мнение

Check Also

Мошенничество по воздуху. Разбираем возможность Cryptogram Replay Attack в Apple Pay

Задача платежной системы — списать нужную сумму в пользу продавца со счета верное число ра…