27 #if !defined(_SPANDSP_PRIVATE_SIG_TONE_H_) 28 #define _SPANDSP_PRIVATE_SIG_TONE_H_ 33 #if defined(SPANDSP_USE_FIXED_POINT) 54 #if defined(SPANDSP_USE_FIXED_POINT) 114 #if defined(SPANDSP_USE_FIXED_POINT) 116 int16_t detection_ratio;
118 int16_t sharp_detection_threshold;
120 int16_t flat_detection_threshold;
184 #if defined(SPANDSP_USE_FIXED_POINT) 200 #if defined(SPANDSP_USE_FIXED_POINT) The coefficient set for a pair of cascaded bi-quads that make a signalling notch filter.
Definition: private/sig_tone.h:31
bool notch_enabled
True if the notch filter is enabled in the media path.
Definition: private/sig_tone.h:225
int16_t tone_scaling[2][2]
Definition: private/sig_tone.h:150
Definition: private/power_meter.h:33
power_meter_t power
The power output of the notch.
Definition: private/sig_tone.h:197
int signalling_state_duration
Time in current signalling state, in samples.
Definition: private/sig_tone.h:159
int32_t detection_ratio
The minimum ratio between notched power and total power for detection.
Definition: private/sig_tone.h:220
tone_report_func_t sig_update
The callback function used to handle signalling changes.
Definition: private/sig_tone.h:137
const sig_tone_descriptor_t * desc
Tone descriptor.
Definition: private/sig_tone.h:173
int high_low_timeout
The delay, in audio samples, before the high level tone drops to a low level tone. Some signalling protocols require the signalling tone be started at a high level, to ensure crisp initial detection at the receiver, but require the tone amplitude to drop by a number of dBs if it is sustained, to reduce crosstalk levels.
Definition: private/sig_tone.h:87
int tone_on_check_time
The tone on persistence check, in audio samples.
Definition: private/sig_tone.h:103
Definition: private/sig_tone.h:134
const sig_tone_descriptor_t * desc
Tone descriptor.
Definition: private/sig_tone.h:142
float notch_z2[2]
The z's for the notch filter.
Definition: private/sig_tone.h:193
const sig_tone_flat_coeffs_t * flat
The coefficients for the single bi-quad flat mode filter.
Definition: private/sig_tone.h:112
int flat_mode_timeout
???
Definition: private/sig_tone.h:227
Definition: private/sig_tone.h:165
int notch_insertion_timeout
???
Definition: private/sig_tone.h:229
uint32_t phase_acc[2]
Definition: private/sig_tone.h:147
int signalling_state
???
Definition: private/sig_tone.h:232
int32_t sharp_detection_threshold
The minimum reading from the power meter for detection in sharp mode.
Definition: private/sig_tone.h:218
int high_low_timer
The timeout for switching from the high level to low level tone detector.
Definition: private/sig_tone.h:178
float flat_detection_threshold
Minimum total power for detection in flat mode, in dB.
Definition: private/sig_tone.h:127
int tone_off_check_time
The tone off persistence check, in audio samples.
Definition: private/sig_tone.h:105
int32_t phase_rate[2]
Definition: private/sig_tone.h:145
int high_low_timer
Definition: private/sig_tone.h:152
bool flat_mode
True if in flat mode. False if in sharp mode.
Definition: private/sig_tone.h:223
void * user_data
A user specified opaque pointer passed to the callback function.
Definition: private/sig_tone.h:170
int tones
The number of tones used.
Definition: private/sig_tone.h:108
Definition: private/sig_tone.h:74
int signalling_state_duration
???
Definition: private/sig_tone.h:234
tone_report_func_t sig_update
The callback function used to handle signalling changes.
Definition: private/sig_tone.h:168
float sharp_detection_threshold
Minimum total power for detection in sharp mode, in dB.
Definition: private/sig_tone.h:125
float notch_z1[2]
The z's for the notch filter.
Definition: private/sig_tone.h:191
float detection_ratio
Minimum signalling tone to total power ratio, in dB.
Definition: private/sig_tone.h:123
int sharp_flat_timeout
Some signalling tone detectors use a sharp initial filter, changing to a broader, flatter...
Definition: private/sig_tone.h:92
int notch_lag_time
Parameters to control the behaviour of the notch filter, used to remove the tone from the voice path ...
Definition: private/sig_tone.h:100
void * user_data
A user specified opaque pointer passed to the callback function.
Definition: private/sig_tone.h:139
float flat_z[2]
The z's for the weighting/bandpass filter.
Definition: private/sig_tone.h:205
int32_t flat_detection_threshold
The minimum reading from the power meter for detection in flat mode.
Definition: private/sig_tone.h:216
int current_notch_filter
???
Definition: private/sig_tone.h:180
int current_tx_timeout
Current transmit timeout.
Definition: private/sig_tone.h:157
int tone_persistence_timeout
Persistence check for tone present.
Definition: private/sig_tone.h:211
power_meter_t flat_power
The output power of the flat (unfiltered or flat filtered) path.
Definition: private/sig_tone.h:208
The coefficient set for a bi-quad that makes a signalling flat filter. Some signalling tone schemes r...
Definition: private/sig_tone.h:52
int current_tx_tone
Current transmit tone.
Definition: private/sig_tone.h:155
int current_rx_tone
The current receive tone.
Definition: private/sig_tone.h:176
int last_sample_tone_present
The tone pattern on the last audio sample.
Definition: private/sig_tone.h:213