Version: 2.0  

Last updated: 2026-09-28

## Overview

This specification module outlines the USB audio hardware and software
requirements for audio peripherals.


### Minimum and Additional Requirements

This specification document is divided into two sections:

1. **Minimum** requirements describe the criteria for a peripheral category to be compatible.
2. **Additional** requirements describe the criteria for certification.

Use these navigation buttons to show only the minimum or both the minimum
and additional specification, respectively.
<button value="min">Minimum</button> <button value="add" default="">Minimum and Additional</button>

<br />

## USB Audio Specifications

### MINIMUM REQUIREMENTS

#### Hardware

##### Firmware

- Peripheral MUST be declared as an audio device with a correct audio interface (0x01) descriptor.
  - There MUST be one corresponding descriptor for both input and output terminal.
    - It is recommended to report the USB Audio Class (UAC) terminal type:
      - Headset [(0x0402)](https://www.usb.org/sites/default/files/termt10.pdf)
      - SpeakerPhone [(0x0403-0x0405)](https://www.usb.org/sites/default/files/termt10.pdf)
- If it has any button, it MUST be declared as an HID.

#### Software

##### Format


Refer to the [Audio Format](https://developers.google.com/chromeos/peripherals/modules/cc-audio-usb#audio_format) section.

##### HID Codes

- For each HID event, it can only transmit one event at a time.
- The correct event code and corresponding event code MUST be received when the button is pressed.
- If there is any interface designed to provide peripheral functionalities, the USB peripheral MUST support emitting or receiving the corresponding HID events according to [USB.org HID specification](https://www.usb.org/sites/default/files/documents/hut1_12v2.pdf).

##### Jack Detection

- If the USB device supports audio jack detection, it MUST declare support for
  USB Audio Class (UAC) in either of the following:

  - [UAC1](https://www.usb.org/document-library/audio-device-class-spec-basic-audio-devices-v10-and-adopters-agreement)
  - [UAC2](https://www.usb.org/document-library/audio-devices-rev-20-and-adopters-agreement)
  - [UAC3](https://www.usb.org/document-library/usb-audio-devices-rev-30-and-adopters-agreement)

### ADDITIONAL REQUIREMENTS

Along with the **Minimum** requirements, a peripheral MUST meet the following
requirements to achieve certification:

- None


## Audio Format

### MINIMUM REQUIREMENTS

|   | Playback | Recording |
| Sample rate | ≥ 16 kHz | ≥ 16 kHz |
| Format | S16_LE | S16_LE |
|---|---|---|

- The channel number and configuration MUST be correct.
- All sampling rates the peripheral declares supported MUST work correctly.
  - The deviation between measured rate and sampling rate MUST be ≤ 0.1%.
  - The standard error for linear regression of measured rate MUST be \< 30.
- The device MUST support playback or capture under different sample rates it
  asserts to support. Otherwise, it requires the OS to add a specific
  configuration file to prevent it on the system side.

  For example: play audio under 44.1 kHz but capture voice under 48 kHz
  simultaneously.

### ADDITIONAL REQUIREMENTS

Along with the **Minimum** requirements, a peripheral MUST meet the following
requirements to achieve certification:

- None

<br />

## Revision history

| Date | Version | Notes |
|---|---|---|
| 2026-09-28 | 2.0 | Update for ChromeOS Compatible specification. |
| 2026-03-03 | 1.1.2 | Formatting update. |
| 2024-06-14 | 1.1.1 | Minor text cleanup. Publish to partner site. |
| 2023-06-07 | 1.1 | Update UAC requirement. |
| 2022-12-19 | 1.0 | Initial version. |

<br />