19#ifndef _AUDIO_RATE_CONTROL_H_
20#define _AUDIO_RATE_CONTROL_H_
33struct audio_rate_control_imp_ctx;
38struct audio_rate_control_cfg;
53 int (*
initialize)(
struct audio_rate_control_imp_ctx *
const ctx);
76 int (*
reset)(
struct audio_rate_control_imp_ctx *
const ctx);
88 int (*
cfg_set)(
struct audio_rate_control_imp_ctx *
const ctx,
89 struct audio_rate_control_cfg const *
const cfg);
101 int (*
cfg_get)(
struct audio_rate_control_imp_ctx const *
const ctx,
102 struct audio_rate_control_cfg *cfg);
115 int (*
update)(
struct audio_rate_control_imp_ctx *
const ctx,
void *
const control_val_u);
149 struct audio_rate_control_imp_ctx *
const imp_ctx,
182 struct audio_rate_control_cfg
const *
const cfg);
193 struct audio_rate_control_cfg *
const cfg);
int audio_rate_control_update(struct audio_rate_control_ctx *const ctx, void *const control_val_u)
Update and get the new error between timestamps for an audio rate control module.
int audio_rate_control_cfg_get(struct audio_rate_control_ctx const *const ctx, struct audio_rate_control_cfg *const cfg)
Get the configuration of an audio rate control module.
int audio_rate_control_uninit(struct audio_rate_control_ctx *ctx)
Uninitialize an audio rate control module.
int audio_rate_control_init(struct audio_rate_control_ctx *const ctx, struct audio_rate_control_imp_ctx *const imp_ctx, struct audio_rate_control_ops const *const imp_cb)
Initialize an instance of the audio rate control module with the specified initial configuration.
int audio_rate_control_reset(struct audio_rate_control_ctx *const ctx)
Reset an audio rate control module back to the last valid configuration.
audio_rate_control_state
The state of the audio rate control.
Definition audio_rate_control.h:25
@ AUDIO_RATE_CONTROL_STATE_INITIALIZED
Definition audio_rate_control.h:27
@ AUDIO_RATE_CONTROL_STATE_UNINITIALIZED
Definition audio_rate_control.h:26
int audio_rate_control_cfg_set(struct audio_rate_control_ctx *const ctx, struct audio_rate_control_cfg const *const cfg)
Configure an audio rate control after it has been initialized.
enum audio_rate_control_state state
Definition audio_rate_control.h:132
struct audio_rate_control_ops cb
Definition audio_rate_control.h:135
struct audio_rate_control_imp_ctx * imp_ctx
Definition audio_rate_control.h:129
Audio rate control's private context.
Definition audio_rate_control.h:124
int(* reset)(struct audio_rate_control_imp_ctx *const ctx)
Reset a rate control module implementation back to the last valid configuration..
Definition audio_rate_control.h:76
int(* initialize)(struct audio_rate_control_imp_ctx *const ctx)
Initialize a rate control module implementation.
Definition audio_rate_control.h:53
int(* cfg_get)(struct audio_rate_control_imp_ctx const *const ctx, struct audio_rate_control_cfg *cfg)
Get the configuration of an active rate control implementation.
Definition audio_rate_control.h:101
int(* update)(struct audio_rate_control_imp_ctx *const ctx, void *const control_val_u)
Update the rate control value implementation.
Definition audio_rate_control.h:115
int(* uninitialize)(struct audio_rate_control_imp_ctx *ctx)
Uninitialize a rate control implementation.
Definition audio_rate_control.h:64
int(* cfg_set)(struct audio_rate_control_imp_ctx *const ctx, struct audio_rate_control_cfg const *const cfg)
Configure a rate control module after it has been initialized.
Definition audio_rate_control.h:88
Audio rate control's callback structure.
Definition audio_rate_control.h:43