ascii-chat 0.11.33
Video chat in your terminal
Loading...
Searching...
No Matches
client_audio_pipeline_config_t Struct Reference

Pipeline configuration parameters. More...

#include <include/ascii-chat/audio/client_pipeline.h>

Data Fields

int sample_rate
 
uint64_t frame_size_ns
 
int opus_bitrate
 
uint64_t echo_filter_ns
 
int noise_suppress_db
 
int agc_level
 
int agc_max_gain
 
uint64_t jitter_margin_ns
 
float highpass_hz
 
float lowpass_hz
 
float comp_threshold_db
 
float comp_ratio
 
uint64_t comp_attack_ns
 
uint64_t comp_release_ns
 
float comp_makeup_db
 
float gate_threshold
 
uint64_t gate_attack_ns
 
uint64_t gate_release_ns
 
float gate_hysteresis
 
client_audio_pipeline_flags_t flags
 

Detailed Description

Pipeline configuration parameters.

All parameters have sensible defaults. Pass NULL to create() for defaults.

Definition at line 167 of file client_pipeline.h.

Field Documentation

◆ agc_level

int client_audio_pipeline_config_t::agc_level

AGC target level (default: 8000, range 1-32767)

Definition at line 181 of file client_pipeline.h.

Referenced by client_audio_pipeline_process_duplex().

◆ agc_max_gain

int client_audio_pipeline_config_t::agc_max_gain

AGC maximum gain in dB (default: 30)

Definition at line 183 of file client_pipeline.h.

Referenced by client_audio_pipeline_process_duplex().

◆ comp_attack_ns

uint64_t client_audio_pipeline_config_t::comp_attack_ns

Compressor attack time in nanoseconds (default: 10ms)

Definition at line 198 of file client_pipeline.h.

Referenced by client_audio_pipeline_create().

◆ comp_makeup_db

float client_audio_pipeline_config_t::comp_makeup_db

Compressor makeup gain in dB (default: 3)

Definition at line 202 of file client_pipeline.h.

Referenced by client_audio_pipeline_create().

◆ comp_ratio

float client_audio_pipeline_config_t::comp_ratio

Compressor ratio (default: 4.0 for 4:1)

Definition at line 196 of file client_pipeline.h.

Referenced by client_audio_pipeline_create().

◆ comp_release_ns

uint64_t client_audio_pipeline_config_t::comp_release_ns

Compressor release time in nanoseconds (default: 100ms)

Definition at line 200 of file client_pipeline.h.

Referenced by client_audio_pipeline_create().

◆ comp_threshold_db

float client_audio_pipeline_config_t::comp_threshold_db

Compressor threshold in dB (default: -10)

Definition at line 194 of file client_pipeline.h.

Referenced by client_audio_pipeline_create().

◆ echo_filter_ns

uint64_t client_audio_pipeline_config_t::echo_filter_ns

Echo cancellation filter length in nanoseconds (default: 250ms)

Definition at line 176 of file client_pipeline.h.

◆ flags

client_audio_pipeline_flags_t client_audio_pipeline_config_t::flags

Component enable flags

Definition at line 214 of file client_pipeline.h.

Referenced by audio_client_init(), and client_audio_pipeline_create().

◆ frame_size_ns

uint64_t client_audio_pipeline_config_t::frame_size_ns

Frame size in nanoseconds (default: 20ms)

Definition at line 171 of file client_pipeline.h.

Referenced by client_audio_pipeline_create().

◆ gate_attack_ns

uint64_t client_audio_pipeline_config_t::gate_attack_ns

Noise gate attack time in nanoseconds (default: 2ms)

Definition at line 207 of file client_pipeline.h.

Referenced by client_audio_pipeline_create().

◆ gate_hysteresis

float client_audio_pipeline_config_t::gate_hysteresis

Noise gate hysteresis (default: 0.9)

Definition at line 211 of file client_pipeline.h.

Referenced by client_audio_pipeline_create().

◆ gate_release_ns

uint64_t client_audio_pipeline_config_t::gate_release_ns

Noise gate release time in nanoseconds (default: 50ms)

Definition at line 209 of file client_pipeline.h.

Referenced by client_audio_pipeline_create().

◆ gate_threshold

float client_audio_pipeline_config_t::gate_threshold

Noise gate threshold (linear, default: 0.01 = -40dB)

Definition at line 205 of file client_pipeline.h.

Referenced by client_audio_pipeline_create().

◆ highpass_hz

float client_audio_pipeline_config_t::highpass_hz

High-pass filter cutoff frequency in Hz (default: 80)

Definition at line 189 of file client_pipeline.h.

Referenced by client_audio_pipeline_create().

◆ jitter_margin_ns

uint64_t client_audio_pipeline_config_t::jitter_margin_ns

Jitter buffer margin in nanoseconds (default: 60ms)

Definition at line 186 of file client_pipeline.h.

Referenced by audio_client_init(), and client_audio_pipeline_jitter_margin().

◆ lowpass_hz

float client_audio_pipeline_config_t::lowpass_hz

Low-pass filter cutoff frequency in Hz (default: 8000)

Definition at line 191 of file client_pipeline.h.

Referenced by client_audio_pipeline_create().

◆ noise_suppress_db

int client_audio_pipeline_config_t::noise_suppress_db

Noise suppression level in dB (default: -25, negative = more suppression)

Definition at line 179 of file client_pipeline.h.

◆ opus_bitrate

int client_audio_pipeline_config_t::opus_bitrate

Opus bitrate in bps (default: 24000)

Definition at line 173 of file client_pipeline.h.

Referenced by audio_client_init(), and client_audio_pipeline_create().

◆ sample_rate

int client_audio_pipeline_config_t::sample_rate

The documentation for this struct was generated from the following file: