VLC  4.0.0-dev
stream.h File Reference
Include dependency graph for stream.h:

Go to the source code of this file.


stream_tvlc_stream_CustomNew (vlc_object_t *parent, void(*destroy)(stream_t *), size_t extra_size, const char *type_name)
 Allocates a VLC stream object. More...
void * vlc_stream_Private (stream_t *stream)
void stream_CommonDelete (stream_t *s)
stream_tvlc_stream_AttachmentNew (vlc_object_t *p_this, input_attachment_t *attachement)
stream_tstream_AccessNew (vlc_object_t *, input_thread_t *, es_out_t *, bool, const char *)
 This function creates a raw stream_t from an URL. More...
stream_tstream_FilterAutoNew (stream_t *source)
 Probes stream filters automatically. More...
stream_tstream_FilterChainNew (stream_t *source, const char *list)
 Builds an explicit chain of stream filters. More...
int stream_extractor_AttachParsed (stream_t **stream, const char *psz_data, char const **out_extra)
 Attach Stream Extractors according to specified data. More...
char * get_path (const char *location)

Function Documentation

◆ get_path()

char* get_path ( const char *  location)

◆ stream_AccessNew()

stream_t* stream_AccessNew ( vlc_object_t ,
input_thread_t ,
es_out_t ,
bool  ,
const char *   

◆ stream_CommonDelete()

void stream_CommonDelete ( stream_t s)

◆ stream_FilterAutoNew()

stream_t* stream_FilterAutoNew ( stream_t source)

Probes stream filters automatically.

This function automatically and repeatedly probes for applicable stream filters to append downstream of an existing stream. Any such filter will convert the stream into another stream, e.g. decompressing it or extracting the list of contained files (playlist).

This function transfers ownership of the supplied stream to the following stream filter, of the first stream filter to the second stream filter, and so on. Any attempt to access the original stream filter directly is explicitly undefined.

If, and only if, no filters were probed succesfully, a pointer to the unchanged source stream will be returned. Otherwise, this returns a stream filter. The return value is thus guaranteed to be non-NULL.

sourceinput stream around which to build a filter chain
the last, most downstream stream object.
The return value must be freed with vlc_stream_Delete() after use. This will automatically free the whole chain and the underlying stream.

References msg_Dbg, and vlc_stream_FilterNew().

Referenced by InputDemuxNew(), and vlc_stream_NewURL().

◆ stream_FilterChainNew()

stream_t* stream_FilterChainNew ( stream_t source,
const char *  list 

Builds an explicit chain of stream filters.

This function creates a chain of filters according to a supplied list.

See also stream_FilterAutoNew(). Those two functions have identical semantics; the only difference lies in how the list of probed filters is determined (manually versus automatically).

If the list is empty, or if probing each of the requested filters failed, this function will return a pointer to the supplied source stream.

sourceinput stream around which to build a filter chain
listcolon-separated list of stream filters (upstream first)
The last stream (filter) in the chain. The return value is always a valid (non-NULL) stream pointer.

References msg_Warn, name, strdup(), strtok_r(), unlikely, and vlc_stream_FilterNew().

Referenced by InputDemuxNew(), se_AttachWrapper(), and stream_AccessNew().

◆ vlc_stream_AttachmentNew()

stream_t* vlc_stream_AttachmentNew ( vlc_object_t p_this,
input_attachment_t attachement 

◆ vlc_stream_CustomNew()

stream_t* vlc_stream_CustomNew ( vlc_object_t parent,
void(*)(stream_t *)  destroy,
size_t  extra_size,
const char *  type_name 

◆ vlc_stream_Private()

void* vlc_stream_Private ( stream_t stream)