RemoteFX Hardware Encoder - (Stress Test, Multiple Encoding Test, Scenario Test, Interoperability Test, Color Test, Hardware Detection Test, Encoding Test)
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
Type: Automated test
Overview
The new category for Codec Offload Hardware defines a set of requirements and tests for a new category of devices that allow the encoding of screen data for RemoteFX virtual machines (VMs) to be offloaded from the CPU/GPU to dedicated hardware. This enables higher levels of scalability on a RemoteFX server. These tests ensure fidelity and compatibility.
Details
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
Encoding Test
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
This test verifies core functionality of the RemoteFX codec library interaction with RemoteFX-enabled encoder hardware. These tests are designed to ensure that all supported resolutions can be handled by the device under test, and that the quality of compression is within the functional requirements needed for Remote Desktop Virtualization. All combinations of the following test parameters must be executed against each of the tile usage scenarios:
Test Parameters
Codec Library Flags: ENC_TYPE_CPU_HW, ENC_TYPE_DX10_HW
User Scenarios: Desktop, Internet Explorer – MSN, Internet Explorer – MLB, Excel, Word, PowerPoint, Visual Studio, Virtual Earth, Movie, Combination
Resolutions: 640x480, 800x600, 1024x768, 1152x864, 1280x800, 1280x1024, 1400x1050, 1600x1050, 1600x1200, 1920x1200, 2560x1600, 4096x2048
Quality: ENC_QUALITY_HI, ENC_QUALITY_MED_HI, ENC_QUALITY_MED_LO
Scenario (Tiles Changing (1280x1024 Example))
Full Screen: 80
Single Tile: 1
Random Tiles: 20
Random Rectangles (Non-aligned): ~20
Contiguous: ~20
Run time: 48 hours
Log file: RemoteFX_Qualify_Encoder_Codec_Encoding.wtl
Stress Test
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
This test verifies that the Calista-enabled encoder hardware under stress scenarios designed to ensure the hardware can handle abnormal usages.
Test Encoder Type
12 Hour Stress Test ENC_TYPE_CPU_HW
Run time: 12 hours
Log file: RemoteFX_Qualify_Encoder_Codec_Stress.wtl
Multiple Encoding Test
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
This test verifies the functionality of the Calista-enabled encoder hardware when used in parallel. Each instance is selected from the possible combinations in the Encoder Functionality test category.
Test Encoder Type
32 Tests from Encoder Static Images In Parallel, ENC_TYPE_CPU_HW
32 Tests from Encoder Static Images In Parallel, ENC_TYPE_DX10_HW
Run time: 1 hour
Log file: RemoteFX_Qualify_Encoder_Codec_Encoding_Multiple.wtl
Scenario Test
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
This test verifies the Calista-enabled encoder hardware under end-to-end data scenarios that is seen in Remote Desktop Virtualization deployments. The tests are designed to verify the quality throughout the entire playback of the scenarios.
Scenario Encoder Type
Windows Interaction ENC_TYPE_CPU_HW
PowerPoint ENC_TYPE_CPU_HW
Windows Interaction ENC_TYPE_DX10_HW
PowerPoint ENC_TYPE_ DX10_HW
Run time: 1 hour
Log file: RemoteFX_Qualify_Encoder_Codec_Scenario.wtl
Interoperability Test
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
This test verifies the interoperability between RemoteFX-enabled encoder hardware and the different software decoder implementations. The following uses a subset of the tests from the Encoder Functionality test category:
Test Parameters
User Scenarios: Desktop, Internet Explorer – MSN
Tile Change Scenarios: Full Screen, Single Tile, Random Tiles, Random Rectangles, Contiguous
Encoder Type Decoder Type
ENC_TYPE_DX10_HW DEC_TYPE_DX9
ENC_TYPE_DX10_HW DEC_TYPE_CPU
ENC_TYPE_CPU_HW DEC_TYPE_DX9
ENC_TYPE_CPU_HW DEC_TYPE_CPU
Run time: 1 hour
Log file: RemoteFX_Qualify_Encoder_Codec_Interoperability.wtl
Color Test
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
This test verifies that the color conversion algorithms implemented in the hardware meet the specifications and requirements of Remote Desktop Virtualization usage of the RemoteFX-enabled encoder hardware.
Test Encoder Type
Codec Color Verification ENC_TYPE_CPU_HW
Run time: 1 minute
Log file: RemoteFX_Qualify_Encoder_Codec_Color.wtl
Hardware Detection Test
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
These tests verify the hardware’s compatibility with the Remote Desktop Virtualization software stack.
Test Encoder Type
API Codec Capabilities Hardware Detection ENC_TYPE_DX10_HW
API Codec Capabilities Hardware Detection ENC_TYPE_CPU_HW
Run time: 5 minutes
Log file: RemoteFX_Qualify_Encoder_Codec_Hardware_Detection.wtl
General
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
System restart required: Yes (Driver Verifier enable/disable)
Test category: Codec Offload Hardware\RemoteFX\Encoder
Supported operating systems for logo or signature testing: Windows Server 2008 R2
Program: Codec Offload Hardware\RemoteFX\Encoder
Requirements
Software Requirements
The test tool requires the following software:
- Supported operating system (see list above).
- Software components included with the device that is being tested.
Hardware Requirements
The test tool requires the following hardware:
- Device to be tested
- Graphics processing unit (GPU) that can handle DirectX 9 and DirectX 10
- Computer that meets the minimum software requirements
- Windows keyboard
- Two-button pointing device
- Color display monitor capable of at least 1024 by 768 resolution, 32-bits per pixel, 60 Hz
- Hard disk drive with a minimum of 20 GB available on partition C:
Processor
- x64
Running the Test
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
Each validation category test launches an instance of the CodecTest executable, which encodes test data by calling the Hardware Encoder Driver. This compressed data is then decoded using Software Decoder implementation, and then verified using PSNR. After completing each validation category test, the test produces a log file. This log file is the same content displayed in the console. It can be used to review the results of the validation category and shows PASS/FAIL and SKIPPED results.
Command Syntax
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
Usage: CodecTest.exe [[option, ...] [test case],..]
Options:
Encoder Settings:
/encoderType <ENC_TYPE_[DX10|DX10_HW|CPU|CPU_HW]> = Specifies which encoder type is used
/encoderUsage <ENC_USAGE_[SYSMEM|VIDMEM]> = Specifies which encoder usage is used
/encoderQuality <ENC_QUALITY_[HI|LO|MED_HI|MED_LO]> = Specifies the encoding quality
Decoder Settings:
/decoderType <DEC_TYPE_[DX9|CPU|HW]> = Specifies which decoder type is used
/decoderUsage <DEC_USAGE_[SYSMEM|VIDMEM]> = Specifies which decoder decode usage is used
Other Settings:
/hwMode = Set encoder/decoder to use hardware wireformat
/screenWidth <width> = Encode/decode images width
/screenHeight <height> = Encode/decode images height
Qualify Tests:
/qualify = Runs all qualification tests required for hardware validation
Encoder Tests:
Qualify_Encoder_Encoding
Qualify_Encoder_Encoding_Multiple
Qualify_Encoder_Hardware_Detection
Qualify_Encoder_Interoperability
Qualify_Encoder_Scenario
Qualify_Encoder_Stress
Qualify_Encoder_Codec_Color
To run the Hardware Encoder Qualification test:
CodecTest.exe /qualify /whql true /logFilename RemoteFX_Qualify_Encoder_[TestToRun] Qualify_Encoder_[TestToRun]
Where [TestToRun] = Stress | Encoding_Multiple | Scenario | Interoperability | Color | Hardware_Detection | Encoding
Code Tour
Note This content applies to the Windows Logo Kit (WLK). For the latest information using the new Windows Hardware Certification Kit (HCK), see Windows HCK User's Guide on the Windows Hardware Dev Center.
The files in the test package are listed in the table below. CodecTest.exe is the main test executable and contains the test logic. It calls into CommonLib.dll, CommonNativeLib.dll, DecoderWrapper.dll, and EncoderWrapper.dll for various functionality. D3ddx10_42.dll is required for the DirectX functionality used in the tests. Images.zip contains all the reference images against which the images encoded using the target device are compared. Unzip.vbs is used to unzip the reference images from Images.zip.
File Manifest
File | Location |
---|---|
CodecTest.exe |
[WTT\TestBinRoot]\NTTEST\TERMSRVTEST\Termsrv\Calista\Codec\External\bin |
CommonLib.dll |
[WTT\TestBinRoot]\NTTEST\TERMSRVTEST\Termsrv\Calista\Codec\External\bin |
CommonNativeLib.dll |
[WTT\TestBinRoot]\NTTEST\TERMSRVTEST\Termsrv\Calista\Codec\External\bin |
DecoderWrapper.dll |
[WTT\TestBinRoot]\NTTEST\TERMSRVTEST\Termsrv\Calista\Codec\External\bin |
EncoderWrapper.dll |
[WTT\TestBinRoot]\NTTEST\TERMSRVTEST\Termsrv\Calista\Codec\External\bin |
d3dx10_42.dll |
[WTT\OsBinRoot]\d3dsdk\bin |
Images.zip |
[WTT\TestBinRoot]\nttest\termsrvtest\termsrv\Calista\Codec\External\images |
Unzip.vbs |
[WTT\TestBinRoot]\NTTEST\TERMSRVTEST\Termsrv\Calista\Codec\Tools |
Build date: 9/14/2012