VLC 4.0.0-dev
No Matches

Stream output modules interface. More...

Include dependency graph for vlc_sout.h:

Go to the source code of this file.

Data Structures

struct  sout_access_out_t
 Stream output access_output. More...
struct  sout_mux_t
 Muxer structure. More...
struct  sout_input_t
struct  sout_stream_operations
struct  sout_stream_t


#define sout_AccessOutNew(obj, access, name)    sout_AccessOutNew( VLC_OBJECT(obj), access, name )
#define sout_EncoderCreate(o, s)   sout_EncoderCreate(VLC_OBJECT(o),s)
#define sout_AnnounceRegisterSDP(o, sdp, addr)    sout_AnnounceRegisterSDP(VLC_OBJECT (o), sdp, addr)
#define sout_AnnounceUnRegister(o, a)    sout_AnnounceUnRegister(VLC_OBJECT (o), a)


typedef struct vlc_frame_t vlc_frame_t


enum  access_out_query_e { ACCESS_OUT_CONTROLS_PACE , ACCESS_OUT_CAN_SEEK }
enum  sout_mux_query_e { MUX_CAN_ADD_STREAM_WHILE_MUXING , MUX_GET_MIME }
 Stream output control list. More...


sout_access_out_tsout_AccessOutNew (vlc_object_t *, const char *psz_access, const char *psz_name)
void sout_AccessOutDelete (sout_access_out_t *)
int sout_AccessOutSeek (sout_access_out_t *, uint64_t)
ssize_t sout_AccessOutRead (sout_access_out_t *, block_t *)
ssize_t sout_AccessOutWrite (sout_access_out_t *, block_t *)
int sout_AccessOutControl (sout_access_out_t *, int,...)
static bool sout_AccessOutCanControlPace (sout_access_out_t *p_ao)
sout_mux_tsout_MuxNew (sout_access_out_t *, const char *)
sout_input_tsout_MuxAddStream (sout_mux_t *, const es_format_t *)
void sout_MuxDeleteStream (sout_mux_t *, sout_input_t *)
void sout_MuxDelete (sout_mux_t *)
int sout_MuxSendBuffer (sout_mux_t *, sout_input_t *, block_t *)
int sout_MuxGetStream (sout_mux_t *, unsigned, vlc_tick_t *)
void sout_MuxFlush (sout_mux_t *, sout_input_t *)
static int sout_MuxControl (sout_mux_t *p_mux, int i_query,...)
sout_stream_tsout_StreamNew (vlc_object_t *parent, const char *config)
 Allocate an empty Stream Output object.
void sout_StreamChainDelete (sout_stream_t *first, sout_stream_t *end)
sout_stream_tsout_StreamChainNew (vlc_object_t *parent, const char *psz_chain, sout_stream_t *p_next)
 Creates a complete "stream_out" modules chain.
void * sout_StreamIdAdd (sout_stream_t *s, const es_format_t *fmt, const char *es_id)
 Add an ES to the stream output.
void sout_StreamIdDel (sout_stream_t *s, void *id)
 Delete an ES from the stream output.
int sout_StreamIdSend (sout_stream_t *s, void *id, vlc_frame_t *f)
 Pass a vlc_frame_t to the stream output.
void sout_StreamFlush (sout_stream_t *s, void *id)
 Signal a flush of an ES to the stream output.
void sout_StreamSetPCR (sout_stream_t *, vlc_tick_t pcr)
 Signal a PCR update to the stream output.
vlc_clock_main_tsout_ClockMainCreate (sout_stream_t *)
void sout_ClockMainDelete (vlc_clock_main_t *)
void sout_ClockMainSetFirstPcr (vlc_clock_main_t *, vlc_tick_t pcr)
vlc_clock_tsout_ClockCreate (vlc_clock_main_t *, const es_format_t *)
void sout_ClockDelete (vlc_clock_t *)
int sout_StreamControlVa (sout_stream_t *, int i_query, va_list args)
static int sout_StreamControl (sout_stream_t *s, int i_query,...)
 Various controls forwarded through the stream output chain.
static bool sout_StreamIsSynchronous (sout_stream_t *s)
encoder_tsout_EncoderCreate (vlc_object_t *, size_t)
session_descriptor_tsout_AnnounceRegisterSDP (vlc_object_t *, const char *, const char *)
 Registers a new session with the announce handler, using a pregenerated SDP.
void sout_AnnounceUnRegister (vlc_object_t *, session_descriptor_t *)
 Unregisters an existing session.

Detailed Description

Stream output modules interface.