Test Cases for the Waveform Audio Driver Test (Windows Embedded CE 6.0)
1/6/2010
The Waveform Audio Driver Test executes the s tux –o –d wavetest command line on default execution. This command plays and captures tones of 1 second in length on the first waveform device and performs basic functional testing. To perform in-depth testing of your driver, you must set up your device with a microphone and speaker and turn on interaction so that you can confirm that audio plays and records.
To set up the test correctly, connect a speaker and a microphone to the audio card simultaneously and place the microphone between 1 and 6 inches from the speaker. While you run the test for the first time, you may adjust this distance between the speaker and the microphone to reduce feedback and find the distance where the sound played by the test is similar to the sound that is recorded. A difference in volume between the sound played and the sound recorded is not a problem and is to be expected during the test.
The following tables describe each test case in the Waveform Audio Driver Test.
Test case | Description |
---|---|
100 |
Build Verification Test Ensures that the functionality necessary for the test is present. Refer to the test result to determine the likely cause of failure. Warnings that affect the behavior of the test will also appear in this test case if appropriate. This test case can cause other test cases to be skipped if required functionality is not present. |
1000 |
Easy Playback Exercises the PlaySound and sndPlaySound APIs on wave files in the Windows directory. |
2000 |
Playback Capabilities Displays the capabilities reported by the driver; lists the extended functions supported by the driver. |
2001 |
Playback Plays a tone for all of the supported formats. |
2002 |
Playback Notifications Plays audio using null, event, thread, function, and window callbacks that should be supported by the driver. |
2003 |
Playback Using Extended Functions Plays changing extended functions such as pitch, rate and volume. |
2004 |
Playback Buffer Freed During Playback Allocates buffer in the virtual address space of the calling process for playback and frees and releases this buffer while in playback. |
2005 |
Playback Sample Rate Reporting Queries the waveOutOpen method to verify that it succeeds for all supported formats reported by the device driver and fails for all non-supported formats reported by the device driver. |
3000 |
Capture Capabilities Displays the capabilities reported by the driver. |
3001 |
Capture Captures a tone for all of the supported formats. |
3002 |
Capture Notifications Captures audio using thread, window and function callbacks that should be supported by the driver. |
3003 |
Capture Buffer Freed During Capture Allocates buffer in the virtual address space of the calling process for capture and frees and releases this buffer while in capture. |
2006 |
Playback Initial Latency Verifies that average initial latency of a single buffer playback of standard sine wave is within acceptable range. |
2007 |
Playback Initial Latencies Series Verifies that average initial latency of a single buffer playback of standard sine wave is within acceptable range for varying play times. If wave format is not specified at command prompt then this test case will repeat for every wave format specified in the latency test table. |
2008 |
Playback Interoperability Verifies that playSound and sndPlaySound properly parse/play valid wave files with optional embedded chunks. |
3006 |
Capture Initial Latency Verifies that average initial latency of a single buffer capture is within acceptable range. |
3007 |
Capture Initial Latencies Series Verifies that average initial latency of a single buffer capture is within acceptable range for varying record times. If wave format is not specified at command prompt then this test case will repeat for every wave format specified in the latency test table. |
3008 |
Capture Multiple Streams Verifies the ability to capture multiple audio streams simultaneously. |
6000 |
Playback Mixing Verifies playback of a series of overlapping tones for all common formats by launching a series of sound threads. It also supports an interactive command line option, which allows the user to monitor the test and fail it, if the sound quality is unacceptable. |
6001 |
Capture Mixing Verifies capture mixing by first initiating capture and then invoking PlaybackMixing to launch a series of sound threads. It also supports an interactive command line option, which allows the user to monitor the test and fail it, if the sound quality is unacceptable. |
7000 |
International Audio File Names Exercises PlaySound and sndPlaySound methods for properly handling Unicode strings containing international characters. |
8000 |
Verify Handle Validation Exercise audio methods for properly handling invalid handles passed to them as parameters. |
8001 |
Verify Device ID Validation Exercise audio methods for properly handling invalid device ids passed to them as parameters. |
8002 |
Verify GUID Validation Exercises waveOutGetProperty and waveOutSetProperty for properly handling invalid GUIDs passed to them as parameters. |
See Also
Concepts
Command Line Parameters for the Waveform Audio Driver Test
Troubleshooting the Waveform Audio Driver Test
Other Resources
Waveform Audio Driver Test
Prerequisites of the Waveform Audio Driver Test
Audio Tests
CETK Tests