제한된 모드 프로필 및 구성 설정

[이 페이지와 연결된 기능인 DirectShow는 레거시 기능입니다. MediaPlayer, IMFMediaEngineMedia Foundation의 오디오/비디오 캡처로 대체되었습니다. 이러한 기능은 Windows 10 및 Windows 11 최적화되었습니다. 가능한 경우 새 코드에서 DirectShow 대신 MediaPlayer, IMFMediaEngine오디오/비디오 캡처를 사용하는 것이 좋습니다. 가능한 경우 레거시 API를 사용하는 기존 코드를 다시 작성하여 새 API를 사용하도록 제안합니다.]

DirectX VA에서 디코딩할 수 있는 다양한 유형의 데이터 및 이러한 각 데이터 유형에 대해 DirectX VA 내에서 지원되는 여러 디코딩 구성으로 인해(예: 비트스트림 버퍼와 호스트 잔차 차이 디코딩 및 가속기 기반 IDCT 사용 및 관련 버퍼의 각 형식 암호화 안 함 등) 모든 고유한 데이터 형식 및 디코딩 구성에 대해 고유한 GUID를 지정하기만 하면 다소 어긋나게 됩니다. 이렇게 하면 많은 GUID가 생성됩니다(예: DirectX VA의 프로필이 16개이고 각각 16개의 구성이 가능한 경우 256개의 정의된 GUID가 있어야 하며, 이를 모두 저장하기 위해서는 4킬로바이트의 메모리가 필요합니다. 이 문제는 DirectX VA를 IAMVideoAccelerator에 매핑하는 방법을 결정하는 데 가장 어려운 부분이며, 나머지 운영 정의는 대부분 매우 간단합니다. 따라서 각 데이터 형식(제한된 각 모드 프로필에 대해)에 대해서만 고유한 GUID를 지정하고 추가 GUID를 각 암호화 유형과 연결할 수 있도록 합니다. 디코딩 구성은 프로빙 및 잠금 작업을 사용하여 각 유형의 DirectX VA 함수에 대한 구성을 설정하는 하위 수준의 하위 협상에 의해 디코더와 액셀러레이터 간에 설정됩니다.