USB Audio application with AWE stack
VERSION | RELEASED | COMMENTS | DOCUMENTATION | SOFTWARE |
---|---|---|---|---|
1.0.2 | 2024-08-22 | VIEW HTML VIEW PDF | ZIP | |
1.0.0 | 2024-08-02 | DOWNLOAD ZIP | ZIP |
Overview#
This application note describes firmware that provides a high-speed USB Audio device designed to be compliant to version 2.0 of the USB Audio Class Specification based on the xcore.ai device. Output audio from the host is passed through Audio Weaver (AWE) Core for DSP processing, provided by DSP Concepts.
For more information on Audio Weaver see the DSP Concepts website, here.
The code related to this application note depends on lib_awe which contains the XMOS port of AWE.
Note
You must manually obtain the libAWECore.a file and place in the lib_awe/lib/xs3a directory inable to build applications with this software.
Key Features#
The application is designed to run on the xcore.ai Multichannel Audio Board (MCAB). It uses the XMOS USB Audio framework to implement a USB Audio device with the following key features:
USB Audio Class 2.0 (High Speed)
Stereo input from the host
Stereo output on the OUT 1/2 3.5 mm analog jack (line level)
Audio from the host is routed through the AWE framework before being played on the output jack
Asynchronous clocking (local audio clock to hardware)
24 bit Sample resolution
48 kHz sample rate
Tuning to AWE provided over USB HID with VID 0x20b1 and PID 0x0018 supporting live tuning from the Audio Weaver software
Optional use of the AWE Flash File System
A number of build configurations are included supporting different feature sets.
Known Issues#
None
For general issues see Known Issues in lib_awe
Required Tools#
XMOS XTC Tools: 15.3.0
Required Libraries (Dependencies)#
lib_sw_pll (www.github.com/xmos/lib_sw_pll)
lib_xua (www.github.com/xmos/lib_xua)
lib_adat (www.github.com/xmos/lib_adat)
lib_locks (www.github.com/xmos/lib_locks)
lib_logging (www.github.com/xmos/lib_logging)
lib_mic_array (www.github.com/xmos/lib_mic_array)
lib_xassert (www.github.com/xmos/lib_xassert)
lib_dsp (www.github.com/xmos/lib_dsp)
lib_spdif (www.github.com/xmos/lib_spdif)
lib_xud (www.github.com/xmos/lib_xud)
lib_i2c (www.github.com/xmos/lib_i2c)
lib_i2s (www.github.com/xmos/lib_i2s)
lib_awe (www.github.com/xmos/lib_awe)
Support#
This package is supported by XMOS Ltd. Issues can be raised against the software at: http://www.xmos.com/support