34 #include <sys/types.h> 92 #define sout_AccessOutNew( obj, access, name ) \ 93 sout_AccessOutNew( VLC_OBJECT(obj), access, name ) 143 bool b_add_stream_any_time;
144 bool b_waiting_stream;
180 va_start( args, i_query );
181 i_result = p_mux->
pf_control( p_mux, i_query, args );
207 void (*pf_del)( sout_stream_t *,
void * );
209 int (*pf_send)( sout_stream_t *,
void *,
block_t* );
210 int (*pf_control)( sout_stream_t *, int, va_list );
211 void (*pf_flush)( sout_stream_t *,
void * );
224 return s->
pf_add( s, fmt );
256 va_start( args, i_query );
267 #define sout_EncoderCreate(o) sout_EncoderCreate(VLC_OBJECT(o)) 274 #define sout_AnnounceRegisterSDP(o, sdp, addr) \ 275 sout_AnnounceRegisterSDP(VLC_OBJECT (o), sdp, addr) 276 #define sout_AnnounceUnRegister(o, a) \ 277 sout_AnnounceUnRegister(VLC_OBJECT (o), a) 286 const struct sockaddr *src,
size_t slen,
287 const struct sockaddr *addr,
size_t alen)
VLC_USED;
289 const char *protocol,
int dport,
unsigned pt,
290 bool bw_indep,
unsigned bw,
const char *ptname,
291 unsigned clockrate,
unsigned channels,
void sout_MuxFlush(sout_mux_t *, sout_input_t *)
Definition: missing.c:166
Definition: vlc_sout.h:156
ssize_t sout_AccessOutRead(sout_access_out_t *, block_t *)
Definition: missing.c:84
static int sout_StreamControl(sout_stream_t *s, int i_query,...)
Definition: vlc_sout.h:252
sout_stream_t * p_stream
Definition: vlc_sout.h:59
static bool sout_AccessOutCanControlPace(sout_access_out_t *p_ao)
Definition: vlc_sout.h:101
sout_stream_t * sout_StreamChainNew(sout_instance_t *p_sout, const char *psz_chain, sout_stream_t *p_next, sout_stream_t **p_last)
Definition: missing.c:179
int sout_MuxGetStream(sout_mux_t *, unsigned, vlc_tick_t *)
Definition: missing.c:146
pthread_mutex_t vlc_mutex_t
Mutex.
Definition: vlc_threads.h:278
Internal state for block queues.
Definition: fifo.c:38
#define sout_AnnounceUnRegister(o, a)
Definition: vlc_sout.h:277
int(* pf_control)(sout_mux_t *, int, va_list)
Definition: vlc_sout.h:132
static int sout_StreamControlVa(sout_stream_t *s, int i_query, va_list args)
Definition: vlc_sout.h:247
Definition: vlc_sout.h:89
void sout_StreamChainDelete(sout_stream_t *p_first, sout_stream_t *p_last)
Definition: missing.c:172
int(* pf_send)(sout_stream_t *, void *, block_t *)
Definition: vlc_sout.h:210
Definition: vlc_sout.h:88
Internal module descriptor.
Definition: modules.h:75
sout_mux_query_e
Definition: vlc_sout.h:150
Definition: vlc_memstream.h:28
static int sout_MuxControl(sout_mux_t *p_mux, int i_query,...)
Definition: vlc_sout.h:176
sout_stream_query_e
Definition: vlc_sout.h:189
Definition: vlc_sout.h:190
Definition: vlc_sout.h:155
int sout_MuxSendBuffer(sout_mux_t *, sout_input_t *, block_t *)
Definition: missing.c:159
int64_t vlc_tick_t
High precision date or time interval.
Definition: vlc_tick.h:45
Definition: vlc_sout.h:191
Definition: vlc_configuration.h:331
char * psz_sout
Definition: vlc_sout.h:52
Definition: vlc_sout.h:153
Stream output access_output.
Definition: vlc_sout.h:69
struct sout_description_data_t sout_description_data_t
Description module.
int vlc_sdp_Start(struct vlc_memstream *, vlc_object_t *obj, const char *cfgpref, const struct sockaddr *src, size_t slen, const struct sockaddr *addr, size_t alen)
Definition: missing.c:188
void(* pf_flush)(sout_stream_t *, void *)
Definition: vlc_sout.h:212
void sout_MuxDeleteStream(sout_mux_t *, sout_input_t *)
Definition: missing.c:140
void sdp_AddAttribute(struct vlc_memstream *, const char *name, const char *fmt,...)
Definition: missing.c:57
Definition: vlc_sout.h:192
const char name[16]
Definition: httpd.c:1236
access_out_query_e
Definition: vlc_sout.h:86
void sdp_AddMedia(struct vlc_memstream *, const char *type, const char *protocol, int dport, unsigned pt, bool bw_indep, unsigned bw, const char *ptname, unsigned clockrate, unsigned channels, const char *fmtp)
Definition: missing.c:45
Definition: vlc_sout.h:195
static void sout_StreamIdDel(sout_stream_t *s, void *id)
Definition: vlc_sout.h:228
#define VLC_API
Definition: fourcc_gen.c:31
int sout_AccessOutControl(sout_access_out_t *, int,...)
sout_AccessOutControl
Definition: missing.c:63
Muxer structure.
Definition: vlc_sout.h:117
sem_t vlc_sem_t
Semaphore.
Definition: vlc_threads.h:308
static void * sout_StreamIdAdd(sout_stream_t *s, const es_format_t *fmt)
Definition: vlc_sout.h:222
const char * psz_name
Definition: vlc_codecs.h:313
#define VLC_EGENERIC
Unspecified error.
Definition: vlc_common.h:472
#define VLC_FORMAT(x, y)
String format function annotation.
Definition: vlc_common.h:141
int sout_AccessOutSeek(sout_access_out_t *, off_t)
Definition: missing.c:90
void sout_AccessOutDelete(sout_access_out_t *)
Definition: missing.c:69
int i_out_pace_nocontrol
count of output that can't control the space
Definition: vlc_sout.h:55
void *(* pf_add)(sout_stream_t *, const es_format_t *)
Definition: vlc_sout.h:207
Stream output instance (FIXME: should be private to src/ to avoid invalid unsynchronized access) ...
Definition: vlc_sout.h:48
Definition: vlc_block.h:117
bool b_wants_substreams
Definition: vlc_sout.h:56
Description module.
Definition: vlc_sout.h:298
vlc_mutex_t lock
Definition: vlc_sout.h:58
void(* pf_del)(sout_stream_t *, void *)
Definition: vlc_sout.h:208
sout_mux_t * sout_MuxNew(sout_instance_t *, const char *, sout_access_out_t *)
Definition: missing.c:152
This file defines the elementary streams format types.
#define sout_EncoderCreate(o)
Definition: vlc_sout.h:268
VLC object common members.
Definition: vlc_objects.h:43
void sout_MuxDelete(sout_mux_t *)
Definition: missing.c:134
int(* pf_control)(sout_stream_t *, int, va_list)
Definition: vlc_sout.h:211
struct vlc_object_t obj
Definition: vlc_sout.h:50
#define sout_AccessOutNew(obj, access, name)
Definition: vlc_sout.h:93
static void sout_StreamFlush(sout_stream_t *s, void *id)
Definition: vlc_sout.h:240
#define VLC_USED
Definition: fourcc_gen.c:32
sout_input_t * sout_MuxAddStream(sout_mux_t *, const es_format_t *)
Definition: missing.c:127
Definition: vlc_codec.h:225
#define sout_AnnounceRegisterSDP(o, sdp, addr)
Definition: vlc_sout.h:275
static int sout_StreamIdSend(sout_stream_t *s, void *id, block_t *b)
Definition: vlc_sout.h:234
ssize_t sout_AccessOutWrite(sout_access_out_t *, block_t *)
Definition: missing.c:96