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

# Introduction

## lib_src components

`lib_src` provides both synchronous and asynchronous audio sample rate conversion functions.

`lib_src` includes the following components:

> - HiFi quality multi-rate sample rate conversion:

>   - Synchronous Sample Rate Converter (SSRC) function

>   - Asynchronous Sample Rate Converter (ASRC) function

> - HiFi quality fixed factor sample rate conversion:

>   - Synchronous factor of 3 downsample function (`src_ds3`)

>   - Synchronous factor of 3 oversample function (`src_os3`)

> - Voice quality fixed factor sample rate conversion:

>   - Synchronous factor of 3 downsample function (`src_ds3_voice`)

>   - Synchronous factor of 3 oversample function (`src_us3_voice`)

> - Voice quality fixed factor sample rate conversion optimised for XS3:

>   - Synchronous factor of 3 downsample function (`src_ff3_96t_ds`)

>   - Synchronous factor of 3 oversample function (`src_ff3_96t_us`)

>   - Synchronous factor of 3/2 downsample function (`src_rat_2_3_96t_ds`)

>   - Synchronous factor of 3/2 oversample function (`src_rat_3_2_96t_us`)

> - Integration support:

>   - Asynchronous FIFO with controller for use with ASRC

The component listing above includes three different component options that support fixed factor of 3 up/downsampling. To order to choose which one to use follow these steps:

> 1. If HiFi quality (130 dB SNR) up/downsampling is required, use `src_ds3` or `src_os3`.

> 2. If voice quality (65 dB SNR) is required running on xcore-200, use `src_ds3_voice` or `src_us3_voice`.

> 3. If voice quality (75 dB SNR) is required running xcore-ai, use `src_ff3_96t_ds` or `src_ff3_96t_us`.

## Using lib_src

`lib_src` is intended to be used with the XCommon CMake , the XMOS application build and dependency management system.

To use this library, include `lib_src` in the application’s `APP_DEPENDENT_MODULES` list, for example:

    set(APP_DEPENDENT_MODULES "lib_src")

Applications should then include the `src.h` header file.