Воспроизведение видео на компьютере

Вступление

Microsoft проделал отличную работу при разработке новой архитектуры для работы с видео ? DirectShow, сменившей Video for Windows. Любая программа-проигрыватель, которая использует DirectShow интерфейс, автоматически сможет использовать другие DirectShow компоненты, установленные в систему: декодеры видео, декодеры звука, splitter'ы (демультиплексоры) для извлечения аудио/видеопотоков из разных форматов файлов-контейнеров, фильтры для их обработки (например, для наложения субтитров).

В интернете можно найти ряд статей, посвящённых настройке компьютера для воспроизведения видеозаписей. Подавляющее большинство таких статей рассчитаны на читателя, обладающего определёнными техническими знаниями. На сайте программы Zoom Player размещена отличная статья для обычных пользователей на английском и немецком языках. Исчерпывающего описания настройки компьютера на русском, написанного простым и понятным языком, мне встречать не доводилось.

Требования к компьютеру

Воспроизведение видео ? очень ресурсоёмкая задача. Основное требование к компьютеру: мощность центрального процессора. К другим подсистемам компьютера требования лишь самые базовые: желательно иметь памяти столько, чтобы Windows не использовала файл подкачки во время воспроизведения видео, даже если оно воспроизводится с отдельного жёсткого диска; от CD привода и жёсткого диска требуется, чтобы они работали в режиме DMA (то есть не забирали на себя ресурсы процессора).

Видеокарта ? с первого взгляда именно она в первую очередь участвует в процессе ? подойдёт практически любая. Начиная с 2000 года все модели поддерживают аппаратное ускорение отображения видеозаписей: так называемый оверлей (overlay, в дравйерах ATI эта функция названа ?Окно?), аппаратное изменение размеров кадра, яркости, контрастности, цветности и насыщенности. Для комфортного просмотра видео функциональность оверлея дложна быть включена. Если в силу каких-либо причин система автоматически его не включает, вы можете при помощи настроек проигрывателя или декодера видео включать оверлей принудительно. На некоторых видеокартах (например, семейство Matrox G400/450) оверлей не включается, если ширина видеозаписи не кратна 32. Для того, чтобы обойти эту проблему, создана специальная программа: DivXG400.

Некоторые видеокарты также позволяют выполнять часть вычислений по декодированию и обработке видео при помощи графического процессора. Правда, для использования таких возможностей нужно использовать специальные программы-проигрыватели. Пдробнее такие программы описаны ниже в разделах Проигрыватели с аппаратным ускорением декодирования MPEG?2 видео и DivX Player.

С процессором разговор особый. Для декодирования видео требуется тем больше процессора, чем большего размера кадр видеозаписи и чем сложнее алгоритм сжатия (точнее, ?разжатия?). Поэтому такая формулировка, как ?процессора с частотой N МГц достаточно для декодирования видео? вообще говоря, не верна: всегда можно найти видео с ещё большим размером кадра и продвинутой компрессией, на декодирование которого мощности процессора не хватит. Например, различные демонстрационные ролики и видеоклипы в MPEG-4 ранее имели преимущественно разрешение в 320 и 640 пикселей в ширину (достаточно компьютера в 300?400 МГц), сегодня мы всё чаще видим 720, 800 (нужен процессор в 800?950 МГц), а иногда и 1024 пикселей в ширину (1,5?1,7 ГГц). Уже начинает своё распространение стандарт HDTV (high definition television, телевидение высокого разрешения, разрешение от 1280x720 до 1920x1080 пикселей) ? понадобятся процессоры быстрее 2 ГГц (согласно рекомендациям Microsoft для воспроизведения HD?видео в формате WMV вам понадобится процессор 2,4 или даже 3 ГГц).

Декодирование различных форматов видео

MPEG?4 видео

Для воспроизведения подавляющего большинства современных видеозаписей нужен декодер MPEG?4: DivX 5, XviD или ffDShow. По идее, чем новее декодер, тем он лучше: более функционален, поддерживает больше форматов и в нём исправлено больше ошибок. Каждый из этих декодеров способен воспроизводить видео со сжатием MPEG?4

