USB Audio CTS Verifier Tests

Several Android Compatibility Test Suite (CTS) tests for Android USB audio require the physical connection of USB audio peripherals. For these, additional CTS Verifier tests have been implemented.

Nomenclature

Throughout this document, the term "device" and "peripheral" are used in a very precise manner:

  • Device refers to the Android device.
  • Peripheral refers to an external USB audio peripheral connected to the Android device.

For the USB audio CTS Verifier Tests to know the attributes and capabilities they are verifying, it is necessary to specify a set of known peripherals to test against. For this reason, specific brands and types are mandated below. Some tests require a specifically mandated peripheral. Other tests simply require a USB audio peripheral that meets the requirements of those specific test. Note that any of the peripherals mandated for the USB Audio Peripherals Attributes Test will be compatible with the requirements for the Play and Record tests.

USB audio interface

Use one of the peripherals here to conduct the USB Audio Peripheral Attributes test. They can also be used for the Play test and Record test.

Note that these two peripherals have been discontinued by the manufacturer and will be deprecated in a future CTS Verifier release.

A USB audio interface (A PreSonus AudioBox 22VSL). USB audio interface

USB headset

The CTS Verifier USB Audio Buttons Test does not require a specific USB headset peripheral. It can be an instance of either of the following:

Note that in either case, the button must produce virtual key codes for all three of the required buttons (volume up, volume down, play/pause) for the test to succeed. Refer to the Software mapping section in Android USB Headset Accessory Specification for the virtual key codes.

A USB headset. USB headset

Required additional hardware

Patch cables (for loopback) 2 short ¼" male to ¼" male patch cables to connect the outputs to the inputs of the USB

¼" male to ¼" male patch cables. patch cables

USB peripheral cable

This cable (which typically comes with the peripheral), connects the USB audio peripheral to the host device. peripheral cable

USB "On The Go" (OTG) adapter

A USB "On The Go" (OTG) adapter is required to physically connect the peripheral to the Android device and indicate to the Android device that it should assume the role of "host". OTG adapter

Analog headphones to monitor the output of the USB audio interface for the Play test.

Set of analog headphones. analog headphones

Tests

In each test, indicate test success by clicking the test pass (check mark) button. Otherwise, indicate test failure by clicking the test fail (exclamation point) button.

Attributes test

Abstract

This test verifies that the attributes (supported sample-rates, channel configurations, sample formats, etc.) match the set of a-priori known attributes of the device.

Process

After invoking the test from the main menu, connect a USB audio peripheral. If the attributes match, the test pass (check mark) button will be enabled.

Select USB Audio Peripheral Attributes Test. attributes test
Summary of instructions is displayed. attributes summary
Pre-connect screen. attributes preconnect
USB audio peripheral connected to Android Device with peripheral cable and OTG adapter. attributes connected
Post-connect screen. attributes post connection

Play test

Abstract

This test verifies that audio playback is functioning. It does this by generating a 1KHz test tone and presenting it in stereo (two-channels) to the USB audio peripheral.

Process

After invoking the test from the main menu, connect the USB audio interface, including the analog headset, to the headset output jack on the interface for monitoring.

Press the PLAY button. If the test tone is heard in both channels of the headset, indicate test pass by clicking the test pass (check mark) button. If either or both of the channels do not play the tone, indicate test failure by clicking the test fail (exclamation point) button.

Notes

Select USB Audio Peripheral Play Test. play test
Summary of instructions is displayed. play summary
Pre-connect screen. play preconnect
Connect the USB audio peripheral to the Android Device.

The headphones are connected to the headphone output jack on the USB audio interface for monitoring.

play connected
Post-connect screen. play post connection

Record (loopback) test

Abstract

This test verifies that audio recording is functioning. It does this by generating a tone at the outputs of the USB audio interface, which is then routed via patch cords to the inputs of the USB audio peripheral.

Process

After invoking the test from the main menu, connect the USB audio interface. Connect the analog outputs to the analog inputs with patch cables. Press the RECORD LOOPBACK button. If both the channels of the recorded test tone are shown in the view below, indicate test pass by clicking the test pass (check mark) button. If either or both of the channels does not display, indicate test failure by clicking the test fail (exclamation point) button.

Notes

Ensure positive connection of both input and output jacks on the peripheral. It will be necessary to adjust the input levels to correctly display the recorded signal.

Select USB Audio Peripheral Record Test. record test
Summary of instructions is displayed. record summary
Pre-connect screen. record preconnect
USB audio Interface with loopback connected to Android device. record connected
Connections on the back of the USB audio interface. record connected in back
Connections on the front of the USB audio interface. record connected in front
Post-connect screen. record post connection
Post-connect screen, with record test running. record postconnect running

Headset buttons test

Abstract

This test verifies the media/transport buttons on the recommended headset are correctly recognized.

Process

After invoking the test from the main menu, connect the USB headset peripheral. Press each media/transport (play, pause, volume up & volume down) button on the headset. As each is recognized, it will be recognized in the test panel. When all buttons have been recognized, the test pass (check mark) button will be enabled. Click the test pass button to indicate success. If the full set of buttons is not recognized, indicate test failure by clicking the test fail (exclamation point) button.

Notes

The USB headset peripheral connected to the Android device.

Note the OTG adapter.

buttons connected
Select USB Audio Peripheral Buttons Test. buttons test
Summary of instructions is displayed. buttons summary
Peripheral connected, but no buttons recognized (yet).

Note that the expected (buttons which are known to the device profile) are indicated with white text; those that are not part of the test peripheral are displayed in grey text.

buttons not recognized
Peripheral connected, and expected buttons recognized. buttons recognized