nRF Connect SDK API 3.4.99
Loading...
Searching...
No Matches
Audio rate control API

Audio rate control API for nRF Audio applications. More...

Data Structures

struct  audio_rate_control_ops
 Audio rate control's callback structure. More...
struct  audio_rate_control_ctx
 Audio rate control's private context. More...

Enumerations

enum  audio_rate_control_state { AUDIO_RATE_CONTROL_STATE_EMPTY = 0 , AUDIO_RATE_CONTROL_STATE_UNINITIALIZED , AUDIO_RATE_CONTROL_STATE_INITIALIZED }
 The state of the audio rate control. More...
enum  audio_rate_control_type { AUDIO_PLL = 0 , USB_ASYNC = 1 , I2S = 2 , AUDIO_RATE_CONTROL_TYPE_COUNT }
 Enumeration of possible audio rate control sources. More...

Functions

int audio_rate_control_reset (enum audio_rate_control_type type)
 Reset an audio rate control module back to the last valid configuration.
int audio_rate_control_cfg_set (enum audio_rate_control_type type, struct audio_rate_control_cfg const *const cfg)
 Configure an audio rate control after it has been initialized.
int audio_rate_control_cfg_get (enum audio_rate_control_type type, struct audio_rate_control_cfg *const cfg)
 Get the configuration of an audio rate control module.
int audio_rate_control_update (enum audio_rate_control_type type, void *const control_val_u)
 Update the error between timestamps for an audio rate control module.
int audio_rate_control_register (enum audio_rate_control_type type, struct audio_rate_control_ops const *const imp_ops)
 Register an audio rate control implementation for a specific type.
int audio_rate_control_uninit (enum audio_rate_control_type type)
 Uninitialize an audio rate control module.
int audio_rate_control_init (enum audio_rate_control_type type)
 Initialize the registered audio rate control module.

Detailed Description

Audio rate control API for nRF Audio applications.

This Audio Rate Control provides generic functions to manage the audio synchronization. On the nRF5340 SoC, the audio synchronization is typically controlled with the Audio Phase-Locked Loop (PLL). Although where this is not available, alternative methods can be configured through the callback functions.