Примечания:
1. Форматы сжатия MS MPEG?4 и DivX 3 не вполне совместимы со стандартом сжатия видео ISO MPEG?4, потому некоторые декодеры (например, аппаратные) не способны корректно воспроизводить записи с таким сжатием.
2. Декодер DivX способен воспроизводить те записи, сжатые кодером XviD, которые соответствуют стандарту ISO MPEG?4. Ранние версии кодера XviD сжимали видео не совместимым со стандартом образом. Начиная с версии 1.0 видео XviD полностью соответствует ISO MPEG?4.
3. Декодер DivX версии 5.2 способен воспроизводить записи XviD с несколькими двунаправленными кадрами подрям (multiple b-frames) и с глобальной компенсацией движения с тремя точками привязки (GMC with 3 warp points).
4. Декодер DivX воспроизводит записи со сжатием MS MPEG?4 v.3 после смены подписи кодека (FourCC) на 'DIV3'.

Декодеры MPEG?4 содержат такую функцию, как post-processing (пост-процессинг): обработка изображения специальным образом, при котором скрываются артефакты (искажения) сжатия видео. Есть несколько стандартных алгоритмов post-processing, как правило, состоящих из 6 этапов. Чем больше этапов (уровней) post-processing выполняется, тем больше вычислительных ресурсов необходимо для воспроизведения видеозаписей. Некоторые декодеры имеют функцию автоматического уровня регулирования уровня post-processing: если вычислительных ресурсов вашего процессора не хватает для воспроизведения видео с выбранным уровнем качества, то декодер снижает качество post-processing ? иначе декодеру пришлось бы пропускать кадры видеоряда.

Если в системе установлено несколько декодеров для воспроизведения одного формата, то лишь один из них будет использоваться при воспроизведении видео определённого формата. Определить, какой же из декодеров используется, можно посмотрев список задействованных при воспроизведении DirectShow фильтров: его отображают DivXG400 и VobSub (при любом используемом проигрывателе), а также многие проигрыватели даже без помощи DivXG400 или VobSub: LightAlloy, ZoomPlayer, Media Player Classic, Windows Media Player 6.4 и т.д.

Некоторые настройки ?приоритета? выбора определённого декодера можно изменить при помощи программ по установке/настройке кодеков: например, в XviD: decode DivX, или в DivX: Support generic MPEG?4. Однако не все кодеки предоставляют такие возможности. Система Windows также не предлагает инструментария для настройки приоритетов выбора различных DirectShow фильтров, кодеков и декодеров. Потому имеет смысл устанавливать в систему только один универсальный декодер MPEG?4 видео: это позволит избежать путаницы (например: вы меняете настройки одного декодера, но на практике для воспроизведения видео используется совсем другой).

DivX

Самый распространённый декодер ? это декодер от DivX Networks. Актуальная версия ? 5.2. Имеет функции автоматического регулирования уровня post-processing и добавления шума (эффект киноплёнки, film effect). В комплекте также содержится проигрыватель DivX Player плюс интерфейс всех компонентов переведён на 4 языка: английский, немецкий, французский и японский; потому размер для скачивания довольно велик: 8 Мбайт. (DivX Player поддерживает аппаратное ускорение постпроцессинга на видеокартах ATI Radeon 9500 и лучше.)

Оптимальные настройки декодера DivX



Аutomatic post-processing ? Partial или Full. Второй вариант допускает дополнительную обработку изображения при декодировании видео ? такая обработка может несколько снижать чёткость видео. Настраивайте по вкусу. Для медленных компьютеров можно вовсе отключить постпроцессинг: Disable Post-Processing.

Film effect ? добавляет ?шум киноплёнки? при декодировании, это должно прибавить ?теплоты? киноплёнки в цифровое видео (ещё один миф из серии ?тёплое виниловое звучание?). С другой стороны, наличие шума в картинке позволяет скрыть дефекты чрезмерного сжатия видео. Настраивайте так, как вам больше нравится.

Smooth playback ? ВЫКЛ, иначе некоторые записи будут дёргаться (например, сжатые XviD).

YUV extended ? ВКЛ. Декодирование видео работает быстрее, но в таком случае невозможно корректировать яркость, контрастность и цветность посредством декодера. Как правило, эти настройки удобнее менять в настройках видео адаптера (см. ниже).

