Asterisk - The Open Source Telephony Project GIT-master-f36a736
Data Fields
ast_rtp Struct Reference

RTP session description. More...

Collaboration diagram for ast_rtp:
Collaboration graph
[legend]

Data Fields

unsigned int asymmetric_codec
 
struct ast_sockaddr bind_address
 
struct ast_rtp_instancebundled
 
char cname [AST_UUID_STR_LEN]
 
unsigned int cycles
 
unsigned int dtmf_duration
 
unsigned int dtmf_samplerate_ms
 
unsigned int dtmf_timeout
 
enum ast_rtp_dtmf_mode dtmfmode
 
struct timeval dtmfmute
 
unsigned int dtmfsamples
 
int expectedrxseqno
 
int expectedseqno
 
struct ast_frame f
 
unsigned int flags
 
optional_ts last_end_timestamp
 
unsigned int last_seqno
 
unsigned int last_transit_time_samples
 
unsigned int lastdigitts
 
unsigned int lastitexttimestamp
 
unsigned int lastividtimestamp
 
unsigned int lastotexttimestamp
 
unsigned int lastovidtimestamp
 
struct ast_formatlastrxformat
 
int lastrxseqno
 
unsigned int lastts
 
struct ast_formatlasttxformat
 
struct {
   size_t   current
 
   int *   elems
 
   size_t   max
 
missing_seqno
 
struct ast_rtp_instanceowner
 The RTP instance owning us (used for debugging purposes) We don't hold a reference to the instance because it created us in the first place. It can't go away. More...
 
int prevrxseqno
 
unsigned char rawdata [8192+AST_FRIENDLY_OFFSET]
 
struct ast_data_bufferrecv_buffer
 
struct rtp_redred
 
unsigned int remote_seed_rx_rtp_ts
 
unsigned int remote_seed_rx_rtp_ts_stable
 
char resp
 
struct ast_rtcprtcp
 
struct rtp_learning_info rtp_source_learn
 
struct timeval rxcore
 
unsigned int rxcount
 
double rxjitter
 
double rxjitter_samples
 
double rxmes
 
unsigned int rxoctetcount
 
double rxstart
 
double rxstart_stable
 
int s
 
struct ast_sched_contextsched
 
unsigned short seedrxseqno
 
struct ast_data_buffersend_buffer
 
char send_digit
 
int send_duration
 
int send_payload
 
char sending_digit
 
unsigned short seqno
 
struct ast_smoothersmoother
 
unsigned int ssrc
 
struct {
   size_t   current
 
   struct rtp_ssrc_mapping *   elems
 
