Как-то давно я уже рассказывал о том, что у нас в офисе есть сервер IPTV, как мы его называем, а в реальности просто примитивный медиаплеер, собранный из подручных средств с целью проигрывания одного канала в формате IPTV на экранах ЭЛТ-телевизоров в разных кабинетах. По сути дела, все это можно реализовать путем установки одного единственного медаплеера D-Link DIB-120, а выходные RCA подключить через конвертер к антенному кабелю (это, кстати, реально действующая схема у одного из кабельных операторов телевидения), но у нас нет этой приставки, зато есть куча списанного железа от серверов и офисных компьютеров. Чаще всего, это полностью работоспособное железо, которое списано по причине модернизации — сервера обновляются достаточно часто, с настольными же ПК другая тема: замена процессоров на более мощные требует замены и материнских плат (или вам попадались четырехъядерные процессоры на Socket 462?), и оперативной памяти, и видеокарт, так как DDR успешно вытесняется DDR-2, а видеокарты на базе AGP — видеокартами на базе PCI-E. Ясное дело, что на складе собирается масса оборудования для экспериментов, с которым мы и развлекаемся, ибо иначе оно просто превратится в ржавые куски металла. В данный момент имеем такую конфигурацию: двухъядерный сервер с видеокартой Nvidia GeForce 4 MX440, которая имеет S-Video выход, к которому подключен конвертер в аналоговый кабельный сигнал.
А к чему эксперименты? А к тому, что в один прекрасный день все запустилось как положено, а потом взяло да и начало замирать на одном кадре, после чего уже ни мышь, ни клавиатура ничему помочь не могли. Я ошибочно подумал, что причина тут в обновлении драйверов видеокарты. Небольшое отступление: сервер работал на Debian 7, так как из репозитория Debian 8 успешно выпилили драйвера для вышеуказанной видеокарты, а достойно настроить вывод видео через nouveau у меня так и не удалось (ну не видит она видеовыход и все тут!). В процессе экспериментов видео уже так замирало, поэтому я подумал, что кто-то просто обновил программное обеспечение без моего ведома не оценив предварительно возможные последствия.
Бей своих, чтобы чужие боялись
Взял я, да и удалил Debian 7. Почему-то мне показалось, что Windows XP справится с функциями намного лучше, учитывая то, что она современница всего этого железа, да и драйвера на нее в Интернете имеются в сводном доступе. В довершение ко всему, у нас есть еще и лицензия на эту операционную систему, пусть ее уже никто и не проверит в связи с прекращением коммерческой поддержки. Ok, вставил установочный диск и ничего не понял: установка доходит до половины (когда из псевдографического интерфейса мы уже переходим в полноценную графику) и BSOD. Ну ладно, перезапустил. Теперь круче: установка вообще замирает после форматирования диска и клавиатура перестает работать в полной мере (пропадают индикаторы и не зажигаются после нажатия соответствующих клавиш). Стало ясно: одна из планок оперативной памяти приказала долго жить. Вынул ее, да и отправил на склад с отметкой «Утилизация». Вот незадача, памяти-то серверной того времени у нас нет! Ну, есть, конечно, 128Мб, но они вряд ли что-нибудь изменят. Ok, завершаем установку да и входим в свежую (насколько, конечно, можно назвать свежей операционную систему, выпущенную более десяти лет тому назад) систему.
Дыхание прошлого
Вспомнил свои школьные времена, установил драйвера и медиаплеер с CD-дисков. Вроде бы все в порядке, Nvidia определяет телевизионный выход, но не дает использовать его одновременно с монитором. А мне оно и не надо, так как монитор я специально приволок со склада на время установки и, по большому счету, его и ставить-то там негде. Запускаю медаплеер и понимаю, что нормально работает только несколько каналов, остальные же при открытии намертво глушат VLC таким образом, что он начинает потреблять 100% процессорных ресурсов, но ни через какое время не начинает отвечать на запросы. Почитал форумы: нет кодеков, нет DirectX, устаревший драйвер видеокарты. Решил проверить сразу все возмодные варианты, установил все возможные для IPTV драйвера, установил последнюю редакцию DirectX, совместимую с Windows XP, драйвер не трогал, так как он итак последний. Ни-фи-га. Как оказалось, Windows XP — современница железа, но не IPTV.
Чем дальше в лес, тем больше дров
Решил установить Windows Vista Business. Ее нам как-то дали в комплекте с каким-то из настольных компьютеров, но коробочку с диском так никто и не распечатал. Успешно прошел всю установку, начал искать драйвера. Замечательно! Nvidia их под Vist’у банально не делала! В интернете посоветовали установить драйвера от Windows XP в режиме обратной совместимости, что я и сделал. Ну, система, конечно, успешно запустилась, но пользы от всего этого мало, так как при открытии IPTV в VLC все немедленно завершалось синим экраном и перезагрузкой. Тут я понял, что с этой видеокартой мы счастье не построим, да и заменил ее на имевшуюся на складе ATI Radeon 9600 Pro. Удивительным образом сразу же нашлись актуальные драйвера, да еще и на официальном сайте. Лично для меня спор «Nvidia vs ATI» на этом был завершен. Только радости-то, вот, совсем мало: после перезагрузки все замечательно заработало, но многие каналы на минимальных требованиях к качеству выглядели просто отвратительно — кадры замедлялись, звук шел асинхронно с видео, причем каждый раз на произвольное количество времени, некоторые каналы вообще делились на две или три части в высоту и обновлялись поэтапно, что создавало впечатление нескольких экранов одновременно, часть из которых отстает. Такое качество не подходит даже для внутреннего телевидения, поэтому Vist’е пришлось помахать ручкой.
Ubuntu? Ну что вы!
Из всех известных мне дистрибутивов Linux я решил взять Ubuntu (но в редакции с xfce — Xubuntu), так как я еще помню танцы с бубном на Debian и представляю себе, сколько дней будет собираться на этой машине Gentoo с графическим интерфейсом. У ATI есть одна интересная особенность: она показывает видео через S-Video сразу после запуска компьютера, то есть, работает без драйверов (на Nvidia же видеовыход вообще не определялся без драйвера). Debian я уже помню, когда извращения с nouveau заканчивались тем, что видеовыход срабатывал только после авторизации в системе, до нее же изображение выводилось только на VGA-монитор. Я решил немножко схитрить и запустить Xubuntu с LiveCD для того, чтобы скопировать все настройки на рабочей конфигурации, а затем просто применить их после установки. Представьте себе, каково было мое удивление, когда LiveCD запустился и загорелись одновременно и монитор, и телевизор. То есть, по сути, мне вообще не нужны никакие драйвера, так как мне не нужно два рабочих стола на отдельных мониторах. На всякий случай отключил монитор от системы и продолжил установку через телевизор. Через полчаса у меня уже был полностью готовый медиаплеер для IPTV, который тормозил только на HD-каналах (что, впрочем, и не удивительно, так как на все остался только 1Гб оперативной памяти). Я даже не думал, что все будет настолько просто.
Теперь мое новое извращение — это попытка заставить D-Link DIB-120 проигрывать IPTV при помощи HLS, а не через локальное вещание. Да, самого DIB-120 у меня нет, я изучаю тему удаленно для того, чтобы понять, есть ли смысл в его приобретении, или нет.