10 лет назад 10 марта 2009 в 17:51 91

Vista Media Center – доводим до ума

Автор: Сергей Трошин

Главная идея любого медиацентра – полная логическая завершенность: система должна воспроизводить все, что необходимо, прямо из коробки. Любого, но только не медиацентра от Microsoft. Такие пляски с бубном, которые требуются порой для доведения Vista Media Center до ума, не снились ни одному линуксоиду.

Корень проблемы в том, что Vista Media Center (VMC) преследует все тот же застарелый рок Windows – отсутствие встроенных кодеков для наиболее популярных видеоформатов. Что тут скажешь, если даже в самом последнем обновлении для VMC – Windows Media Center TV Pack 2008 – не сделали поддержку H.264, одного из главнейших форматов современного видео высокой четкости. Вроде бы в Windows 7 ситуация с кодеками наконец-то должна сдвинуться с мертвой точки. А пока берем в руки прочный рашпиль и кувалду (то есть делаем образ системного раздела Windows Vista, чтобы в случае неудачных экспериментов можно было все легко вернуть назад) и приступаем к доводке системы, пытаясь подружить ее не только с уже не очень интересным DivX, но и с все более набирающим популярность HD-видео. Попутно попробуем разобраться, а что еще интересного можно прикрутить к медиацентру? Ведь видеоразвлечения отнюдь не ограничиваются только скачанными с torrents.ru HD-рипами – тот же любительский YouTube частенько дает фору самому дорогому голливудскому (а потому крайне тупому) блокбастеру.

УСТАНОВКА КОДЕКОВ

VMC, по идее, должен использовать системные кодеки, а потому, чтобы научить его понимать современные видео- и аудиоформаты, этому надо сначала научить саму систему в целом. Подходов к решению этой задачи может быть несколько. Одни пользователи считают, что надо ставить только то, что необходимо, то есть обходиться минимумом посторонних файлов в системе, доустанавливая в случае чего отсутствующие декодеры. Другие предпочитают сразу ставить пакеты “все в одном”, чтобы какой бы ролик ни попался под руку, он гарантированно отобразился проигрывателем. Третьи ловят блох по части качества, споря до хрипоты, какой же MPEG-декодер меньше “мылит” картинку. А четвертым непременно подавай хардверное ускорение воспроизведения как можно большего числа типов видеофайлов – зря что ли они крутую видеокарту покупали? Поэтому мы в данном случае тоже рассмотрим несколько вариантов дооснащения системы кодеками. Это имеет смысл еще и потому, что позволяет в случае каких-то проблем удалить неудачную комбинацию и попробовать пойти кардинально другим путем.

Вариант первый – самый простой, с использованием уже готового пакета кодеков Vista Codec Package. Этот пакет хорош тем, что не требует от пользователя каких-то серьезных знаний – он сам делает все, что необходимо, и его настройки по умолчанию оптимальны для нашей задачи. Кроме того, при установке он удаляет конкурирующие пакеты кодеков, дабы избежать конфликтов, не содержит лишних плейеров, не меняет файловые ассоциации, русифицирован. В последних версиях пакет содержит поддержку E-AC3 и Dolby TrueHD, имеет в своем составе качественный декодер Cyberlink MPEG2, обеспечивает акселерацию H.264, а наличие его 64-разрядной версии позволяет применять Vista Codec Package даже на 64-битных системах. Но самое главное – пакет оптимизирован для работы с Windows Vista вообще и с Media Center в частности. В его основе лежит небезызвестный FFDSHOW, а потому с ним будет нормально работать плагин MediaControl, необходимый для перемотки при проигрывании медиафайлов и для переключения между аудиодорожками и требующий для своей работы именно FFDSHOW.

Чтобы при использовании Vista Codec Package задействовать аппаратное ускорение при воспроизведении H.264-контента, запустите в меню “Пуск” – “Программы” – VistaCodecs – 32bit Tools H264 Settings апплет enable DXVA codec. Однако учтите: если файл закодирован таким образом, что его акселерация невозможна, в этом случае автоматического ее отключения может не произойти, и файл не будет проигрываться. Придется либо отключать акселерацию, либо переключаться на другой декодер. Так что акселерацией злоупотреблять тоже не стоит, особенно если система достаточно мощная – в ряде случаев она может даже провоцировать “синие экраны смерти”.