   size_t   max
 
ssrc_mapping
 
unsigned int ssrc_orig
 
unsigned char ssrc_saved
 
int stream_num
 
struct ast_sockaddr strict_rtp_address
 
enum strict_rtp_state strict_rtp_state
 
unsigned int themssrc
 
unsigned int themssrc_valid
 
struct rtp_transport_wide_cc_statistics transport_wide_cc
 
struct timeval txcore
 
unsigned int txcount
 
unsigned int txoctetcount
 

Detailed Description

RTP session description.

Definition at line 386 of file res_rtp_asterisk.c.

Field Documentation

◆ asymmetric_codec

unsigned int asymmetric_codec

Indicate if asymmetric send/receive codecs are allowed

Definition at line 452 of file res_rtp_asterisk.c.

Referenced by ast_rtp_prop_set(), and bridge_p2p_rtp_write().

◆ bind_address

struct ast_sockaddr bind_address

Requested bind address for the sockets

Definition at line 463 of file res_rtp_asterisk.c.

Referenced by ast_rtp_new(), and rtp_allocate_transport().

◆ bundled

struct ast_rtp_instance* bundled

◆ cname

char cname[AST_UUID_STR_LEN]

Our local CNAME

Definition at line 394 of file res_rtp_asterisk.c.

Referenced by ast_rtcp_generate_sdes(), ast_rtp_get_cname(), and ast_rtp_new().

◆ current

size_t current

Definition at line 405 of file res_rtp_asterisk.c.

◆ cycles

unsigned int cycles

Shifted count of sequence number cycles

Definition at line 412 of file res_rtp_asterisk.c.

Referenced by ast_rtcp_generate_report(), and ast_rtp_interpret().

◆ dtmf_duration

unsigned int dtmf_duration

Total duration in samples since the digit start event

Definition at line 432 of file res_rtp_asterisk.c.

Referenced by ast_rtp_interpret(), and process_dtmf_rfc2833().

◆ dtmf_samplerate_ms

unsigned int dtmf_samplerate_ms

The sample rate of the current RTP stream in ms (sample rate / 1000)

Definition at line 436 of file res_rtp_asterisk.c.

Referenced by ast_rtp_dtmf_begin(), ast_rtp_dtmf_continuation(), and ast_rtp_dtmf_end_with_duration().

◆ dtmf_timeout

unsigned int dtmf_timeout

When this timestamp is reached we consider END frame lost and forcibly abort digit

Definition at line 433 of file res_rtp_asterisk.c.

Referenced by ast_rtp_interpret(), process_dtmf_cisco(), and process_dtmf_rfc2833().

◆ dtmfmode

enum ast_rtp_dtmf_mode dtmfmode

The current DTMF mode of the RTP stream

Definition at line 435 of file res_rtp_asterisk.c.

Referenced by ast_rtp_dtmf_mode_get(), and ast_rtp_dtmf_mode_set().

◆ dtmfmute

struct timeval dtmfmute

◆ dtmfsamples

unsigned int dtmfsamples

Definition at line 434 of file res_rtp_asterisk.c.

Referenced by create_dtmf_frame(), process_dtmf_cisco(), and process_dtmf_rfc2833().

◆ elems [1/2]

int* elems

Definition at line 405 of file res_rtp_asterisk.c.

◆ elems [2/2]

struct rtp_ssrc_mapping* elems

Definition at line 462 of file res_rtp_asterisk.c.

◆ expectedrxseqno

int expectedrxseqno

Next expected sequence number, from the network

Definition at line 404 of file res_rtp_asterisk.c.

Referenced by ast_rtcp_generate_nack(), ast_rtp_new(), and ast_rtp_read().

◆ expectedseqno

int expectedseqno

Next expected sequence number, from the core

Definition at line 406 of file res_rtp_asterisk.c.

Referenced by ast_rtp_dtmf_end_with_duration(), ast_rtp_new(), and rtp_raw_write().

◆ f

struct ast_frame f

◆ flags

unsigned int flags

Definition at line 443 of file res_rtp_asterisk.c.

Referenced by process_dtmf_cisco(), and rtp_sendto().

◆ last_end_timestamp

optional_ts last_end_timestamp

The last known timestamp received from an END packet

Definition at line 431 of file res_rtp_asterisk.c.

Referenced by ast_rtp_interpret(), ast_rtp_remote_address_set(), bridge_p2p_rtp_write(), and process_dtmf_rfc2833().

◆ last_seqno

unsigned int last_seqno

The last known sequence number for any DTMF packet

Definition at line 430 of file res_rtp_asterisk.c.

Referenced by ast_rtp_interpret(), ast_rtp_remote_address_set(), and process_dtmf_rfc2833().

◆ last_transit_time_samples

unsigned int last_transit_time_samples

The last transit time in samples

Definition at line 423 of file res_rtp_asterisk.c.

Referenced by calc_rxstamp_and_jitter().

◆ lastdigitts

unsigned int lastdigitts

◆ lastitexttimestamp

unsigned int lastitexttimestamp

Definition at line 400 of file res_rtp_asterisk.c.

Referenced by ast_rtp_interpret().

◆ lastividtimestamp

unsigned int lastividtimestamp

Definition at line 398 of file res_rtp_asterisk.c.

Referenced by ast_rtp_interpret(), and ast_rtp_read().

◆ lastotexttimestamp

unsigned int lastotexttimestamp

Definition at line 401 of file res_rtp_asterisk.c.

Referenced by rtp_raw_write().

◆ lastovidtimestamp

unsigned int lastovidtimestamp

Definition at line 399 of file res_rtp_asterisk.c.

Referenced by rtp_raw_write().

◆ lastrxformat

struct ast_format* lastrxformat

◆ lastrxseqno

int lastrxseqno

Last received sequence number, from the network

Definition at line 403 of file res_rtp_asterisk.c.

Referenced by ast_rtcp_generate_report(), ast_rtp_read(), calc_rxstamp_and_jitter(), and rtp_learning_start().

◆ lastts

unsigned int lastts

◆ lasttxformat

struct ast_format* lasttxformat

◆ max

size_t max

Definition at line 405 of file res_rtp_asterisk.c.

◆ 

struct { ... } missing_seqno

A vector of sequence numbers we never received

Referenced by ast_rtcp_generate_nack(), ast_rtp_destroy(), ast_rtp_prop_set(), and ast_rtp_read().

◆ owner

struct ast_rtp_instance* owner

The RTP instance owning us (used for debugging purposes) We don't hold a reference to the instance because it created us in the first place. It can't go away.

Definition at line 460 of file res_rtp_asterisk.c.

Referenced by ast_rtp_destroy(), ast_rtp_new(), calc_rxstamp_and_jitter(), update_local_mes_stats(), and update_reported_mes_stats().

◆ prevrxseqno

int prevrxseqno

Previous received packeted sequence number, from the network

Definition at line 402 of file res_rtp_asterisk.c.

Referenced by ast_rtp_read(), and calc_rxstamp_and_jitter().

◆ rawdata

unsigned char rawdata[8192+AST_FRIENDLY_OFFSET]

Definition at line 390 of file res_rtp_asterisk.c.

Referenced by ast_rtp_read(), and process_cn_rfc3389().

◆ recv_buffer

struct ast_data_buffer* recv_buffer

Buffer for storing received packets for retransmission

Definition at line 477 of file res_rtp_asterisk.c.

Referenced by ast_rtp_destroy(), ast_rtp_prop_set(), and ast_rtp_read().

◆ red

struct rtp_red* red

◆ remote_seed_rx_rtp_ts

unsigned int remote_seed_rx_rtp_ts

RTP timestamp of first RX packet.

Definition at line 421 of file res_rtp_asterisk.c.

Referenced by calc_rxstamp_and_jitter().

◆ remote_seed_rx_rtp_ts_stable

unsigned int remote_seed_rx_rtp_ts_stable

RTP timestamp of first packet after RTP_IGNORE_FIRST_PACKETS_COUNT

Definition at line 422 of file res_rtp_asterisk.c.

Referenced by calc_rxstamp_and_jitter().

◆ resp

char resp

The current digit being processed

Definition at line 429 of file res_rtp_asterisk.c.

Referenced by ast_rtp_interpret(), create_dtmf_frame(), process_dtmf_cisco(), and process_dtmf_rfc2833().

◆ rtcp

struct ast_rtcp* rtcp

◆ rtp_source_learn

struct rtp_learning_info rtp_source_learn

Definition at line 472 of file res_rtp_asterisk.c.

Referenced by ast_rtp_read(), and rtp_learning_start().

◆ rxcore

struct timeval rxcore

Definition at line 444 of file res_rtp_asterisk.c.

Referenced by calc_rxstamp_and_jitter().

◆ rxcount

unsigned int rxcount

How many packets have we received?

Definition at line 408 of file res_rtp_asterisk.c.

Referenced by ast_rtp_get_stat(), ast_rtp_interpret(), and calc_rxstamp_and_jitter().

◆ rxjitter

double rxjitter

Last calculated Interarrival jitter in seconds.

Definition at line 424 of file res_rtp_asterisk.c.

Referenced by ast_rtp_get_stat(), calc_rxstamp_and_jitter(), and update_local_mes_stats().

◆ rxjitter_samples

double rxjitter_samples

Last calculated Interarrival jitter in samples.

Definition at line 425 of file res_rtp_asterisk.c.

Referenced by ast_rtcp_generate_report(), and calc_rxstamp_and_jitter().

◆ rxmes

double rxmes

Media Experince Score at the moment to be reported

Definition at line 426 of file res_rtp_asterisk.c.

Referenced by ast_rtcp_calculate_sr_rr_statistics(), ast_rtp_get_stat(), and update_local_mes_stats().

◆ rxoctetcount

unsigned int rxoctetcount

How many octets have we received? should be rxcount *160

Definition at line 409 of file res_rtp_asterisk.c.

Referenced by ast_rtp_get_stat(), and ast_rtp_interpret().

◆ rxstart

double rxstart

RX time of the first packet in the session in seconds since EPOCH.

Definition at line 419 of file res_rtp_asterisk.c.

Referenced by ast_rtp_new(), and calc_rxstamp_and_jitter().

◆ rxstart_stable

double rxstart_stable

RX time of the first packet after RTP_IGNORE_FIRST_PACKETS_COUNT

Definition at line 420 of file res_rtp_asterisk.c.

Referenced by calc_rxstamp_and_jitter().

◆ s

int s

◆ sched

◆ seedrxseqno

unsigned short seedrxseqno

What sequence number did they start with?

Definition at line 407 of file res_rtp_asterisk.c.

Referenced by ast_rtp_interpret().

◆ send_buffer

struct ast_data_buffer* send_buffer

Buffer for storing sent packets for retransmission

Definition at line 476 of file res_rtp_asterisk.c.

Referenced by ast_rtcp_interpret(), ast_rtp_destroy(), ast_rtp_prop_set(), ast_rtp_rtcp_handle_nack(), and rtp_raw_write().

◆ send_digit

char send_digit

digit we are sending

Definition at line 440 of file res_rtp_asterisk.c.

Referenced by ast_rtp_dtmf_begin(), ast_rtp_dtmf_continuation(), and ast_rtp_dtmf_end_with_duration().

◆ send_duration

int send_duration

◆ send_payload

int send_payload

◆ sending_digit

char sending_digit

boolean - are we sending digits

Definition at line 439 of file res_rtp_asterisk.c.

Referenced by ast_rtp_dtmf_begin(), ast_rtp_dtmf_end_with_duration(), ast_rtp_interpret(), bridge_p2p_rtp_write(), and rtp_raw_write().

◆ seqno

unsigned short seqno

◆ smoother

struct ast_smoother* smoother

◆ ssrc

unsigned int ssrc

◆ 

struct { ... } ssrc_mapping

◆ ssrc_orig

unsigned int ssrc_orig

SSRC used before native bridge activated

Definition at line 392 of file res_rtp_asterisk.c.

Referenced by ast_rtp_local_bridge().

◆ ssrc_saved

unsigned char ssrc_saved

indicates if ssrc_orig has a value

Definition at line 393 of file res_rtp_asterisk.c.

Referenced by ast_rtp_local_bridge().

◆ stream_num

int stream_num

Stream num for this RTP instance

Definition at line 461 of file res_rtp_asterisk.c.

Referenced by ast_rtcp_interpret(), ast_rtp_interpret(), ast_rtp_new(), and ast_rtp_set_stream_num().

◆ strict_rtp_address

struct ast_sockaddr strict_rtp_address

Remote address information for strict RTP purposes

Definition at line 466 of file res_rtp_asterisk.c.

Referenced by ast_rtp_read(), and ast_rtp_remote_address_set().

◆ strict_rtp_state

Current state that strict RTP protection is in

Definition at line 465 of file res_rtp_asterisk.c.

Referenced by ast_rtcp_interpret(), ast_rtp_read(), ast_rtp_remote_address_set(), rtp_allocate_transport(), and rtp_learning_start().

◆ themssrc

unsigned int themssrc

◆ themssrc_valid

unsigned int themssrc_valid

◆ transport_wide_cc

struct rtp_transport_wide_cc_statistics transport_wide_cc

◆ txcore

struct timeval txcore

Definition at line 445 of file res_rtp_asterisk.c.

Referenced by calc_txstamp().

◆ txcount

unsigned int txcount

How many packets have we sent?

Definition at line 410 of file res_rtp_asterisk.c.

Referenced by ast_rtcp_calculate_sr_rr_statistics(), ast_rtcp_generate_report(), ast_rtp_get_stat(), and rtp_sendto().

◆ txoctetcount

unsigned int txoctetcount

How many octets have we sent? (txcount*160)

Definition at line 411 of file res_rtp_asterisk.c.

Referenced by ast_rtcp_generate_report(), ast_rtp_get_stat(), and rtp_sendto().


The documentation for this struct was generated from the following file: