функция обратного вызова DXGKDDI_OPM_CREATE_PROTECTED_OUTPUT (dispmprt.h)
Функция DxgkDdiOPMCreateProtectedOutput создает новый защищенный выходной объект с использованием протокола COPP или семантики OPM.
Синтаксис
DXGKDDI_OPM_CREATE_PROTECTED_OUTPUT DxgkddiOpmCreateProtectedOutput;
NTSTATUS DxgkddiOpmCreateProtectedOutput(
[in] PVOID MiniportDeviceContext,
[in] D3DDDI_VIDEO_PRESENT_TARGET_ID VidPnTargetId,
[in] DXGKMDT_OPM_VIDEO_OUTPUT_SEMANTICS NewVideoOutputSemantics,
[out] PHANDLE NewProtectedOutputHandle
)
{...}
Параметры
[in] MiniportDeviceContext
Дескриптор для блока контекста, связанного с видеоадаптером. Ранее функция DxgkDdiAddDevice драйвера мини-порта дисплея предоставляла этот дескриптор подсистеме ядра графики DirectX.
[in] VidPnTargetId
Целое число, однозначно идентифицирующее целевой объект представления видео, соответствующий новому защищенному выходному объекту. Каждый целевой объект видео должен соответствовать одному соединителю физического монитора. Если VidPnTargetId соответствует нескольким соединителям физических мониторов, DxgkDdiOPMCreateProtectedOutput должен вернуть STATUS_GRAPHICS_OPM_SPANNING_MODE_ENABLED или STATUS_GRAPHICS_OPM_THEATER_MODE_ENABLED код ошибки.
[in] NewVideoOutputSemantics
DXGKMDT_OPM_VIDEO_OUTPUT_SEMANTICS типизированное значение, определяющее, имеет ли новый защищенный выход семантику COPP или OPM.
[out] NewProtectedOutputHandle
Указатель на переменную, которая получает дескриптор нового защищенного выходного объекта, если dxgkDdiOPMCreateProtectedOutput возвращает успешно. Подсистема графического ядра DirectX передает этот дескриптор в вызовах dxgkDdiOPMGetRandomNumber драйвера дисплея, DxgkDdiOPMSetSigningKeyAndSequenceNumbersDxgkDdiOPMGetInformation, DxgkDdiOPMGetCOPPCompatibleInformation, DxgkDdiOPMConfigureProtectedOutput и DxgkDdiOPMDeprotectedOutput.
Если DxgkDdiOPMCreateProtectedOutput завершается сбоем, значение переменной не изменяется.
Возвращаемое значение
DxgkDdiOPMCreateProtectedOutput возвращает одно из следующих значений.
Код возврата | Описание |
---|---|
STATUS_SUCCESS | Функция успешно создала новый защищенный выходной объект. |
STATUS_GRAPHICS_OPM_NOT_SUPPORTED | Драйвер мини-порта дисплея не поддерживает OPM, так как поставщик оборудования никогда не подписывал лицензионное соглашение OPM или графическое оборудование драйвера мини-порта не соответствует правилам OPM. |
STATUS_GRAPHICS_COPP_NOT_SUPPORTED | Драйвер минипорта дисплея не поддерживает COPP, так как поставщик оборудования никогда не подписывал лицензионное соглашение COPP или графическое оборудование драйвера мини-порта не соответствует правилам COPP. |
STATUS_NO_MEMORY | DxgkDdiOPMCreateProtectedOutput не может выделить память, необходимую для ее завершения. |
STATUS_GRAPHICS_OPM_SPANNING_MODE_ENABLED | DxgkDdiOPMCreateProtectedOutput не удалось создать защищенный выход, так как целевой объект видеотрансляции находится в режиме охвата. Когда целевой объект видеотрансляции находится в режиме охвата, он соответствует нескольким соединителям физического монитора, и каждый соединитель отображает отдельную часть буфера кадров. Схема того, как драйвер мини-порта дисплея обычно реализует режим охвата, см. в разделе Примечания. Драйвер мини-порта дисплея информирует операционную систему о том, как буфер кадров соответствует конкретному монитору. Левая половина буфера кадров отображается на одном мониторе, а правая половина буфера кадров — на другом мониторе. |
STATUS_GRAPHICS_OPM_THEATER_MODE_ENABLED | DxgkDdiOPMCreateProtectedOutput не удалось создать защищенные выходные данные, так как целевой объект видеотрансляции находится в режиме театра. Когда целевой объект видеотрансляции находится в режиме театра, он соответствует двум соединителям физического монитора; Один соединитель отображает весь буфер кадров, а другой — только часть буфера кадров. Режим театра также называется режимом зеркало. Схему того, как драйвер мини-порта дисплея обычно реализует режим театра, см. в разделе Примечания. Драйвер мини-порта дисплея информирует операционную систему о том, как буфер кадров соответствует конкретному монитору. Весь буфер кадров отображается на одном мониторе, а на другом — только часть буфера кадров. |
Эта функция также может возвращать другие коды ошибок, определенные в Ntstatus.h.
Комментарии
На следующем рисунке показано, как драйвер мини-порта дисплея обычно реализует режим охвата.
На следующем рисунке показано, как драйвер мини-порта дисплея обычно реализует режим театра. *DxgkDdiOPMCreateProtectedOutput* должен быть доступным для страниц.Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | dispmprt.h (включая Dispmprt.h) |
IRQL | PASSIVE_LEVEL (см. раздел "Примечания") |
См. также раздел
DXGKMDT_OPM_VIDEO_OUTPUT_SEMANTICS
DxgkDdiOPMConfigureProtectedOutput
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по