В принципе, после установки этого пакета какие-то дополнительные телодвижения не должны понадобиться – он содержит все необходимое для большинства современных файлов. Единственное, не исключено, что FFDSHOW из состава пакета не перехватит на себя какие-то типы файлов, из-за чего возникнут проблемы с плагином Media Control. В этом случае проконтролируйте в настройках FFDSHOW, разрешено ли в них воспроизведение видео этих типов, и в самом Media Control удостоверьтесь, что он видит установленный FFDSHOW (для этого имеется специальная диагностическая утилита).

Если же окажется, что что-то в VMC не воспроизводится, то действия должны быть следующими. Если проблемный файл не видится только в VMC, а Windows Media Player его воспринимает нормально, то попробуйте импортировать в реестр такой REG-файл (на примере MKV-файла, для файлов других типов, например m2ts, аналогично):

REGEDIT4

[HKEY_CLASSES_ROOT\.mkv]

“Content Type”=”video”

“PerceivedType”=”video”

[HKEY_CLASSES_ROOT\.mkv\PersistentHandler]

@=”{098f2470-bae0-11cd-b579-08002b30bfeb}”

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Multimedia\WMPlayer\Extensions\.mkv]

“PerceivedType”=”video”

“Permissions”=dword:0000000f

“Runtime”=dword:00000007

“UserApprovedOwning”=”yes”

Если же файл не воспринимается и в WMP (или есть звук, но нет видео, или есть видео, но нет звука), то откройте его с помощью утилиты Gspot (www.headbands.com/gspot) и посмотрите, какие кодеки в нем используются – отсутствующий кодек надо будет просто скачать (Google поможет его найти) и доустановить.

Возможен и гораздо более серьезный глюк: если декодер, а то и не один, для данного типа файлов в системе уже имеется, но он работает некорректно и требуется его смена на другой. Тут понадобится помимо Gspot еще одна утилита – GraphEdit. Она наглядно покажет, через какие сплиттеры (компоненты, разделяющие видео, аудио и субтитры) и декодеры (аудио и видео) проходит сигнал в вашей системе. Если, например, вместо ожидаемого сплиттера Haali Media Splitter вы увидите что-то иное, не пропускающее через себя какой-то из потоков сигнала (аудио или видео), или вместо желаемого Cyberlink MPEG2 codec будет, например, завалявшийся в системе декодер от Nero, то откройте Gspot, выберите System – List Codecs and other filters, найдите нужный декодер и, выбрав в контекстном меню команду Set Filter Merit, повысьте ему приоритет. Аналогичным образом приоритет нужно понизить нежелательному или сбойному декодеру. После этого все должно заработать нормально – проверьте в том же GraphEdit, произошла ли смена декодеров в тракте сигнала.

Максимум же гибкости (и стабильности) дает второй вариант установки кодеков – полностью ручной. В этом случае вы можете комбинировать самые разные декодеры в зависимости от ваших предпочтений. Хотите – устанавливайте наиболее качественные с вашей точки зрения, хотите – ставьте такие, которые используют аппаратное ускорение видеокарты, и т. д. Тут могут быть разные варианты. Для комфортного просмотра MPEG-2 (а это, в первую очередь, DVD) очень неплохо подходит сочетание Gabest MPEG Splitter и Gabest MPEG Decoder (имеются в составе многих пакетов кодеков), но кто-то предпочитает устанавливать платный декодер BitControl MPEG-2/4, H.263 Video/Audio Decoder, поскольку он использует аппаратное ускорение и выдает более качественную картинку. (Сплиттер в этом случае можно оставить и Gabest.) Подойдет и также хорошо справляющийся с m2ts декодер от Cyberlink – его даже лучше устанавливать вместе с плейером PowerDVD последней версии, поскольку с ним идет официальный плагин для VMC. Или декодеры, поставляемые производителем видеокарты; как правило, они имеют поддержку хардверной акселерации. И еще один неплохой вариант – ArcSoft TotalMedia Theatre – мощный пакет, поддерживающий самые современные HD-носители и также имеющий специальный плагин к VMC.

Кстати, такой большой выбор декодеров для MPEG-2 порождает еще одну проблему: как заставить VMC использовать именно тот декодер, который нужен, если в системе их установлено несколько? Например, если драйверы видеокарты поставили свой декодер, а вы хотите попробовать, скажем, BitControl. В этом случае для выбора кодека используйте простейшую утилиту Vista Media Center Decoder – VMCD. Но тут есть небольшой нюанс: не все кодеки изначально можно с помощью этой утилиты назначить для использования с VMC. Например, с кодеком WinDVD она может не сработать. В подобной ситуации надо сначала скачать и запустить утилиту Windows XP Video Decoder Checkup Utility, в ней следует указать нужный кодек в качестве дефолтного и уже потом запускать VMCD.