Overlay extended ? ВКЛ. При включённом параметре для отображения видео будут обязательно использоваться аппаратные возможности видеокарты (оверлей). Это нужно, в частности, для воспроизведения видеозаписи, когда окно программы-проигрывателя не видно на экране: при наличии ТВ?выхода вы можете одновременно работать за компьютером и смотреть видеозаписи на экране телевизора. Но если вы параллельно запустите на воспроизведение ещё одну видеозапись, то её масштабирование будет производится програмно: почти наверняка это приведёт к рывкам и рассинхронизации звука и видео.
Overlay extended ? ВЫКЛ. Если параметр выключен, то аппаратное ускорение видео будет назначаться автоматически операционной системой той видеозаписи, которая видна на экране поверх других. Если вы захотите посмотреть видео через ТВ?выход вашей видеокарты, то как только окно проигрывателя будет минимизировано или перекрыто другим окном, картинка на телевизоре ?замрёт?. Проблему помогут обойти неоторые драйвера видеокарт: ATI ? Overlay ? Theatre mode, или некоторые проигрыватели проигрыватели: LightAlloy ? Видео ? Принудительно включать оверлей.

Double buffering ? ВЫКЛ, при включении на некоторых видеокартах видео может дёргаться.

Disable Logo ? по вкусу, выключает отображение логотипа DivX в первые секунды воспроизведения видео. Это позволяет легко идентифицировать, используется ли декодер DivX для воспроизведения.

Support Generic MPEG-4 ? ВКЛ, поддержка не-DivX форматов, например XviD.

XviD

Самый маленький кодек ? всего около 640 Кбайт. Считается, что этот декодер реализует самый качественный post-processing изображения. Уровень post-processing регулируется только вручную, есть возможность добавить шум (эффект киноплёнки). Последняя версия ? 1.01.

Оптимальные настройки декодера XviD



В настройках XviD самое важное ? это постпроцессинг. Этот декодер не умеет автоматически снижать качество постпроцессинга в случае полной загрузки процессора. Потому, если видео начнёт ?тормозить? и дёргаться, пропускаются кадры ? нужно уменьшить уровень постпроцессинга: мощности вашего процессора недостаточно для декодирования этой видеозаписи с выбранным качеством. Для этого в разделе Postprocessing отключите использование одного или всех алгоритмов обработки изображения. В разделе FourCC Support вы можете включить поддержку декодирования видео, сжатого DivX 4, DivX 5 и стандартного MPEG 4 видео.

ffDShow



Самый производительный декодер: он минимально нагружает процессор при воспроизведении видео, хотя выигрыш с появлением последней версии DivX стал невелик. Также этот декодер самый универсальный: он позволяет декодировать материал, сжатый DivX версии 3, 4 и 5, XviD, MPEG?1, Microsoft MPEG?4 (v. 1, 2, 3), DV, MJPEG, HuffYUV, Cinepack, Indeo ? всех и не перечислишь. (К слову: ffDShow содержит параметры, которые позволяют декодировать записи со сжатием XviD в режиме совместимости со старыми версиями кодера.) Последние версии также комплектуется собственным декодером звука (mp2, mp3, AC3, AAC, WMA 1 и 2), качество которого, правда, оставляет желать много лучшего (но надо отдать ему должное: декодер mp3 работает быстрее, чем стандартный декодер Windows). ffDShow содержит огромное количество фильтров для обработки изображения: deinterlace, яркость/контрастность, добавление или устранение шума, размытие, увеличение резкости, коррекция перспективы и так далее. Также есть встроенная поддержка отображения субтитров. Чтобы описать все возможности этого замечательного во всех отношениях декодера нужно будет написать отдельную большую статью. Этот декодер первым реализовал технологию автоматической регулировки уровня post-processing. Также в последних версиях часть интерфейса переведена на несколько языков, в том числе и на русский.

