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
span_sample_timer_t signalling_state_duration
???
Definition: private/sig_tone.h:234
Definition: private/power_meter.h:33
power_meter_t power
The power output of the notch.
Definition: private/sig_tone.h:197
span_sample_timer_t notch_insertion_timeout
???
Definition: private/sig_tone.h:229
int32_t detection_ratio
The minimum ratio between notched power and total power for detection.
Definition: private/sig_tone.h:220
const sig_tone_descriptor_t * desc
Tone descriptor.
Definition: private/sig_tone.h:173
span_sample_timer_t current_tx_timeout
Current transmit timeout.
Definition: private/sig_tone.h:157
span_sample_timer_t tone_persistence_timeout
Persistence check for tone present.
Definition: private/sig_tone.h:211
Definition: private/sig_tone.h:134
span_sample_timer_t flat_mode_timeout
???
Definition: private/sig_tone.h:227
span_tone_report_func_t sig_update
The callback function used to handle signalling changes.
Definition: private/sig_tone.h:168
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
Definition: private/sig_tone.h:165
span_sample_timer_t 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
span_sample_timer_t high_low_timer
Definition: private/sig_tone.h:152
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
span_sample_timer_t tone_off_check_time
The tone off persistence check, in audio samples.
Definition: private/sig_tone.h:105
span_sample_timer_t 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
int32_t phase_rate[2]
Definition: private/sig_tone.h:145
span_tone_report_func_t sig_update
The callback function used to handle signalling changes.
Definition: private/sig_tone.h:137
span_sample_timer_t signalling_state_duration
Time in current signalling state.
Definition: private/sig_tone.h:159
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
float sharp_detection_threshold
Minimum total power for detection in sharp mode, in dB.
Definition: private/sig_tone.h:125
span_sample_timer_t sharp_flat_timeout
Some signalling tone detectors use a sharp initial filter, changing to a broader, flatter...
Definition: private/sig_tone.h:92
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
span_sample_timer_t 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
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
span_sample_timer_t tone_on_check_time
The tone on persistence check, in audio samples.
Definition: private/sig_tone.h:103
int last_sample_tone_present
The tone pattern on the last audio sample.
Definition: private/sig_tone.h:213