Для фильмов, использующих кодек H.264 (это в основном HD-рипы), лучше всего подходит сочетание необходимого для работы с контейнерами MKV/OGM Haali Media Splitter и отличного кодека CoreAVC H264 Video Decoder Pro. Последний хоть и является до сих пор чисто софтовым декодером (акселерация обещана, но все еще отсутствует), тем не менее едва ли не самый быстрый на сегодняшний день (говорят, Media Control с ним тоже работает). Учтите только, что если вы поставите CoreAVC, то поддержку H.264 в FFDSHOW надо будет отключить, плюс желательно для AVI-файлов использовать не Haali Media Splitter, а штатный системный компонент AVI Splitter (сплиттеры также меняются с помощью Gspot и GraphEdit). Впрочем, как альтернативу для H.264 можно предложить декодер от Media Player Classic Home Cinema – распаковав архив программы, надо просто зарегистрировать в системе одну ее библиотеку: regsvr32 /s MPCVIDEODec.ax.

Разумеется, не стоит забывать и об обычном видео – для его успешного декодирования можно ограничиться либо достаточно стабильным DivX, либо поставить все тот же FFDSHOW, который помимо того что очень быстр и конфигурабелен, еще и сам по себе поддерживает кучу самых разных контейнеров и форматов, вплоть до TS или ютьюбовского FLV (а это важно, если вы захотите поставить плагин для работы с YouTube). Без поддержки DivX/Xvid не обойтись, так как многие HD-рипы идут в виде Xvid в AVI-контейнерах.

И наконец, для вывода многоканального звука через SPDif и ресивер нужен AC3Filter и при необходимости – CoreAAC, если AAC-декодер в FFDSHOW отрабатывает какой-то фильм некорректно. На десерт – directVobSub для поддержки субтитров.

Впрочем, даже идеально подобранная комбинация кодеков совершенно не исключает проблем с воспроизведением HD-рипов 1080p. Многое зависит еще и от того, насколько криво они закодированы. Так что не удивляйтесь, что для части фильмов вам все же придется переключаться из удобной оболочки VMC в какой-нибудь более всеядный проигрыватель типа CorePlayer.

ПЛАГИНЫ

Плагинов, совместимых с медиацентром из состава Windows Vista, вообще говоря, не так уж и много, а полезных среди них и того меньше. C точки же зрения нашей задачи, то есть оптимизации медиацентра, стоит обратить внимание на несколько наиболее интересных медиаплагинов. Например, на служебный плагин MediaControl, который нужен прежде всего для поддержки перемотки видеофайлов (круто конечно, но VMC изначально этого почему-то не умеет делать), а также для переключения между звуковыми дорожками, что для многих HD-рипов более чем актуально, так как в грамотном рипе обычно есть и оригинальная дорожка, и русский дубляж. Кроме того, MediaControl позволяет работать с субтитрами, регулировать яркость, контрастность и другие параметры изображения, запоминает последнюю позицию файла, делает закладки, применяет постпроцессинг для большинства источников – и все это с поддержкой управления с пульта ДУ. Так что плагин действительно ценный, в том числе и потому, что не просто предоставляет какие-то фичи, но и позволяет их оперативно настраивать, например выставлять задержку для субтитров или обрезать черные поля у картинки. Единственное ограничение – официально он работает только в том случае, если у вас установлен и используется для декодирования FFDSHOW.

Следующий интересный плагин добавит в VMC еще один популярный источник видео – YouTube, который с недавнего времени поддерживает и HD-ролики, и ему подобные сайты. Называется он Yougle Vista и умеет показывать (и даже сохранять на диск!) видеофайлы с сайтов Apple Trailers, YouTube, MSN Soapbox, WWITV, DailyMotion, Chasers War on Everything, The Media Center Video Show, Yahoo! Music, ZeroPunctuation и – внимание! – South Park! Правда, последний сайт заявлен почему-то только для жителей США, но с помощью прокси-серверов с этой проблемой можно справиться – у нас так он вообще открывался нормально без всяких извращений. (Кстати, этот плагин, как и некоторые другие, запускать в медиацентре надо из меню “Программы”.) Плохо только, что поиск на кириллице с виртуальной клавиатуры невозможен – только с реальной. Но и это не все. Плагин способен воспроизводить еще и аудио с сайтов The Media Center Show, Live365, Shoutcast, картинки с Flickr и ICanHasCheezburger, а также анимацию с Strongbad Emails и NeuroticallyYours. Конечно, в основном это все англоязычные ресурсы, но вот на том же YouTube навалом и русских роликов (кириллица в названиях поддерживается), так что в пользе плагина можно не сомневаться. В конце концов, можно сделать заявку на свои источники сетевого медиаконтента.

