#include <stdio.h>#include <inttypes.h>#include <stdlib.h>#include <string.h>#include "spandsp/telephony.h"#include "spandsp/logging.h"#include "spandsp/complex.h"#include "spandsp/vector_float.h"#include "spandsp/complex_vector_float.h"#include "spandsp/async.h"#include "spandsp/dds.h"#include "spandsp/power_meter.h"#include "spandsp/v17tx.h"Defines | |
| #define | CARRIER_NOMINAL_FREQ 1800.0f |
| #define | V17_TRAINING_SEG_TEP_A 0 |
| #define | V17_TRAINING_SEG_TEP_B (V17_TRAINING_SEG_TEP_A + 480) |
| #define | V17_TRAINING_SEG_1 (V17_TRAINING_SEG_TEP_B + 48) |
| #define | V17_TRAINING_SEG_2 (V17_TRAINING_SEG_1 + 256) |
| #define | V17_TRAINING_SEG_3 (V17_TRAINING_SEG_2 + 2976) |
| #define | V17_TRAINING_SEG_4 (V17_TRAINING_SEG_3 + 64) |
| #define | V17_TRAINING_END (V17_TRAINING_SEG_4 + 48) |
| #define | V17_TRAINING_SHUTDOWN_A (V17_TRAINING_END + 32) |
| #define | V17_TRAINING_SHUTDOWN_END (V17_TRAINING_SHUTDOWN_A + 48) |
| #define | V17_TRAINING_SHORT_SEG_4 (V17_TRAINING_SEG_2 + 38) |
| #define | V17_BRIDGE_WORD 0x8880 |
| #define | PULSESHAPER_GAIN (9.9888356312f/10.0f) |
| #define | PULSESHAPER_COEFF_SETS 10 |
Functions | |
| int | v17_tx (v17_tx_state_t *s, int16_t amp[], int len) |
| Generate a block of V.17 modem audio samples. | |
| void | v17_tx_power (v17_tx_state_t *s, float power) |
| Adjust a V.17 modem transmit context's output power. | |
| void | v17_tx_set_get_bit (v17_tx_state_t *s, get_bit_func_t get_bit, void *user_data) |
| Change the get_bit function associated with a V.17 modem transmit context. | |
| int | v17_tx_restart (v17_tx_state_t *s, int rate, int tep, int short_train) |
| Reinitialise an existing V.17 modem transmit context. | |
| v17_tx_state_t * | v17_tx_init (v17_tx_state_t *s, int rate, int tep, get_bit_func_t get_bit, void *user_data) |
| Initialise a V.17 modem transmit context. | |
| int | v17_tx_release (v17_tx_state_t *s) |
| Release a V.17 modem transmit context. | |
Variables | |
| const complexf_t | v17_14400_constellation [128] |
| const complexf_t | v17_12000_constellation [64] |
| const complexf_t | v17_9600_constellation [32] |
| const complexf_t | v17_7200_constellation [16] |
|
||||||||||||||||
|
Generate a block of V.17 modem audio samples. Generate a block of V.17 modem audio samples.
|
|
||||||||||||||||||||||||
|
Initialise a V.17 modem transmit context. Initialise a V.17 modem transmit context. This must be called before the first use of the context, to initialise its contents.
|
|
||||||||||||
|
Adjust a V.17 modem transmit context's output power. Adjust a V.17 modem transmit context's power output.
|
|
|
Release a V.17 modem transmit context. Release a V.17 modem transmit context.
|
|
||||||||||||||||||||
|
Reinitialise an existing V.17 modem transmit context. Reinitialise an existing V.17 modem transmit context, so it may be reused.
|
|
||||||||||||||||
|
Change the get_bit function associated with a V.17 modem transmit context. Change the get_bit function associated with a V.17 modem transmit context.
|
|
|
Initial value:
{
{ 6, -6},
{-2, 6},
{ 6, 2},
{-6, -6},
{-6, 6},
{ 2, -6},
{-6, -2},
{ 6, 6},
{-2, 2},
{ 6, -2},
{-2, -6},
{ 2, 2},
{ 2, -2},
{-6, 2},
{ 2, 6},
{-2, -2}
}
|
1.4.6