Share via


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