DXVA 고화질 비디오 처리 - CreateVideoSurface
이 자동화된 테스트는 GetVideoProcessorDeviceCaps를 호출합니다. 그런 다음, 해당 제한을 사용하여 생성된 dxvahd 디바이스에서 콘텐츠의 기본 메모리 풀 너비 크기에 따라 여러 테스트 사례를 생성합니다.
또한 테스트 사례는 각 디바이스의 지원되는 입력 및 출력 형식도 확인합니다. 각 입력 및 출력 화면에 대해 화면을 만들 수 있는지 확인하고 알 수 없는 형식이 실패하는지 확인합니다. 또한 테스트 사례는 각 형식에 대한 여러 화면 생성도 확인합니다.
대부분의 경우 테스트는 통과 실패 횟수를 증가시키고 반복되는 테스트 사례 변수를 보여 주는 시세표와 같은 창만 표시합니다.
드라이버가 D3DCAPS3_DXVAHD를 노출하지 않으면 테스트가 SKIP을 반환할 수 있습니다. 경우에 따라 특정 화면 형식이 지원되지 않는 경우 건너뛸 수 있습니다.
테스트 세부 정보
사양 |
|
플랫폼 |
|
지원되는 릴리스 |
|
예상 실행 시간(분) | 2 |
범주 | 호환성 |
시간 제한(분) | 120 |
다시 부팅 필요 | false |
특별한 구성 필요 | false |
형식 | automatic |
추가 설명서
이 기능 영역의 테스트에는 다음 항목에서 찾을 수 있는 필수 조건, 설정, 문제 해결 정보를 포함한 추가 설명서가 있을 수 있습니다.
테스트 실행
테스트를 실행하기 전에 테스트 요구 사항: 그래픽 어댑터 또는 칩셋 테스트 필수 조건에 설명된 대로 테스트 설정을 완료합니다.
또한 이 테스트에는 다음 소프트웨어가 필요합니다.
특히 D3D9Caps.Caps3 D3DCAPS3_DXVAHD를 지원하는 디스플레이 드라이버
D3DCAPS3_DXVAHD 노출을 지원하는 D3D9
필수 출력 형식: D3DFMT_X8R8G8B8, D3DFMT_A8R8G8B8
필수 입력 형식: 지원되는 D3DFMT_X8R8G8B8, D3DFMT_A8R8G8B8, D3DFMT_YUY2, D3DFMT_AYUV 및 디코딩 렌더링 대상
dxvahdsw.dll.
문제 해결
HLK 테스트 실패의 일반적인 문제 해결은 Windows HLK 테스트 실패 문제 해결을 참조하세요.
문제 해결 정보는 Device.Graphics Testing 문제 해결을 참조하세요.
추가 정보
이 테스트는 다음 요구 사항을 확인합니다.
DXVAHD_VPDEVCAPS에 대한 유효한 포인터로 성공을 확인합니다.
OutputFormat 및 InputFormat Count가 올바르고 연결된 get 루틴으로 제대로 작동하는지 확인합니다.
VideoProcessorCount가 비디오 프로세서 수에 올바르게 매핑되는지 확인합니다.
MaxInputStreams가 0보다 큰지 확인합니다.
MaxStreamStates가 0보다 큰지 확인합니다.
DXVAHD_VPDEVCAPS.InputFormatCount가 사용될 때 성공을 확인합니다.
InputFormatCount보다 작거나 큰 경우 실패를 확인합니다.
D3DFMT_X8R8G8B8이 지원되는지 확인합니다.
DXVAHD_VPDEVCAPS.InputFormatCount가 사용될 때 성공을 확인합니다.
InputFormatCount보다 작거나 큰 경우 실패를 확인합니다.
D3DFMT_X8R8G8B8, D3DFMT_A8R8G8B8, D3DFMT_YUY2 및 AYUV(FourCC)가 지원되는 것으로 보고되는지 확인합니다.
모든 디코딩 렌더링 대상 형식이 지원되는 것으로 보고하는지도 확인합니다.
콘텐츠 설명 입력 너비 높이의 너비 높이를 사용하여 화면을 만듭니다.
너비 높이가 더 큰 것과 더 작은 콘텐츠 설명 입력과는 다른 너비 높이로 화면을 만듭니다.
DXVAHD_VPDEVCAPS.InputPool에서 D3DPOOL 형식으로 화면을 만듭니다. 그런 다음, 다른 InputPool을 사용하여 처리 중에 VPBltHD가 E_INVALIDCALL을 반환되는지 확인합니다.
0 이외의 사용량 값을 확인할 때 값(E_INVALIDARG)을 반환하는지 확인합니다.
DXVAHD_SURFACE_TYPE_VIDEO_INPUT 화면을 만들고 D3D9 API를 사용하여 조작해 봅니다. 성공이 유효한지 검사합니다. (화면 밖 평면)
- IDXVAHD_Device::GetVideoProcessorInputFormats에서 가져온 지원되는 모든 입력 D3D 형식을 반복합니다. 그런 다음, 지원되지 않는 D3D 형식을 확인합니다.
DXVAHD_SURFACE_TYPE_VIDEO_INPUT_PRIVATE 화면을 만듭니다. D3D 9 API를 통한 조작이 실패하는지 확인합니다. (화면 밖 평면)
- IDXVAHD_Device::GetVideoProcessorInputFormats에서 가져온 지원되는 모든 입력 D3D 형식을 반복합니다. 그런 다음, 지원되지 않는 D3D 형식을 확인합니다.
DXVAHD_SURFACE_TYPE_VIDEO_OUTPUT 화면을 만들고 렌더링 대상으로 유효한지 검사합니다.
- IDXVAHD_Device::GetVideoProcessorOutputFormats에서 가져온 지원되는 모든 입력 D3D 형식을 반복합니다. 그런 다음, 지원되지 않는 D3D 형식을 확인합니다.
단일 화면을 만든 다음, ppSurface에 하나의 화면만 포함되어 있는지 확인합니다.
여러 화면을 만들고, 화면 수가 전달된 NumSurface가 나타내는 화면 수와 같은지 확인합니다.
실패한 ppSurface가 NULL인지 확인합니다.
명령 구문
명령 옵션 | Description |
---|---|
DXVAHDVideoProcessing CreateVideoSurface |
아무 옵션도 없으면 테스트는 극단적이며 유효하지 않은 인수 테스트 사례 일부를 제외한 모든 사례를 열거합니다. |
TestPriority:[0, 1, 2] |
기본적으로 우선 순위 1 수준에서 테스트하지만, 우선 순위 2는 극단적으로 잘못된 인수 테스트 사례를 포함하는 모든 조합을 테스트합니다. 0은 BVT 수준에 해당합니다. |
SoftwareOnly |
비디오 프로세서의 소프트웨어 구현만 테스트합니다. 드라이버가 테스트 사례를 지원하기 전에 주로 초기 테스트에 사용되었습니다. |
SaveAllFrames |
테스트에 100으로 설정된 유효하지 않은 프레임의 하드 코딩된 저장 횟수가 있습니다. 모두 저장하려는 경우 이 플래그를 사용합니다. 높은 프레임 횟수 테스트 사례 실패에 적합합니다. |
LogLevel:[0, 1, 2] |
테스트는 로깅 메서드에서 매우 자세한 정보를 표시할 수 있습니다. 그러나 기본적으로 수준 0으로 설정되어 있으며, 수준 1은 많은 스트림 상태/blt 상태 집합을 포함하여 테스트 사례당 증가한 로깅 정보를 수집합니다. 수준 2는 조정된 모든 스트림 상태 및 blt 상태와 모든 구성 정보를 수집합니다. |
파일 목록
파일 | 위치 |
---|---|
DXVAHDVideoProcessing.exe |
[testbinroot]\nttest\windowstest\graphics\d3d\func\ |
Dxvahdsw.dll |
[osbinroot]\nttest\windowstest\graphics\dxva\ |
매개 변수
매개 변수 이름 | 매개 변수 설명 |
---|---|
LLU_NetAccessOnly | NET 액세스를 위한 LLU |
ConfigDisplayCommandLine | ConfigDisplay용 사용자 지정 명령줄 기본값: 로고 |
MODIFIEDCMDLINE | 테스트 실행 파일에 대한 추가 명령줄 인수 |