Работа с Кодеками
[Функция, связанная с этой страницей, DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngineи аудио- и видеозахватом в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать новый код, MediaPlayer, IMFMediaEngine и Audio/Video Capture в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает, что существующий код, использующий устаревшие API, будет перезаписан для использования новых API, если это возможно.]
Microsoft Windows предоставляет несколько кодеков в качестве компонентов операционной системы. Доступные кодеки всегда включают те, которые поставляются с любой версией DirectX и Windows Media Player, входящих в релиз Windows. Дополнительные кодеки могут быть установлены при установке более новых версий DirectX или Проигрывателя Windows Media или среды выполнения пакета SDK для Windows Media. Сторонние стороны могут устанавливать дополнительные кодеки в хост-системе; эти кодеки могут быть разработаны для работы только с определенным приложением, или они могут поддерживать общее использование любого приложения DirectShow.
Кодеки могут быть реализованы одним из трех способов:
- В качестве кодека типа Video for Windows для устанавливаемых аудио- или видеоданных, загружаемого менеджером сжатия видео (VCM) или менеджером сжатия аудио (ACM). Как правило, эта технология считается нерекомендуемой, и ее использование не рекомендуется. Устанавливаемые кодеки участвуют в графах фильтров DirectShow с помощью фильтра оболочки декомпрессора AVI.
- Как фильтр DirectShow. Многие сторонние кодеки реализуются как собственные фильтры DirectShow. Одним из таких фильтров является декомпрессионный фильтр MP3 Fraunhofer. Как правило, эти фильтры можно добавлять в граф фильтров обычными способами. Одним из исключений из этого правила является то, что некоторые кодеки аудио или Видеокодеки Windows Media™, а кодек Microsoft MPEG-4 нельзя добавить в граф фильтров вручную. Эти фильтры могут быть добавлены только фильтрами ASF Reader и ASF Writer.
- Как объекты мультимедиа DirectX (DMOs). DmOs — это рекомендуемый способ реализации кодеков, так как их можно использовать в графе фильтров DirectShow с помощью фильтра оболочки DMO или в другом приложении потоковой передачи, отличном от DirectShow. Некоторые аудиокодеки и видеокодеки Windows Media реализованы как объекты DirectX Media. Как и фильтры Windows Media, эти DMOs нельзя использовать вне контекста Windows Media SDK. Это означает, что в DirectShow их можно добавлять только в граф с помощью фильтров средства чтения ASF или средства записи ASF.
В GraphEdit все эти различные типы кодеков отображаются вместе в следующих категориях:
- Аудиокомпрессор
- Видеокомпрессор
- Фильтр DirectShow
Однако многие из этих кодеков устанавливаются сторонними пользователями или другими приложениями Майкрософт или компонентами операционной системы и не предназначены для использования другими приложениями DirectShow. Список кодеков, видимых в GraphEdit, также зависит от того, какая версия Windows выполняется в хост-системе, и какая версия пакета SDK DirectShow установлена.