Интернет магазин китайских планшетных компьютеров



Компьютеры - DirectShow - Критика

01 мая 2011


Оглавление:
1. DirectShow
2. История
3. Возможности
4. Пример программы на языке C++
5. Критика



Сложность

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

Разработчики редко создают DirectShow-фильтры «с нуля», чаще, они используют базовые классы. Эти классы обычно позволяют упростить разработку, позволяя программисту обойти некоторые задачи. Однако, процесс может остаться довольно сложным, потому как количество кода в базовых классах примерно соответствует половине объёма библиотеки MFC. А количество объектов, основанных на базовых классах, ошеломляет многих разработчиков. Причём, в некоторых случаях, DirectShow API отличается от обычных правил COM объектов, особенно это заметно в параметрах методов. Для обхода этих сложностей разработчики часто используют более высокий уровень: Windows Media Player SDK, который основан на ActiveX объекте и использует обычные правила COM.

Codec hell

Codec hell — это конфликт, возникающий между различными фильтрами, которые пытаются выполнить одну и ту же задачу. Дело в том, что, сейчас, большое количество компаний производят кодеки в форме DirectShow фильтров, которые частенько выполняют схожие задачи с одинаковым типом медиа.

Инструменты, которые могут помочь в борьбе с Codec Hell:

  • GSpot Codec Information Appliance, GSpot помогает определить, какой кодек подходит для визуализации AVI-файла или другого контейнера;
  • GraphEdit, позволяет определить набор фильтров, которые DirectShow использует для воспроизведения медиа файлов;
  • «вручную», то есть граф фильтров строится заранее проверенными фильтрами.


Просмотров: 4694


<<< Мультимедийный фреймворк
FFmpeg >>>