ffDShow основан на библиотеке аудио и видео кодирования libavcodec. Как многие проекты с открытыми исходными кодами, эта библиотека постоянно развивается и совершунствуется. Один из участников проекта размещает на своём сайте свежие версии декодера ffDShow (примерно раз в одну?две недели), на сайте другого участника отслеживаются все новости развития ffDShow. С некоторой регулярностью проект выпускает альфа-версии: последняя альфа?версия ? от 8 августа 2004 года. Эти варианты тщательнее тестируются и более стабильны в работе, однако всё же качественной работы вам никто не гарантирует. Если у вас не работает какая-либо версия декодера, попробуйте заменить её на другую. (Практика показывает, что новые версии ffDShow достаточно стабильны и их вполне можно использовать вместо других декодеров, тем более что ffDShow намного более гибок и универсален.)

Программы-проигрыватели

В силу особенностей архитектуры DirectShow, программу-проигрыватель видео для Windows написать не так сложно. При этом автор программы может отвлечься от поддержки разных форматов ? будут автоматически задействованы использоваться системные компоненты при помощи DirectShow ? и сосредоточиться на своих ?фирменных? сервисных возможностях для воспроизведения видео.

По этой причине ниже описаны далеко не все проигрыватели, а лишь самые распространённые. Акцент при описании проигрывателей будет сделан на специфических возможностях программ ? поддержка различных форматов сжатия обеспечивается установленными в систему декодерами.

DivX Player

Проигрыватель, разработанный DivX Networks. Он содержится в пакете установки кодека DivX, поддерживает только самые базовые возможности по воспроизведению видео. Поддержка смены вида интерфейса (skins). Единственная программа, которая поддерживает аппаратное ускорение постпроцессинга (см. раздел ?MPEG-4 видео? выше) в формате DivX на видеокартах ATI Radeon 9500 и старше. Этот проигрыватель не совместим с DirectShow: он способен использовать только встроенные декодеры mp3 и DivX, внешний декодер AC3Filter и может воспроизводить только AVI файлы. Последняя версия ? 2.5.4.



Windows Media Player 7 и новее

Используется как стандартная программа для воспроизведения видео в Windows 2000 и старше, Windows XP содержит 8-ю версию, с сайта Microsoft можно бесплатно скачать 9-ю версию. Программа имеет неудобный интерфейс (особенно в полноэкранном режиме), поддерживает только базовые возможности по воспроизведению видео. Так, в случае наличия нескольких звуковых дорожек в файле, WMP будет воспроизводить все одновременно. Имеет развитые возможности воспроизведения звука и видео по сети (в том числе через интернет), также содержит достаточно гибкий каталогизатор звуковых и видео файлов, возможность для копирования аудио CD на компьютер, встроенный эквалайзер звука и подстройку изображения.

Сейчас Microsoft проводит бета-тестирование 10?й версии Windows Media Player: нововведения в ней ориентированы под удобство использования каталога записей, интегрирует покупку музыки и видео в интернете и добавляет поддержку множества портативных устройств (mp3-плейеров и т. п.)

Windows Media Player 6.4

Последняя версия предыдущего поколения проигрывателя от Microsoft ? обладает спартанским интерфейсом, поддерживает субтитры в формате SAMI. Также воспроизводит все звуковые дорожки видеозаписи одновременно. Эта версия сохранена во всех новых версиях Windows и может быть запушена командой ?mplayer2?.

Media Player Classic

Проигрыватель обладает интерфейсом, очень напоминающим Windows Media Player 6.4. Однако не путайте: это мощнейший проигрыватель, имеющий поддержку всех существующих форматов субтитров (включая SSA и ASS с корректным отображением стилей текста), встроенные декодеры разных форматов сжатия звука и видео, возможности выбора звуковой дорожки, перенаправления аудио каналов для многоканальных систем, поддержку воспроизведения форматов QuickTime и Real Media (если у вас установлены соответствующие пакеты), встроенные splitter?ы для Ogg и Матрёшки. Программа имеет развитый интерфейс и множество сервисных возможностей, например, захват кадров и установку задержки звукового сопровождения относительно видеоряда. Есть поддержка интерфейса WinLIRC для пультов дистанционного управления.

Из уникальных возможностей программы стоит упомянуть возможность воспроизведения видео DVD без каких-либо дополнительных программ: это делает Media Player Classic единственным бесплатным проигрывателем DVD для Windows. Также проигрыватель имеет возможность воспроизведения видео с какого-либо видеовхода: будь то ТВ?приёмник, карта видеозахвата или цифровая видеокамера, подключённая по цифровому интерфейсу. Это очень удобно для просмотра записей на видеокамере, если под рукой нет телевизора. Также программа использует необычную технологию отображения субтитров с использованием функций современных видеокарт: качество отображения текста получается существенно выше, чем при традиционном способе.



