#include <rtp_engine.h>
Public Member Functions | |
AST_LIST_ENTRY (ast_rtp_engine) entry | |
Data Fields | |
int(* | activate )(struct ast_rtp_instance *instance) |
void(* | alt_remote_address_set )(struct ast_rtp_instance *instance, struct ast_sockaddr *sa) |
format_t(* | available_formats )(struct ast_rtp_instance *instance, format_t to_endpoint, format_t to_asterisk) |
void(* | change_source )(struct ast_rtp_instance *instance) |
int(* | destroy )(struct ast_rtp_instance *instance) |
int(* | dtmf_begin )(struct ast_rtp_instance *instance, char digit) |
int(* | dtmf_compatible )(struct ast_channel *chan0, struct ast_rtp_instance *instance0, struct ast_channel *chan1, struct ast_rtp_instance *instance1) |
int(* | dtmf_end )(struct ast_rtp_instance *instance, char digit) |
int(* | dtmf_end_with_duration )(struct ast_rtp_instance *instance, char digit, unsigned int duration) |
enum ast_rtp_dtmf_mode(* | dtmf_mode_get )(struct ast_rtp_instance *instance) |
int(* | dtmf_mode_set )(struct ast_rtp_instance *instance, enum ast_rtp_dtmf_mode dtmf_mode) |
void *(* | extended_prop_get )(struct ast_rtp_instance *instance, int property) |
int(* | extended_prop_set )(struct ast_rtp_instance *instance, int property, void *value) |
int(* | fd )(struct ast_rtp_instance *instance, int rtcp) |
int(* | get_stat )(struct ast_rtp_instance *instance, struct ast_rtp_instance_stats *stats, enum ast_rtp_instance_stat stat) |
int(* | local_bridge )(struct ast_rtp_instance *instance0, struct ast_rtp_instance *instance1) |
int(* | make_compatible )(struct ast_channel *chan0, struct ast_rtp_instance *instance0, struct ast_channel *chan1, struct ast_rtp_instance *instance1) |
struct ast_module * | mod |
const char * | name |
int(* | new )(struct ast_rtp_instance *instance, struct sched_context *sched, struct ast_sockaddr *sa, void *data) |
void(* | packetization_set )(struct ast_rtp_instance *instance, struct ast_codec_pref *pref) |
void(* | payload_set )(struct ast_rtp_instance *instance, int payload, int astformat, format_t format) |
void(* | prop_set )(struct ast_rtp_instance *instance, enum ast_rtp_property property, int value) |
int(* | qos )(struct ast_rtp_instance *instance, int tos, int cos, const char *desc) |
struct ast_frame *(* | read )(struct ast_rtp_instance *instance, int rtcp) |
int(* | red_buffer )(struct ast_rtp_instance *instance, struct ast_frame *frame) |
int(* | red_init )(struct ast_rtp_instance *instance, int buffer_time, int *payloads, int generations) |
void(* | remote_address_set )(struct ast_rtp_instance *instance, struct ast_sockaddr *sa) |
int(* | sendcng )(struct ast_rtp_instance *instance, int level) |
int(* | set_read_format )(struct ast_rtp_instance *instance, format_t format) |
int(* | set_write_format )(struct ast_rtp_instance *instance, format_t format) |
void(* | stop )(struct ast_rtp_instance *instance) |
void(* | stun_request )(struct ast_rtp_instance *instance, struct ast_sockaddr *suggestion, const char *username) |
void(* | update_source )(struct ast_rtp_instance *instance) |
int(* | write )(struct ast_rtp_instance *instance, struct ast_frame *frame) |
Structure that represents an RTP stack (engine)
Definition at line 310 of file rtp_engine.h.
AST_LIST_ENTRY | ( | ast_rtp_engine | ) |
Linked list information
int(* activate)(struct ast_rtp_instance *instance) |
Callback to indicate that packets will now flow
Definition at line 373 of file rtp_engine.h.
Referenced by ast_rtp_instance_activate().
void(* alt_remote_address_set)(struct ast_rtp_instance *instance, struct ast_sockaddr *sa) |
Callback for setting an alternate remote address
Definition at line 345 of file rtp_engine.h.
Referenced by ast_rtp_instance_set_alt_remote_address().
format_t(* available_formats)(struct ast_rtp_instance *instance, format_t to_endpoint, format_t to_asterisk) |
Callback to get the transcodeable formats supported
Definition at line 377 of file rtp_engine.h.
Referenced by ast_rtp_instance_available_formats().
void(* change_source)(struct ast_rtp_instance *instance) |
Callback to indicate that we should update the marker bit and ssrc
Definition at line 331 of file rtp_engine.h.
Referenced by ast_rtp_instance_change_source().
int(* destroy)(struct ast_rtp_instance *instance) |
Callback for destroying an RTP instance
Definition at line 318 of file rtp_engine.h.
Referenced by ast_rtp_engine_register2(), and instance_destructor().
int(* dtmf_begin)(struct ast_rtp_instance *instance, char digit) |
Callback for starting RFC2833 DTMF transmission
Definition at line 324 of file rtp_engine.h.
Referenced by ast_rtp_instance_dtmf_begin().
int(* dtmf_compatible)(struct ast_channel *chan0, struct ast_rtp_instance *instance0, struct ast_channel *chan1, struct ast_rtp_instance *instance1) |
Callback to see if two instances are compatible with DTMF
Definition at line 371 of file rtp_engine.h.
Referenced by ast_rtp_instance_bridge().
int(* dtmf_end)(struct ast_rtp_instance *instance, char digit) |
Callback for stopping RFC2833 DTMF transmission
Definition at line 326 of file rtp_engine.h.
Referenced by ast_rtp_instance_dtmf_end().
int(* dtmf_end_with_duration)(struct ast_rtp_instance *instance, char digit, unsigned int duration) |
Definition at line 327 of file rtp_engine.h.
Referenced by ast_rtp_instance_dtmf_end_with_duration().
enum ast_rtp_dtmf_mode(* dtmf_mode_get)(struct ast_rtp_instance *instance) |
Callback for getting DTMF mode
Definition at line 349 of file rtp_engine.h.
Referenced by ast_rtp_instance_dtmf_mode_get().
int(* dtmf_mode_set)(struct ast_rtp_instance *instance, enum ast_rtp_dtmf_mode dtmf_mode) |
Callback for changing DTMF mode
Definition at line 347 of file rtp_engine.h.
Referenced by ast_rtp_instance_dtmf_mode_set().
void*(* extended_prop_get)(struct ast_rtp_instance *instance, int property) |
Callback for getting an extended RTP property
Definition at line 335 of file rtp_engine.h.
Referenced by ast_rtp_instance_get_extended_prop().
int(* extended_prop_set)(struct ast_rtp_instance *instance, int property, void *value) |
Callback for setting an extended RTP property
Definition at line 333 of file rtp_engine.h.
Referenced by ast_rtp_instance_set_extended_prop().
int(* fd)(struct ast_rtp_instance *instance, int rtcp) |
Callback for retrieving a file descriptor to poll on, not always required
Definition at line 355 of file rtp_engine.h.
Referenced by ast_rtp_instance_fd().
int(* get_stat)(struct ast_rtp_instance *instance, struct ast_rtp_instance_stats *stats, enum ast_rtp_instance_stat stat) |
Callback for retrieving statistics
Definition at line 351 of file rtp_engine.h.
Referenced by ast_rtp_instance_get_stats().
int(* local_bridge)(struct ast_rtp_instance *instance0, struct ast_rtp_instance *instance1) |
Callback to locally bridge two RTP instances
Definition at line 363 of file rtp_engine.h.
Referenced by ast_rtp_instance_bridge(), and local_bridge_loop().
int(* make_compatible)(struct ast_channel *chan0, struct ast_rtp_instance *instance0, struct ast_channel *chan1, struct ast_rtp_instance *instance1) |
Callback to make two instances compatible
Definition at line 369 of file rtp_engine.h.
Referenced by ast_rtp_instance_make_compatible().
struct ast_module* mod |
Module this RTP engine came from, used for reference counting
Definition at line 314 of file rtp_engine.h.
Referenced by ast_rtp_engine_register2(), ast_rtp_instance_new(), and instance_destructor().
const char* name |
Name of the RTP engine, used when explicitly requested
Definition at line 312 of file rtp_engine.h.
Referenced by ast_rtp_engine_register2(), ast_rtp_engine_unregister(), ast_rtp_instance_new(), and instance_destructor().
int(* new)(struct ast_rtp_instance *instance, struct sched_context *sched, struct ast_sockaddr *sa, void *data) |
Callback for setting up a new RTP instance
Definition at line 316 of file rtp_engine.h.
Referenced by ast_rtp_engine_register2(), and ast_rtp_instance_new().
void(* packetization_set)(struct ast_rtp_instance *instance, struct ast_codec_pref *pref) |
Callback for setting packetization preferences
Definition at line 341 of file rtp_engine.h.
Referenced by ast_rtp_codecs_packetization_set().
void(* payload_set)(struct ast_rtp_instance *instance, int payload, int astformat, format_t format) |
Callback for setting a payload
Definition at line 339 of file rtp_engine.h.
Referenced by ast_rtp_codecs_payloads_clear(), ast_rtp_codecs_payloads_copy(), ast_rtp_codecs_payloads_default(), ast_rtp_codecs_payloads_set_m_type(), ast_rtp_codecs_payloads_set_rtpmap_type_rate(), and ast_rtp_codecs_payloads_unset().
void(* prop_set)(struct ast_rtp_instance *instance, enum ast_rtp_property property, int value) |
Callback for setting an RTP property
Definition at line 337 of file rtp_engine.h.
Referenced by ast_rtp_instance_set_prop().
int(* qos)(struct ast_rtp_instance *instance, int tos, int cos, const char *desc) |
Callback for setting QoS values
Definition at line 353 of file rtp_engine.h.
Referenced by ast_rtp_instance_set_qos().
struct ast_frame*(* read)(struct ast_rtp_instance *instance, int rtcp) |
Callback for reading a frame from the RTP engine
Definition at line 361 of file rtp_engine.h.
Referenced by ast_rtp_engine_register2(), and ast_rtp_instance_read().
int(* red_buffer)(struct ast_rtp_instance *instance, struct ast_frame *frame) |
Callback for buffering a frame using RED
Definition at line 359 of file rtp_engine.h.
Referenced by ast_rtp_red_buffer().
int(* red_init)(struct ast_rtp_instance *instance, int buffer_time, int *payloads, int generations) |
Callback for initializing RED support
Definition at line 357 of file rtp_engine.h.
Referenced by ast_rtp_red_init().
void(* remote_address_set)(struct ast_rtp_instance *instance, struct ast_sockaddr *sa) |
Callback for setting the remote address that RTP is to be sent to
Definition at line 343 of file rtp_engine.h.
Referenced by ast_rtp_instance_set_remote_address().
int(* sendcng)(struct ast_rtp_instance *instance, int level) |
Callback to send CNG
Definition at line 379 of file rtp_engine.h.
Referenced by ast_rtp_instance_sendcng().
int(* set_read_format)(struct ast_rtp_instance *instance, format_t format) |
Callback to set the read format
Definition at line 365 of file rtp_engine.h.
Referenced by ast_rtp_instance_set_read_format().
int(* set_write_format)(struct ast_rtp_instance *instance, format_t format) |
Callback to set the write format
Definition at line 367 of file rtp_engine.h.
Referenced by ast_rtp_instance_set_write_format().
void(* stop)(struct ast_rtp_instance *instance) |
Callback for stopping the RTP instance
Definition at line 322 of file rtp_engine.h.
Referenced by ast_rtp_instance_stop().
void(* stun_request)(struct ast_rtp_instance *instance, struct ast_sockaddr *suggestion, const char *username) |
Callback to request that the RTP engine send a STUN BIND request
Definition at line 375 of file rtp_engine.h.
Referenced by ast_rtp_instance_stun_request().
void(* update_source)(struct ast_rtp_instance *instance) |
Callback to indicate that we should update the marker bit
Definition at line 329 of file rtp_engine.h.
Referenced by ast_rtp_instance_update_source().
int(* write)(struct ast_rtp_instance *instance, struct ast_frame *frame) |
Callback for writing out a frame
Definition at line 320 of file rtp_engine.h.
Referenced by ast_rtp_engine_register2(), and ast_rtp_instance_write().