VLC 4.0.0-dev

RTP demux module shared declarations. More...

Go to the source code of this file.

Data Structures

struct  vlc_sdp_pt
 Payload type mapping. More...
 
struct  vlc_rtp_pktinfo
 RTP packet infos. More...
 
struct  vlc_rtp_pt_operations
 RTP payload type operations. More...
 
struct  vlc_rtp_pt_owner_operations
 RTP payload type owner operations. More...
 
struct  vlc_rtp_pt_owner
 RTP payload type owner. More...
 
struct  vlc_rtp_pt
 RTP payload type. More...
 
struct  vlc_rtp_es_operations
 RTP abstract output stream operations. More...
 
struct  vlc_rtp_es
 RTP abstract output stream. More...
 
struct  rtp_sys_t
 

Macros

#define set_rtp_parser_callback(cb)
 Helper to set the RTP payload format parser module capability and callback. More...
 

Typedefs

typedef struct vlc_rtp_pt rtp_pt_t
 
typedef struct rtp_session_t rtp_session_t
 
typedef int(* vlc_rtp_parser_cb) (vlc_object_t *obj, struct vlc_rtp_pt *pt, const struct vlc_sdp_pt *desc)
 Callback prototype for RTP parser module. More...
 

Functions

void vlc_rtp_pt_release (struct vlc_rtp_pt *pt)
 Destroys a payload type parameter set. More...
 
static void * vlc_rtp_pt_begin (struct vlc_rtp_pt *pt)
 Binds a payload type to a source. More...
 
static void vlc_rtp_pt_end (struct vlc_rtp_pt *pt, void *data)
 Unbinds a payload type from a source. More...
 
static void vlc_rtp_pt_decode (struct vlc_rtp_pt *pt, void *data, block_t *pkt, const struct vlc_rtp_pktinfo *restrict info)
 Processes a payload packet. More...
 
static struct vlc_rtp_esvlc_rtp_pt_request_es (struct vlc_rtp_pt *pt, const es_format_t *restrict fmt)
 Starts an elementary stream (ES). More...
 
static struct vlc_rtp_esvlc_rtp_pt_request_mux (struct vlc_rtp_pt *pt, const char *name)
 Starts a complete multiplex. More...
 
static void vlc_rtp_es_destroy (struct vlc_rtp_es *es)
 Destroys an vlc_rtp_es. More...
 
static void vlc_rtp_es_send (struct vlc_rtp_es *es, block_t *block)
 Sends coded data for output. More...
 
int vlc_rtp_pt_instantiate (vlc_object_t *obj, struct vlc_rtp_pt *restrict pt, const struct vlc_sdp_pt *restrict desc)
 
void rtp_autodetect (vlc_object_t *, rtp_session_t *, const struct vlc_rtp_pt_owner *restrict)
 
static uint8_t rtp_ptype (const block_t *block)
 
rtp_session_trtp_session_create (void)
 Creates a new RTP session. More...
 
void rtp_session_destroy (struct vlc_logger *, rtp_session_t *)
 Destroys an RTP session. More...
 
void rtp_queue (rtp_sys_t *, rtp_session_t *, block_t *)
 Receives an RTP packet and queues it. More...
 
bool rtp_dequeue (rtp_sys_t *, const rtp_session_t *, vlc_tick_t *)
 
int rtp_add_type (rtp_session_t *ses, rtp_pt_t *pt)
 Adds a payload type to an RTP session. More...
 
int vlc_rtp_add_media_types (vlc_object_t *obj, rtp_session_t *ses, const struct vlc_sdp_media *media, const struct vlc_rtp_pt_owner *restrict owner)
 Registers all payload types declared in an SDP media. More...
 
void * rtp_dgram_thread (void *data)
 RTP/RTCP session thread for datagram sockets. More...
 

Variables

struct vlc_rtp_es *const vlc_rtp_es_dummy
 A (pointer to a) dummy output that discards data. More...
 

Detailed Description

RTP demux module shared declarations.