spandsp
0.0.6
|
Go to the source code of this file.
Classes | |
struct | t30_exchanged_info_t |
struct | t30_stats_t |
Macros | |
#define | T30_MAX_DIS_DTC_DCS_LEN 22 |
#define | T30_MAX_IDENT_LEN 20 |
#define | T30_MAX_PAGE_HEADER_INFO 50 |
Typedefs | |
typedef struct t30_state_s | t30_state_t |
typedef int() | t30_phase_b_handler_t(t30_state_t *s, void *user_data, int result) |
T.30 phase B callback handler. More... | |
typedef int() | t30_phase_d_handler_t(t30_state_t *s, void *user_data, int result) |
T.30 phase D callback handler. More... | |
typedef void() | t30_phase_e_handler_t(t30_state_t *s, void *user_data, int completion_code) |
T.30 phase E callback handler. More... | |
typedef void() | t30_real_time_frame_handler_t(t30_state_t *s, void *user_data, int direction, const uint8_t msg[], int len) |
T.30 real time frame handler. More... | |
typedef int() | t30_document_handler_t(t30_state_t *s, void *user_data, int status) |
T.30 document handler. More... | |
typedef void() | t30_set_handler_t(void *user_data, int type, int bit_rate, int short_train, int use_hdlc) |
T.30 set a receive or transmit type handler. More... | |
typedef void() | t30_send_hdlc_handler_t(void *user_data, const uint8_t msg[], int len) |
T.30 send HDLC handler. More... | |
Functions | |
t30_state_t * | t30_init (t30_state_t *s, int calling_party, t30_set_handler_t *set_rx_type_handler, void *set_rx_type_user_data, t30_set_handler_t *set_tx_type_handler, void *set_tx_type_user_data, t30_send_hdlc_handler_t *send_hdlc_handler, void *send_hdlc_user_data) |
Initialise a T.30 context. More... | |
int | t30_release (t30_state_t *s) |
Release a T.30 context. More... | |
int | t30_free (t30_state_t *s) |
Free a T.30 context. More... | |
int | t30_restart (t30_state_t *s) |
Restart a T.30 context. More... | |
int | t30_call_active (t30_state_t *s) |
Check if a T.30 call is still active. More... | |
void | t30_terminate (t30_state_t *s) |
Cleanup a T.30 context if the call terminates. More... | |
void | t30_front_end_status (void *user_data, int status) |
Inform the T.30 engine of a status change in the front end (end of tx, rx signal change, etc.). More... | |
SPAN_DECLARE_NONSTD (int) t30_non_ecm_get_bit(void *user_data) | |
Get a bit of received non-ECM image data. More... | |
int | t30_non_ecm_get_byte (void *user_data) |
Get a byte of received non-ECM image data. More... | |
int | t30_non_ecm_get_chunk (void *user_data, uint8_t buf[], int max_len) |
Get a bit of received non-ECM image data. More... | |
SPAN_DECLARE_NONSTD (void) t30_non_ecm_put_bit(void *user_data | |
Process a bit of received non-ECM image data. More... | |
void | t30_non_ecm_put_byte (void *user_data, int byte) |
Process a byte of received non-ECM image data. More... | |
void | t30_non_ecm_put_chunk (void *user_data, const uint8_t buf[], int len) |
Process a chunk of received non-ECM image data. More... | |
void | t30_timer_update (t30_state_t *s, int samples) |
Report the passage of time to the T.30 engine. More... | |
void | t30_get_transfer_statistics (t30_state_t *s, t30_stats_t *t) |
Get the current transfer statistics. More... | |
void | t30_local_interrupt_request (t30_state_t *s, int state) |
Request a local interrupt of FAX exchange. More... | |
void | t30_remote_interrupts_allowed (t30_state_t *s, int state) |
Allow remote interrupts of FAX exchange. More... | |
Variables | |
int | bit |
const uint8_t | msg [] |
const uint8_t int | len |
const uint8_t int int | ok |
#define T30_MAX_DIS_DTC_DCS_LEN 22 |
The maximum length of a DIS, DTC or DCS frame
#define T30_MAX_IDENT_LEN 20 |
The maximum length of the body of an ident string
#define T30_MAX_PAGE_HEADER_INFO 50 |
The maximum length of the user string to insert in page headers
typedef int() t30_document_handler_t(t30_state_t *s, void *user_data, int status) |
T.30 document handler.
T.30 document handler.
s | The T.30 context. |
user_data | An opaque pointer. |
result | The document event code. |
typedef int() t30_phase_b_handler_t(t30_state_t *s, void *user_data, int result) |
T.30 phase B callback handler.
T.30 phase B callback handler. This handler can be used to process addition information available in some FAX calls, such as passwords. The callback handler can access whatever additional information might have been received, using t30_get_received_info().
s | The T.30 context. |
user_data | An opaque pointer. |
result | The phase B event code. |
typedef int() t30_phase_d_handler_t(t30_state_t *s, void *user_data, int result) |
T.30 phase D callback handler.
T.30 phase D callback handler.
s | The T.30 context. |
user_data | An opaque pointer. |
result | The phase D event code. |
typedef void() t30_phase_e_handler_t(t30_state_t *s, void *user_data, int completion_code) |
T.30 phase E callback handler.
T.30 phase E callback handler.
s | The T.30 context. |
user_data | An opaque pointer. |
completion_code | The phase E completion code. |
typedef void() t30_real_time_frame_handler_t(t30_state_t *s, void *user_data, int direction, const uint8_t msg[], int len) |
T.30 real time frame handler.
T.30 real time frame handler.
s | The T.30 context. |
user_data | An opaque pointer. |
direction | TRUE for incoming, FALSE for outgoing. |
msg | The HDLC message. |
len | The length of the message. |
typedef void() t30_send_hdlc_handler_t(void *user_data, const uint8_t msg[], int len) |
T.30 send HDLC handler.
T.30 send HDLC handler.
user_data | An opaque pointer. |
msg | The HDLC message. |
len | The length of the message. |
typedef void() t30_set_handler_t(void *user_data, int type, int bit_rate, int short_train, int use_hdlc) |
T.30 set a receive or transmit type handler.
T.30 set a receive or transmit type handler.
user_data | An opaque pointer. |
type | The modem, tone or silence to be sent or received. |
bit_rate | The bit rate of the modem to be sent or received. |
short_train | TRUE if the short training sequence should be used (where one exists). |
use_hdlc | FALSE for bit stream, TRUE for HDLC framing. |
anonymous enum |
T.30 protocol completion codes, at phase E.
anonymous enum |
I/O modes for the T.30 protocol. These are allocated such that the lower 4 bits represents the variant of the modem - e.g. the particular bit rate selected.
anonymous enum |
anonymous enum |
anonymous enum |
anonymous enum |
anonymous enum |
anonymous enum |
SPAN_DECLARE_NONSTD | ( | int | ) |
Get a bit of received non-ECM image data.
Get a bit of received non-ECM image data.
user_data | An opaque pointer, which must point to the T.30 context. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Apply T.30 transmit processing to generate a block of audio samples.
Apply fake T.30 receive processing.
Apply T.30 receive processing to a block of audio samples.
s | The FAX context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Apply fake T.30 receive processing when a block of audio samples is missing (e.g due to packet loss).
s | The FAX context. |
len | The number of samples to fake. |
Apply T.30 transmit processing to generate a block of audio samples.
s | The FAX context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Get a bit of received non-ECM image data.
Process a block of received V.8 audio samples.
Fake processing of a missing block of received V.29 modem audio samples.
Fake processing of a missing block of received V.27ter modem audio samples.
Generate a block of V.22bis modem audio samples.
Fake processing of a missing block of received V.22bis modem audio samples.
Process a block of received V.18 audio samples.
Fake processing of a missing block of received V.17 modem audio samples.
Generate a block of FAX audio samples.
Apply fake received audio processing.
Process a received T.38 IFP packet from a reliable stream (e.g. TCP).
Generate a block of T.31 modem audio samples.
Fake processing of a missing block of received T.31 modem audio samples.
Dummy receive fillin callback.
Dummy receive callback.
Process a block of samples through an instance of the modem connect tones detector.
Get the next sequence of bytes for transmission.
Get the next byte for transmission.
Fake processing of a missing block of received FSK modem audio samples.
Process a block of received FSK modem audio samples.
Apply T.30 transmit processing to generate a block of audio samples.
Apply fake T.30 receive processing.
Get the next bit of a transmitted serial bit stream.
user_data | An opaque point which must point to a transmitter context. |
Apply fake T.30 receive processing when a block of audio samples is missing (e.g due to packet loss).
s | The FAX context. |
len | The number of samples to fake. |
Apply T.30 transmit processing to generate a block of audio samples.
s | The FAX context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Process a block of received FSK modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Fake processing of a missing block of received FSK modem audio samples (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
s | A pointer to an HDLC transmitter context. |
s | A pointer to an HDLC transmitter context. |
buf | The buffer for the data. |
max_len | The number of bytes to get. |
s | The context. |
amp | An array of signal samples. |
len | The number of samples in the array. |
A dummy routine to use as a receive callback, when we aren't really trying to process what is received. It just absorbs and ignores the data.
user_data | The context. |
amp | The signal.buffer |
len | The length of the signal buffer |
A dummy routine to use as a receive fillin callback, when we aren't really trying to process what is received. It just absorbs and ignores the request.
user_data | The context. |
len | The length of the signal buffer |
Fake processing of a missing block of received T.31 modem audio samples (e.g due to packet loss).
s | The T.31 modem context. |
len | The number of samples to fake. |
Generate a block of T.31 modem audio samples.
s | The T.31 modem context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
s | The T.38 context. |
buf | The packet contents. |
len | The length of the packet contents. |
seq_no | The packet sequence number, used for logging purposes. |
Apply fake processing when a block of audio samples is missing (e.g due to packet loss).
s | The T.38 context. |
len | The number of samples to fake. |
Generate a block of FAX audio samples.
s | The T.38 context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Fake processing of a missing block of received V.17 modem audio samples. (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Process a block of received V.18 audio samples.
s | The V.18 context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Fake processing of a missing block of received V.22bis modem audio samples. (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Generate a block of V.22bis modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples to be generated. |
Fake processing of a missing block of received V.27ter modem audio samples. (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Fake processing of a missing block of received V.29 modem audio samples. (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Process a block of received V.8 audio samples.
s | The V.8 context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Get the next bit of a transmitted serial bit stream.
Apply T.30 transmit processing to generate a block of audio samples.
Apply fake T.30 receive processing.
Apply T.30 receive processing to a block of audio samples.
s | The FAX context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Apply fake T.30 receive processing when a block of audio samples is missing (e.g due to packet loss).
s | The FAX context. |
len | The number of samples to fake. |
Apply T.30 transmit processing to generate a block of audio samples.
s | The FAX context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Fake processing of a missing block of received FSK modem audio samples.
Process a block of received FSK modem audio samples.
Generate a block of FSK modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples to be generated. |
Process a block of received FSK modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Fake processing of a missing block of received FSK modem audio samples (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Get the next sequence of bytes for transmission.
Get the next byte for transmission.
s | A pointer to an HDLC transmitter context. |
s | A pointer to an HDLC transmitter context. |
s | A pointer to an HDLC transmitter context. |
buf | The buffer for the data. |
max_len | The number of bytes to get. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Process a block of samples through an instance of the modem connect tones detector.
s | The context. |
amp | An array of signal samples. |
len | The number of samples to generate. |
s | The context. |
amp | An array of signal samples. |
len | The number of samples in the array. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Dummy receive fillin callback.
Dummy receive callback.
Generate a block of silent audio samples.
s | The silence generator context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
A dummy routine to use as a receive callback, when we aren't really trying to process what is received. It just absorbs and ignores the data.
user_data | The context. |
amp | The signal.buffer |
len | The length of the signal buffer |
A dummy routine to use as a receive fillin callback, when we aren't really trying to process what is received. It just absorbs and ignores the request.
user_data | The context. |
len | The length of the signal buffer |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Generate a block of T.31 modem audio samples.
Fake processing of a missing block of received T.31 modem audio samples.
Process a block of received T.31 modem audio samples.
s | The T.31 modem context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Fake processing of a missing block of received T.31 modem audio samples (e.g due to packet loss).
s | The T.31 modem context. |
len | The number of samples to fake. |
Generate a block of T.31 modem audio samples.
s | The T.31 modem context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Process a received T.38 IFP packet from a reliable stream (e.g. TCP).
s | The T.38 context. |
buf | The packet contents. |
len | The length of the packet contents. |
seq_no | The packet sequence number. |
s | The T.38 context. |
buf | The packet contents. |
len | The length of the packet contents. |
seq_no | The packet sequence number, used for logging purposes. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Generate a block of FAX audio samples.
Apply fake received audio processing.
Process a block of received FAX audio samples.
s | The T.38 context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Apply fake processing when a block of audio samples is missing (e.g due to packet loss).
s | The T.38 context. |
len | The number of samples to fake. |
Generate a block of FAX audio samples.
s | The T.38 context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Get a bit of received non-ECM image data.
Process a block of received V.8 audio samples.
Fake processing of a missing block of received V.29 modem audio samples.
Fake processing of a missing block of received V.27ter modem audio samples.
Generate a block of V.22bis modem audio samples.
Fake processing of a missing block of received V.22bis modem audio samples.
Process a block of received V.18 audio samples.
Fake processing of a missing block of received V.17 modem audio samples.
Generate a block of FAX audio samples.
Apply fake received audio processing.
Process a received T.38 IFP packet from a reliable stream (e.g. TCP).
Generate a block of T.31 modem audio samples.
Fake processing of a missing block of received T.31 modem audio samples.
Dummy receive fillin callback.
Dummy receive callback.
Process a block of samples through an instance of the modem connect tones detector.
Get the next sequence of bytes for transmission.
Get the next byte for transmission.
Fake processing of a missing block of received FSK modem audio samples.
Process a block of received FSK modem audio samples.
Apply T.30 transmit processing to generate a block of audio samples.
Apply fake T.30 receive processing.
Get the next bit of a transmitted serial bit stream.
user_data | An opaque point which must point to a transmitter context. |
Apply fake T.30 receive processing when a block of audio samples is missing (e.g due to packet loss).
s | The FAX context. |
len | The number of samples to fake. |
Apply T.30 transmit processing to generate a block of audio samples.
s | The FAX context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Process a block of received FSK modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Fake processing of a missing block of received FSK modem audio samples (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
s | A pointer to an HDLC transmitter context. |
s | A pointer to an HDLC transmitter context. |
buf | The buffer for the data. |
max_len | The number of bytes to get. |
s | The context. |
amp | An array of signal samples. |
len | The number of samples in the array. |
A dummy routine to use as a receive callback, when we aren't really trying to process what is received. It just absorbs and ignores the data.
user_data | The context. |
amp | The signal.buffer |
len | The length of the signal buffer |
A dummy routine to use as a receive fillin callback, when we aren't really trying to process what is received. It just absorbs and ignores the request.
user_data | The context. |
len | The length of the signal buffer |
Fake processing of a missing block of received T.31 modem audio samples (e.g due to packet loss).
s | The T.31 modem context. |
len | The number of samples to fake. |
Generate a block of T.31 modem audio samples.
s | The T.31 modem context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
s | The T.38 context. |
buf | The packet contents. |
len | The length of the packet contents. |
seq_no | The packet sequence number, used for logging purposes. |
Apply fake processing when a block of audio samples is missing (e.g due to packet loss).
s | The T.38 context. |
len | The number of samples to fake. |
Generate a block of FAX audio samples.
s | The T.38 context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Fake processing of a missing block of received V.17 modem audio samples. (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Process a block of received V.18 audio samples.
s | The V.18 context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Fake processing of a missing block of received V.22bis modem audio samples. (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Generate a block of V.22bis modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples to be generated. |
Fake processing of a missing block of received V.27ter modem audio samples. (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Fake processing of a missing block of received V.29 modem audio samples. (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Process a block of received V.8 audio samples.
s | The V.8 context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Get the next bit of a transmitted serial bit stream.
Apply T.30 transmit processing to generate a block of audio samples.
Apply fake T.30 receive processing.
Apply T.30 receive processing to a block of audio samples.
s | The FAX context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Apply fake T.30 receive processing when a block of audio samples is missing (e.g due to packet loss).
s | The FAX context. |
len | The number of samples to fake. |
Apply T.30 transmit processing to generate a block of audio samples.
s | The FAX context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Get the next bit of a transmitted serial bit stream.
Fake processing of a missing block of received FSK modem audio samples.
Process a block of received FSK modem audio samples.
Generate a block of FSK modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples to be generated. |
Process a block of received FSK modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Fake processing of a missing block of received FSK modem audio samples (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Get the next bit of a transmitted serial bit stream.
Get the next sequence of bytes for transmission.
Get the next byte for transmission.
s | A pointer to an HDLC transmitter context. |
s | A pointer to an HDLC transmitter context. |
s | A pointer to an HDLC transmitter context. |
buf | The buffer for the data. |
max_len | The number of bytes to get. |
Get the next bit of a transmitted serial bit stream.
Process a block of samples through an instance of the modem connect tones detector.
s | The context. |
amp | An array of signal samples. |
len | The number of samples to generate. |
s | The context. |
amp | An array of signal samples. |
len | The number of samples in the array. |
Get the next bit of a transmitted serial bit stream.
Dummy receive fillin callback.
Dummy receive callback.
Generate a block of silent audio samples.
s | The silence generator context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
A dummy routine to use as a receive callback, when we aren't really trying to process what is received. It just absorbs and ignores the data.
user_data | The context. |
amp | The signal.buffer |
len | The length of the signal buffer |
A dummy routine to use as a receive fillin callback, when we aren't really trying to process what is received. It just absorbs and ignores the request.
user_data | The context. |
len | The length of the signal buffer |
Get the next bit of a transmitted serial bit stream.
Generate a block of T.31 modem audio samples.
Fake processing of a missing block of received T.31 modem audio samples.
Process a block of received T.31 modem audio samples.
s | The T.31 modem context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Fake processing of a missing block of received T.31 modem audio samples (e.g due to packet loss).
s | The T.31 modem context. |
len | The number of samples to fake. |
Generate a block of T.31 modem audio samples.
s | The T.31 modem context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Get the next bit of a transmitted serial bit stream.
Process a received T.38 IFP packet from a reliable stream (e.g. TCP).
s | The T.38 context. |
buf | The packet contents. |
len | The length of the packet contents. |
seq_no | The packet sequence number. |
s | The T.38 context. |
buf | The packet contents. |
len | The length of the packet contents. |
seq_no | The packet sequence number, used for logging purposes. |
Get the next bit of a transmitted serial bit stream.
Generate a block of FAX audio samples.
Apply fake received audio processing.
Process a block of received FAX audio samples.
s | The T.38 context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Apply fake processing when a block of audio samples is missing (e.g due to packet loss).
s | The T.38 context. |
len | The number of samples to fake. |
Generate a block of FAX audio samples.
s | The T.38 context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Fake processing of a missing block of received V.17 modem audio samples.
Process a block of received V.17 modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Fake processing of a missing block of received V.17 modem audio samples. (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Generate a block of V.17 modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples to be generated. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Process a block of received V.18 audio samples.
Generate a block of V.18 audio samples.
s | The V.18 context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Process a block of received V.18 audio samples.
s | The V.18 context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Generate a block of V.22bis modem audio samples.
Fake processing of a missing block of received V.22bis modem audio samples.
Process a block of received V.22bis modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Fake processing of a missing block of received V.22bis modem audio samples. (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Generate a block of V.22bis modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples to be generated. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Fake processing of a missing block of received V.27ter modem audio samples.
Process a block of received V.27ter modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Fake processing of a missing block of received V.27ter modem audio samples. (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Generate a block of V.27ter modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples to be generated. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Fake processing of a missing block of received V.29 modem audio samples.
Process a block of received V.29 modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
Fake processing of a missing block of received V.29 modem audio samples. (e.g due to packet loss).
s | The modem context. |
len | The number of samples to fake. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Generate a block of V.29 modem audio samples.
s | The modem context. |
amp | The audio sample buffer. |
len | The number of samples to be generated. |
Get a bit of received non-ECM image data.
Get the next bit of a transmitted serial bit stream.
Process a block of received V.8 audio samples.
Generate a block of V.8 audio samples.
s | The V.8 context. |
amp | The audio sample buffer. |
max_len | The number of samples to be generated. |
Process a block of received V.8 audio samples.
s | The V.8 context. |
amp | The audio sample buffer. |
len | The number of samples in the buffer. |
SPAN_DECLARE_NONSTD | ( | void | ) |
Process a bit of received non-ECM image data.
Process a received HDLC frame.
Process a bit of received non-ECM image data.
user_data | An opaque pointer, which must point to the T.30 context. |
bit | The received bit. |
Process a received HDLC frame.
user_data | The T.30 context. |
msg | The HDLC message. |
len | The length of the message, in octets. |
ok | TRUE if the frame was received without error. |
int t30_call_active | ( | t30_state_t * | s | ) |
Check if a T.30 call is still active.
Check if a T.30 call is still active. This may be used to regularly poll if the job has finished.
s | The T.30 context. |
References t30_state_s::phase.
int t30_free | ( | t30_state_t * | s | ) |
Free a T.30 context.
Free a T.30 context.
s | The T.30 context. |
References t30_release().
void t30_front_end_status | ( | void * | user_data, |
int | status | ||
) |
Inform the T.30 engine of a status change in the front end (end of tx, rx signal change, etc.).
Inform the T.30 engine of a status change in the front end (end of tx, rx signal change, etc.).
user_data | The T.30 context. |
status | The type of status change which occured. |
void t30_get_transfer_statistics | ( | t30_state_t * | s, |
t30_stats_t * | t | ||
) |
Get the current transfer statistics.
Get the current transfer statistics for the file being sent or received.
s | The T.30 context. |
t | A pointer to a buffer for the statistics. |
References t30_stats_t::bit_rate.
t30_state_t* t30_init | ( | t30_state_t * | s, |
int | calling_party, | ||
t30_set_handler_t * | set_rx_type_handler, | ||
void * | set_rx_type_user_data, | ||
t30_set_handler_t * | set_tx_type_handler, | ||
void * | set_tx_type_user_data, | ||
t30_send_hdlc_handler_t * | send_hdlc_handler, | ||
void * | send_hdlc_user_data | ||
) |
Initialise a T.30 context.
Initialise a T.30 context.
s | The T.30 context. |
calling_party | TRUE if the context is for a calling party. FALSE if the context is for an answering party. |
set_rx_type_handler | |
set_rx_type_user_data | |
set_tx_type_handler | |
set_tx_type_user_data | |
send_hdlc_handler | |
send_hdlc_user_data |
void t30_local_interrupt_request | ( | t30_state_t * | s, |
int | state | ||
) |
Request a local interrupt of FAX exchange.
Request a local interrupt of FAX exchange.
s | The T.30 context. |
state | TRUE to enable interrupt request, else FALSE. |
int t30_non_ecm_get_byte | ( | void * | user_data | ) |
Get a byte of received non-ECM image data.
Get a byte of received non-ECM image data.
user_data | An opaque pointer, which must point to the T.30 context. |
References t30_state_s::state.
int t30_non_ecm_get_chunk | ( | void * | user_data, |
uint8_t | buf[], | ||
int | max_len | ||
) |
Get a bit of received non-ECM image data.
Get a chunk of received non-ECM image data.
user_data | An opaque pointer, which must point to the T.30 context. |
buf | The buffer to contain the data. |
max_len | The maximum length of the chunk. |
void t30_non_ecm_put_byte | ( | void * | user_data, |
int | byte | ||
) |
Process a byte of received non-ECM image data.
Process a byte of received non-ECM image data.
user_data | An opaque pointer, which must point to the T.30 context. |
byte | The received byte. |
void t30_non_ecm_put_chunk | ( | void * | user_data, |
const uint8_t | buf[], | ||
int | len | ||
) |
Process a chunk of received non-ECM image data.
Process a chunk of received non-ECM image data.
user_data | An opaque pointer, which must point to the T.30 context. |
buf | The buffer containing the received data. |
len | The length of the data in buf. |
int t30_release | ( | t30_state_t * | s | ) |
Release a T.30 context.
Release a T.30 context.
s | The T.30 context. |
Referenced by fax_free(), fax_release(), t30_free(), and t38_terminal_release().
void t30_remote_interrupts_allowed | ( | t30_state_t * | s, |
int | state | ||
) |
Allow remote interrupts of FAX exchange.
Allow remote interrupts of FAX exchange.
s | The T.30 context. |
state | TRUE to allow interruptd, else FALSE. |
int t30_restart | ( | t30_state_t * | s | ) |
Restart a T.30 context.
Restart a T.30 context.
s | The T.30 context. |
References t30_state_s::phase.
void t30_terminate | ( | t30_state_t * | s | ) |
Cleanup a T.30 context if the call terminates.
Cleanup a T.30 context if the call terminates.
s | The T.30 context. |
References t30_state_s::phase.
void t30_timer_update | ( | t30_state_t * | s, |
int | samples | ||
) |
Report the passage of time to the T.30 engine.
Report the passage of time to the T.30 engine.
s | The T.30 context. |
samples | The time change in 1/8000th second steps. |
References t30_state_s::far_end_detected, and t30_state_s::timer_t0_t1.