Light Alloy, Total Media Player

Этот проигрыватель поддерживает изменение языка и вида интерфейса (skins), отображение субтитров, синхронное воспроизведение звуковой дорожки из другого файла. Программа имеет развитый интерфейс и множество сервисных возможностей. Уникальная функция: раздельное регулирование громкости для разных звуковых дорожек, что позволяет не только переключать звуковую дорожку, а слушать несколько дорожек одновременно ? по выбору пользователя. Есть поддержка интерфейса WinLIRC для пультов дистанционного управления. Последняя версия ? 2.4. Для русскоязычных пользователей программа бесплатна, хоть и требует выполнения процедуры регистрации.

Автор на основе своих наработок создавал другой проигрыватель: Total Media Player. Сейчас этот проект закрыт, наработки будут использованы в новых версиях Light Alloy. Автор анонсировал выпуск версии 2.5 в ближайшем будущем, позже будет выпущена версия 3.0 на полностью переработанной основе.





Sasami2k

Проигрыватель имеет очень необычный ?полупрозрачный? интерфейс. Помимо поддержки субтитров в формате SAMI и нескольких звуковых потоков, Sasami содержит немалое количество фильтров для обработки изображения и звука. Программа имеет развитый интерфейс. К сожалению, автор (Уи?Йонг Чои) прекратил развитие этой программы три года тому назад, последняя версия ? 757, распространяется бесплатно.



Zoom Player

Пожалуй, самый функционально богатый проигрыватель видео на сегодня: из-за этого программа достаточно сложна в настройке. Поддерживает смену языка (в том числе и русский) и вида интерфейса (skins). Есть поддержка интерфейса WinLIRC для пультов дистанционного управления. Из необычных возможностей можно упомянуть поддержку информационных сообщений на экране, которые сопровождают различные события (стоп/пауза, выкл. звука и проч.) ? это очень удобно при просмотре видео на телевизоре и управлении проигрывателем при помощи пульта дистанционного управления. Программа разрабатывается Inmatrix.com, актуальная версия ? 4.03. Стандартная версия распространяется бесплатно, профессиональная версия требует платной регистрации за $20 (бесплатный тестовый период ? 1 месяц).



BS Player

Очень известный проигрыватель видео, содержащий множество удобных функций: смена языка интерфейса (в том числе русский), смена вида программы (skins), поддержка субтитров, сообщения на экране поверх видео, поддержка интерфейса WinLIRC для пультов дистанционного управления. Содержит ряд уникальных возможностей, например создание списка закладок для видеозаписи, который потом позволяет переходить к определённой части записи при помощи оглавления (chapter, глава ? по аналогии с видео DVD). Также эта программа имеет уникальный модуль Overlay mixer, который в некоторых случаях может обеспечивать более высокое качество отображения видео, чем в случае использования системых компонент. Программа разрабатывается WebTeh, последняя версия ? 1.0.



Crystal Player

Универсальный проигрыватель видео с множеством функций: смена языка интерфейса (есть русский и украинский), смена вида программы (skin), поддержка субтитров, расширенная статистика о видеофайлах, поддержка многих форматов сжатия видео и аудио. Про-версия также содержит дополнительные фильтры для пост-обработки видео и звука (в том числе альтернативный фильтр пост-процессинга MPEG-видео), и функцию автоматической загрузки необходимых кодеков из интернета. Программу разрабатывает Crystal Reality LLC, актуальная версия ? 1.8.



Воспроизведение видео на медленных компьютерах

Достаточно часто возникает вопрос: как настроить относительно медленный компьютер для воспроизведения видео? Рекомендации достаточно просты: полностью отключите пост-процессинг видео, желательно использовать быстрый декодер (ffDShow или unix mplayer), установите последнюю версию DirectX (Microsoft постоянно проводит работу по оптимизации этой подсистемы). Отключите все программы, которые могут использовать процессора во время воспроизведения, например антивирус.
Страницы: 1