The USB class protocol for AUDIO was defined for devices or functions embedded in composite devices that are used to manipulate audio, voice, and sound-related functionality. This includes both audio data and the functionality that is used to directly control the audio environment, such as Volume and Tone Control.
- Compatibility with USB Audio V1.0 devices.
- Transfer sound to audio output devices (e.g. speakers).
- Receive data from audio input devices (e.g. microphones).
- Control the audio environment, such as Volume and Tone Control.
- Notifications about insertion and removal of audio devices.
- All common sample rates supported (8, 16, 22.05, 44.1, 48, 96, 192 kHz, etc.)
- All sample resolutions supported (8, 16, 24, 32 bit per sample)
- Any number of channels supported
- Small footprint
SEGGER provides multiple examples with the Audio class for emUSB-Host. One of the examples plays a voice to a connected USB speaker. If additionally an USB memory stick with a ".wav" file is connected, the audio file is played.
Another example reads audio data from an input device (like a microphone) and outputs the volume level.