Go to the source code of this file.
|
#define | V29_CONSTELLATION_SCALING_FACTOR 1.0 |
|
|
v29_rx_state_t * | v29_rx_init (v29_rx_state_t *s, int bit_rate, span_put_bit_func_t put_bit, void *user_data) |
| Initialise a V.29 modem receive context. More...
|
|
int | v29_rx_restart (v29_rx_state_t *s, int bit_rate, bool old_train) |
| Reinitialise an existing V.29 modem receive context. More...
|
|
int | v29_rx_release (v29_rx_state_t *s) |
| Release a V.29 modem receive context. More...
|
|
int | v29_rx_free (v29_rx_state_t *s) |
| Free a V.29 modem receive context. More...
|
|
logging_state_t * | v29_rx_get_logging_state (v29_rx_state_t *s) |
| Get the logging context associated with a V.29 modem receive context. More...
|
|
void | v29_rx_set_put_bit (v29_rx_state_t *s, span_put_bit_func_t put_bit, void *user_data) |
| Change the put_bit function associated with a V.29 modem receive context. More...
|
|
void | v29_rx_set_modem_status_handler (v29_rx_state_t *s, span_modem_status_func_t handler, void *user_data) |
| Change the modem status report function associated with a V.29 modem receive context. More...
|
|
int | v29_rx (v29_rx_state_t *s, const int16_t amp[], int len) |
| Process a block of received V.29 modem audio samples. More...
|
|
int | v29_rx_fillin (v29_rx_state_t *s, int len) |
| Fake processing of a missing block of received V.29 modem audio samples. More...
|
|
int | v29_rx_equalizer_state (v29_rx_state_t *s, complexf_t **coeffs) |
| Get a snapshot of the current equalizer coefficients. More...
|
|
float | v29_rx_carrier_frequency (v29_rx_state_t *s) |
|
float | v29_rx_symbol_timing_correction (v29_rx_state_t *s) |
|
float | v29_rx_signal_power (v29_rx_state_t *s) |
|
void | v29_rx_set_signal_cutoff (v29_rx_state_t *s, float cutoff) |
|
void | v29_rx_set_qam_report_handler (v29_rx_state_t *s, qam_report_handler_t handler, void *user_data) |
|
◆ v29_rx_state_t
V.29 modem receive side descriptor. This defines the working state for a single instance of a V.29 modem receiver.
◆ v29_rx()
Process a block of received V.29 modem audio samples.
Process a block of received V.29 modem audio samples.
- Parameters
-
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
- Returns
- The number of samples unprocessed.
◆ v29_rx_carrier_frequency()
◆ v29_rx_equalizer_state()
Get a snapshot of the current equalizer coefficients.
Get a snapshot of the current equalizer coefficients.
- Parameters
-
s | The modem context. |
coeffs | The vector of complex coefficients. |
- Returns
- The number of coefficients in the vector.
◆ v29_rx_fillin()
Fake processing of a missing block of received V.29 modem audio samples.
Fake processing of a missing block of received V.29 modem audio samples. (e.g due to packet loss).
- Parameters
-
s | The modem context. |
len | The number of samples to fake. |
- Returns
- The number of samples unprocessed.
References v29_rx_state_s::logging, and span_log().
◆ v29_rx_free()
Free a V.29 modem receive context.
Free a V.29 modem receive context.
- Parameters
-
- Returns
- 0 for OK
◆ v29_rx_get_logging_state()
Get the logging context associated with a V.29 modem receive context.
Get the logging context associated with a V.29 modem receive context.
- Parameters
-
- Returns
- A pointer to the logging context
References v29_rx_state_s::logging.
◆ v29_rx_init()
Initialise a V.29 modem receive context.
Initialise a V.29 modem receive context.
- Parameters
-
s | The modem context. |
bit_rate | The bit rate of the modem. Valid values are 4800, 7200 and 9600. |
put_bit | The callback routine used to put the received data. |
user_data | An opaque pointer passed to the put_bit routine. |
- Returns
- A pointer to the modem context, or NULL if there was a problem.
◆ v29_rx_release()
Release a V.29 modem receive context.
Release a V.29 modem receive context.
- Parameters
-
- Returns
- 0 for OK
◆ v29_rx_restart()
int v29_rx_restart |
( |
v29_rx_state_t * |
s, |
|
|
int |
bit_rate, |
|
|
bool |
old_train |
|
) |
| |
Reinitialise an existing V.29 modem receive context.
Reinitialise an existing V.29 modem receive context.
- Parameters
-
s | The modem context. |
bit_rate | The bit rate of the modem. Valid values are 4800, 7200 and 9600. |
old_train | True if a previous trained values are to be reused. |
- Returns
- 0 for OK, -1 for bad parameter
◆ v29_rx_set_modem_status_handler()
Change the modem status report function associated with a V.29 modem receive context.
Change the modem status report function associated with a V.29 modem receive context.
- Parameters
-
s | The modem context. |
handler | The callback routine used to report modem status changes. |
user_data | An opaque pointer. |
References v29_rx_state_s::status_handler, and v29_rx_state_s::status_user_data.
◆ v29_rx_set_put_bit()
Change the put_bit function associated with a V.29 modem receive context.
Change the put_bit function associated with a V.29 modem receive context.
- Parameters
-
s | The modem context. |
put_bit | The callback routine used to handle received bits. |
user_data | An opaque pointer. |
◆ v29_rx_set_qam_report_handler()
void v29_rx_set_qam_report_handler |
( |
v29_rx_state_t * |
s, |
|
|
qam_report_handler_t |
handler, |
|
|
void * |
user_data |
|
) |
| |
Set a handler routine to process QAM status reports
- Parameters
-
s | The modem context. |
handler | The handler routine. |
user_data | An opaque pointer passed to the handler routine. |
◆ v29_rx_set_signal_cutoff()
◆ v29_rx_signal_power()
◆ v29_rx_symbol_timing_correction()
Get the current symbol timing correction since startup.
- Parameters
-
- Returns
- The correction.