Hide navigation sidebar
Hide table of contents sidebar
Skip to content
Back to top
Toggle table of contents sidebar

# Implementation detail

This chapter examines the implementation of the various components that make up `lib_xua`. It also examines the integration of dependencies and supporting libraries.

- Audio Hub and I²S
  - Port configuration (xcore master)
  - Changing audio sample frequency
- Endpoint 0: Management and control
  - Enumeration
  - Overriding standard requests
  - Class requests
    - Audio requests
    - Audio request: Set sample rate
    - Audio Request: Volume control
- Audio endpoints (Endpoint Buffer and Decoupler)
  - Endpoint Buffer
  - Decouple
  - Audio buffering scheme
  - Decoupler/Audio Hub interaction
  - Asynchronous feedback
  - USB rate control
- XMOS USB Device (XUD) library
- External clock recovery (Clock Gen)
- Digital mixer
  - Control
  - Host control
- S/PDIF transmit
  - Clocking
  - Usage
  - Output stream structure
- S/PDIF receive
  - Usage and integration
- MIDI
- PDM microphones
  - Hardware characteristics
  - Usage & integration
    - Mic array task
    - Receiving PCM samples
    - Restarting the mic array
    - Weak callback APIs
- Audio controls via Human Interface Device (HID)
- Device Firmware Upgrade (DFU) over USB
  - Enumerating as a WinUSB device on Windows
- Resource usage