Использование аппаратных носителей в кодеках AVStream
Мини-накопитель AVStream, поддерживающий частные носители, может передавать данные на оборудовании устройства без промежуточной передачи в системную память.
В частности, если два фильтра совместно используют один и тот же частный средний и средний экземпляры, Media Foundation передает мультимедиа исключительно в оборудование устройства. Эта передача выполняется без переноса функций в системную память. Например, декодер и кодировщик с одного устройства могут совместно использовать частный носитель, что приводит к значительному повышению производительности.
Чтобы использовать частные носители, мини-диск должен выполнить следующие действия в функции AVStrMiniPinProcess контакта:
Если для подключения контакта выбран пользовательский носитель драйвера (например, среда контакта не KSMEDIUMSETID_Standard), драйвер должен направлять данные через свою частную шину. AVStream не включает передачу указателей потока для контактов, подключенных с помощью пользовательских носителей.
Драйвер может определить подключенный контакт, вызвав KsPinGetConnectedPinFileObject.
Затем драйвер может выполнять операции с буфером и направлять его в подключенный объект pin/filter через его настраиваемую среду.