PFND3DDDI_DECODEEXTENSIONEXECUTE 콜백 함수(d3dumddi.h)
DecodeExtensionExecute 함수는 지정된 VA(Microsoft DirectX Video Accelerator) 비표준 디코딩 디바이스를 사용하여 디코딩 작업을 수행합니다.
구문
PFND3DDDI_DECODEEXTENSIONEXECUTE Pfnd3dddiDecodeextensionexecute;
HRESULT Pfnd3dddiDecodeextensionexecute(
HANDLE hDevice,
const D3DDDIARG_DECODEEXTENSIONEXECUTE *unnamedParam2
)
{...}
매개 변수
hDevice
디스플레이 디바이스(그래픽 컨텍스트)에 대한 핸들입니다.
unnamedParam2
pData [in, out]
수행할 DirectX VA 디코딩 작업을 설명하는 D3DDDIARG_DECODEEXTENSIONEXECUTE 구조체에 대한 포인터입니다.
반환 값
DecodeExtensionExecute는 다음 값 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
S_OK | DirectX VA 디코딩 작업이 성공적으로 수행되었습니다. |
E_OUTOFMEMORY | DecodeExtensionExecute가 완료하는 데 필요한 메모리를 할당할 수 없습니다. |
설명
사용자 모드 표시 드라이버는 DecodeExtensionExecute 함수를 구현하여 표준 디코딩 형식(즉, 비표준 디코딩 GUID)에 대한 확장을 지원할 수 있습니다. 이러한 비표준 디코딩 형식은 암호화 및 기타 향상된 기능을 구성하는 데 유용합니다.
DirectX VA 2.0 디코더에 비표준 확장이 필요한 경우 DecodeExtensionExecute가 호출됩니다.
이러한 비표준 확장이 필요할 수 있는 DirectX VA 1.0 디코더와의 호환성을 위해 DirectX VA 1.0 디코더가 4보다 큰 bDXVA_Func 값이 D3DDDIARG_DECODEEXTENSIONEXECUTE 구조체의 Function 멤버 중 가장 중요한 8비트에서 설정되는 실행 호출을 수행할 때마다 DecodeExtensionExecute가 호출됩니다. DecodeExtensionExecute 는 DirectX VA 1.0 디코더가 DXVA_QUERYORREPLYFUNCFLAG_DECODER_PROBE_QUERY(0xFFFFF1) 또는 DXVA_QUERYORREPLYFUNCFLAG_DECODER_LOCK_QUERY(0xFFFFF5) 플래그 이외의 모든 DXVA_ConfigQueryOrReplyFunc 플래그가 가장 중요한 함수 24비트에서 설정되는 구성 호출을 수행할 때마다 호출됩니다. 함수의 비트 설정에 대한 의미에 대한 자세한 내용은 DXVA_ConfigQueryOrReplyFlag 및 DXVA_ConfigQueryorReplyFunc 변수 및 bDXVA_Func 변수 topics 참조하세요.
DXVA_QUERYORREPLYFUNCFLAG_DECODER_LOCK_QUERY 전에 이러한 구성 호출을 수행할 수 있는 DirectX VA 1.0 디코더와의 호환성 문제로 인해 디코더는 디코딩 디바이스를 만들기 전에도 이러한 구성 호출을 수행할 수 있습니다. 디코딩 디바이스를 만들기 전에 이러한 구성 호출을 수행하면 pData 매개 변수가 가리키는 D3DDDIARG_DECODEEXTENSIONEXECUTE 구조체의 hDecode 멤버가 NULL로 설정됩니다. 이 경우 드라이버가 디코딩 디바이스와 독립적으로 상황을 지원할 수 없는 경우 오류(예: E_FAIL)를 반환해야 할 수 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista 이상 버전의 Windows 운영 체제에서 사용할 수 있습니다. |
대상 플랫폼 | 데스크톱 |
머리글 | d3dumddi.h(D3dumddi.h 포함) |