diff --git a/lib_xua/doc/pdf/index.pdf b/lib_xua/doc/pdf/index.pdf index 8ee767d1..1c61b21e 100644 Binary files a/lib_xua/doc/pdf/index.pdf and b/lib_xua/doc/pdf/index.pdf differ diff --git a/lib_xua/doc/rst/feat.rst b/lib_xua/doc/rst/feat.rst index f76154f2..24019ea6 100644 --- a/lib_xua/doc/rst/feat.rst +++ b/lib_xua/doc/rst/feat.rst @@ -46,7 +46,7 @@ These hardware resources must be passed into the call to ``XUA_AudioHub()``:: For configuration options, master vs slave, TDM etc please see the API section. - +|newpage| diff --git a/lib_xua/doc/rst/index.rst b/lib_xua/doc/rst/index.rst index c4e86372..63583423 100644 --- a/lib_xua/doc/rst/index.rst +++ b/lib_xua/doc/rst/index.rst @@ -5,22 +5,24 @@ About This Document ------------------- -This document describes the structure of the library, its basic use -and resources required. +This document describes the structure of the library, its use and resources required. It also covers some implementation detail. -This document assumes familiarity with the XMOS xCORE architecture, the -Universal Serial Bus 2.0 Specification (and related specifications), +This document assumes familiarity with the XMOS xCORE architecture, the Universal Serial Bus 2.0 Specification (and related specifications), the XMOS tool chain and XC language. Host System Requirements ------------------------ +USB Audio devices built using `lib_xua` have the following host system requirements. + - Mac OSX version 10.6 or later -- Windows XP, Vista, 7, 8 or 10 with Thesycon Audio Class 2.0 driver for Windows (Tested against version 3.20). Please contact XMOS for details. +- Windows Vista, 7, 8 or 10 with Thesycon Audio Class 2.0 driver for Windows (Tested against version 3.20). Please contact XMOS for details. -- Windows XP, Vista, 7, 8 or 10 with built-in USB Audio Class 1.0 driver. +- Windows Vista, 7, 8 or 10 with built-in USB Audio Class 1.0 driver. + +Older versions of Windows are not guaranteed to operate as expected. Devices are also expected to operate with various Linux distributions including mobile variants. .. toctree:: diff --git a/lib_xua/doc/rst/sw.rst b/lib_xua/doc/rst/sw.rst index 0df098ae..5201e90a 100644 --- a/lib_xua/doc/rst/sw.rst +++ b/lib_xua/doc/rst/sw.rst @@ -4,12 +4,9 @@ USB Audio Software Overview --------------------------- -This section describes the software architecture of a USB Audio device implemented using `lib_xua`, its dependancies and other supporting libraries. +This section describes the software architecture of a USB Audio device implemented using `lib_xua`, its dependencies and other supporting libraries. - -`lib_xua` provides the fundamental building blocks for producing USB Audio products on XMOS devices. - -Every system is required to have the shared components from `lib_xua` listed in :ref:`usb_audio_shared_components`. +`lib_xua` provides fundamental building blocks for producing USB Audio products on XMOS devices. Every system is required to have the components from `lib_xua` listed in :ref:`usb_audio_shared_components`. .. _usb_audio_shared_components: @@ -40,7 +37,7 @@ In addition low-level USB I/0 is required and is provided by the external depend * - XMOS USB Device Driver (XUD) - Handles the low level USB I/O. -In addition :ref:`usb_audio_optional_components` shows optional components that can be added/enabled from `lib_xua` +In addition :ref:`usb_audio_optional_components` shows optional components that can be added/enabled from within `lib_xua` .. _usb_audio_optional_components: @@ -53,21 +50,30 @@ In addition :ref:`usb_audio_optional_components` shows optional components that * - Mixer - Allows digital mixing of input and output channels. It can also handle volume control instead of the decoupler. - * - S/PDIF Transmitter - - Outputs samples of an S/PDIF digital audio interface. - * - S/PDIF Receiver - - Inputs samples of an S/PDIF digital audio interface (requires the - clockgen component). - * - ADAT Receiver - - Inputs samples of an ADAT digital audio interface (requires the - clockgen component). * - Clockgen - Drives an external frequency generator (PLL) and manages changes between internal clocks and external clocks arising from digital input. * - MIDI - Outputs and inputs MIDI over a serial UART interface. - * - PDM Microphones + +`lib_xua` also provides optional support for integrating with the following eternal dependencies: + +.. list-table:: Optional Components + :header-rows: 1 + :widths: 40 60 + + * - Component + - Description + * - S/PDIF Transmitter (lib_spdif) + - Outputs samples of an S/PDIF digital audio interface. + * - S/PDIF Receiver (lib_spdif) + - Inputs samples of an S/PDIF digital audio interface (requires the + clockgen component). + * - ADAT Receiver (lib_adat) + - Inputs samples of an ADAT digital audio interface (requires the + clockgen component). + * - PDM Microphones (lib_mic_array) - Receives PDM data from microphones and performs PDM to PCM conversion .. _usb_audio_threads: diff --git a/lib_xua/doc/rst/using.rst b/lib_xua/doc/rst/using.rst index 8aa2b06d..46fa4b4f 100644 --- a/lib_xua/doc/rst/using.rst +++ b/lib_xua/doc/rst/using.rst @@ -159,7 +159,7 @@ To enable custom functionality, such as configuring external audio hardware, cus Codeless programming model ~~~~~~~~~~~~~~~~~~~~~~~~~~ -Whilst it is possible to code a USB Audio device using the building blocks provided by `lib_xud` it is realised that this might not be desirable for some classes of customers or product. +Whilst it is possible to code a USB Audio device using the building blocks provided by `lib_xua` it is realised that this might not be desirable for some classes of customers or product. For instance, some users may not have a large software development experience and simply want to customise some basic settings such as strings. Others may want to fully customise the implementation - adding additional functionality such as adding DSD or possibly only using a subset of the functions provided - just ``XUA_AudioHub``, for example. @@ -171,6 +171,6 @@ Using this development model the user simply must include a ``xua_conf.h`` with This model also provides the benefit of a known-good, full codebase as a basis for a product. -This behaviour described in this section is the default behaviour of `lib_xud`, to disable this please set ``EXCLUDE_USB_AUDIO_MAIN`` to 1 in the application makefile or ``xua_conf.h``. +This behaviour described in this section is the default behaviour of `lib_xua`, to disable this please set ``EXCLUDE_USB_AUDIO_MAIN`` to 1 in the application makefile or ``xua_conf.h``.