Для классического же интернет-телевидения существует отличный плагин MiraWorldTV, в постоянно обновляемой базе которого буквально тысячи ТВ-каналов со всего мира – одних только спортивных порядка 60. Разделение по жанрам, кстати, очень удобно и довольно грамотно. Новости, музыка, образование, детям и так далее. В разделе “Страны” видим Россию и около 50 телеканалов. Впрочем, таким цифрам радоваться особо не стоит – практически в каждом разделе изрядное число каналов нерабочие, но в интерфейсе программы есть ссылка, позволяющая обратить внимание разработчиков на это безобразие. И надо учитывать, что качество веб-трансляций очень разное, что особенно заметно на хороших телевизорах. А чтобы не путаться в длиннющих списках и отобрать раз и навсегда все интересные и реально существующие, можно воспользоваться разделом Favorites.

Еще один обязательный к установке плагин – MceFM. Он предназначен для работы с небезызвестным Last.fm. Впрочем, обязателен он, пожалуй, для тех, кто любит этот сайт и регулярно его использует. Другим же, возможно, больше подойдет плагин mcShoutCast, который поддерживает порядка 13 тыс. интернет-радиостанций, позволяет создавать собственные списки избранных и даже записывать треки. Полный набор необходимых атрибутов присутствует: поиск, обложки, Top-500 радиостанций и тому подобное. Русских станций на данный момент 26, но плагин чуть ли не каждый день автоматически обновляется.

Отлично впишется в концепцию центра развлечений и плагин EMUCenter – интегрирующаяся в интерфейс VMC оболочка для удобного запуска игр, причем как обычных “виндовых”, так и приставочных, с помощью встроенных эмуляторов. При этом поддерживается более чем внушительный набор классических игровых консолей недавнего прошлого: Arcade (через популярнейший эмулятор MAME), Atari Lynx (Mednafen), Atari 2600 (Stella), Gameboy (VirtualBoy/MESS/Mednafen), Gameboy Advance (VirtualBoy/MESS/Mednafen), Gameboy Color (VirtualBoy/MESS/Mednafen), Nintendo 64 (Project64), Nintendo Entertainment System (NESTopia/Mednafen), Sega SG-1000/SC-3000 (Kega Fusion), Sega Genesis (Kega Fusion), Sega Master System (Kega Fusion), Sega Saturn (Kega Fusion), Super Nintendo (ZSNES), Wonderswan (Mednafen). Конечно, 8- и 16-битные приставки – это вам не в GTA4 рубиться, но что может быть лучше, чем полчаса кровавого мордобоя Mortal Kombat 3?! Были бы хорошие геймпады…

Ну и напоследок плагины по мелочи. Для просмотра прогноза погоды отлично подходят плагины Heatwave и mceWeather. Ленту новостей покажет RSS-reader, ну а подогнать интерфейс VMC под свои вкусы поможет программа MC Menu Mender. Если же на подключенном к медиацентру телевизоре вы хотите видеть обычный веб-браузер, то надо всего лишь установить плагин MCEBrowser. Учтите только, что 64-разрядная его версия еще находится в разработке.

Скопированные на жесткий диск DVD в виде стандартных папок VIDEO_TS надо запускать не из “Видеотеки”, а из “Воспроизведения DVD”. Кроме того, необходимо создать в реестре такой параметр:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Media Center\Settings\DvdSettings

“ShowGallery”=”Gallery”

А чтобы в библиотеке VMC показывались еще и обложки DVD, необходимо в папку с каждым DVD положить файл обложки, имеющий имя folder.jpg.

Если какой-то плагин не инсталлируется, объясняя это тем, что может быть установлен только на Vista, а вы и так ставите его на Vista Media Center, откройте раздел реестра

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Media Center

и измените в нем параметр Ident version, установив значение 5.0, после чего запустите установку плагина, и когда он установится, верните параметру исходное значение Ident value = 5.1