VLC 4.0.0-dev
vlc_stream.h File Reference

Byte streams and byte stream filter modules interface. More...

Include dependency graph for vlc_stream.h:

Go to the source code of this file.

Data Structures

struct  vlc_stream_operations
 
struct  stream_t
 stream_t definition More...
 

Macros

#define vlc_stream_MemoryNew(a, b, c, d)    vlc_stream_MemoryNew(VLC_OBJECT(a), b, c, d)
 
#define vlc_stream_NewURL(a, b)   vlc_stream_NewURL(VLC_OBJECT(a), b)
 

Typedefs

typedef struct vlc_stream_fifo vlc_stream_fifo_t
 

Enumerations

enum  stream_query_e {
  STREAM_CAN_SEEK , STREAM_CAN_FASTSEEK , STREAM_CAN_PAUSE , STREAM_CAN_CONTROL_PACE ,
  STREAM_GET_SIZE =6 , STREAM_GET_PTS_DELAY = 0x101 , STREAM_GET_TITLE_INFO , STREAM_GET_TITLE ,
  STREAM_GET_SEEKPOINT , STREAM_GET_META , STREAM_GET_CONTENT_TYPE , STREAM_GET_SIGNAL ,
  STREAM_GET_TAGS , STREAM_GET_TYPE , STREAM_SET_PAUSE_STATE = 0x200 , STREAM_SET_TITLE ,
  STREAM_SET_SEEKPOINT , STREAM_SET_RECORD_STATE , STREAM_SET_PRIVATE_ID_STATE = 0x1000 , STREAM_SET_PRIVATE_ID_CA ,
  STREAM_GET_PRIVATE_ID_STATE
}
 Possible commands to send to vlc_stream_Control() and vlc_stream_vaControl() More...
 

Functions

ssize_t vlc_stream_Read (stream_t *, void *buf, size_t len)
 Reads data from a byte stream. More...
 
ssize_t vlc_stream_ReadPartial (stream_t *, void *buf, size_t len)
 Reads partial data from a byte stream. More...
 
ssize_t vlc_stream_Peek (stream_t *, const uint8_t **, size_t)
 Peeks at data from a byte stream. More...
 
block_tvlc_stream_ReadBlock (stream_t *)
 Reads a data block from a byte stream. More...
 
uint64_t vlc_stream_Tell (const stream_t *)
 Tells the current stream position. More...
 
bool vlc_stream_Eof (const stream_t *)
 Checks for end of stream. More...
 
int vlc_stream_Seek (stream_t *, uint64_t offset)
 Sets the current stream position. More...
 
int vlc_stream_vaControl (stream_t *s, int query, va_list args)
 Use to control the "stream_t *". More...
 
static int vlc_stream_Control (stream_t *s, int query,...)
 
block_tvlc_stream_Block (stream_t *s, size_t)
 Read data into a block. More...
 
char * vlc_stream_ReadLine (stream_t *)
 
int vlc_stream_ReadDir (stream_t *s, input_item_node_t *node)
 Reads a directory. More...
 
void vlc_stream_Delete (stream_t *s)
 Closes a byte stream. More...
 
stream_tvlc_stream_CommonNew (vlc_object_t *, void(*)(stream_t *))
 
static bool vlc_stream_CanSeek (stream_t *s)
 
static bool vlc_stream_CanFastSeek (stream_t *s)
 
static bool vlc_stream_CanPause (stream_t *s)
 
static bool vlc_stream_CanPace (stream_t *s)
 
static int vlc_stream_GetPtsDelay (stream_t *s, vlc_tick_t *pts_delay)
 
static int vlc_stream_GetSeekpoint (stream_t *s, unsigned *seekpoint)
 
static int vlc_stream_GetSignal (stream_t *s, double *quality, double *strength)
 
static int vlc_stream_GetTitle (stream_t *s, unsigned *title)
 
static int vlc_stream_GetMeta (stream_t *s, vlc_meta_t *meta)
 
static int vlc_stream_GetType (stream_t *s, int *type)
 
static int vlc_stream_GetSize (stream_t *s, uint64_t *size)
 Get the size of the stream. More...
 
static int vlc_stream_GetTitleInfo (stream_t *s, input_title_t ***title_info, int *size)
 
static int vlc_stream_GetContentType (stream_t *s, char **content_type)
 
static int vlc_stream_GetTags (stream_t *s, const block_t **tags)
 
static int vlc_stream_GetPrivateIdState (stream_t *s, int priv_id, bool *state)
 
static int vlc_stream_SetPauseState (stream_t *s, bool pause_state)
 
static int vlc_stream_SetSeekPoint (stream_t *s, int seekpoint)
 
static int vlc_stream_SetTitle (stream_t *s, int title)
 
static int vlc_stream_SetRecordState (stream_t *s, bool record_state, const char *dir_path, const char *ext)
 
static int vlc_stream_SetPrivateIdState (stream_t *s, int priv_id, bool state)
 
static int vlc_stream_SetPrivateIdCa (stream_t *s, void *ca)
 Set the private ID ca. More...
 
static int64_t stream_Size (stream_t *s)
 
static bool stream_HasExtension (stream_t *s, const char *extension)
 
static char * stream_ContentType (stream_t *s)
 Get the Content-Type of a stream, or NULL if unknown. More...
 
static char * stream_MimeType (stream_t *s)
 Get the mime-type of a stream. More...
 
static bool stream_IsMimeType (stream_t *s, const char *type)
 Checks for a MIME type. More...
 
stream_tvlc_stream_MemoryNew (vlc_object_t *obj, uint8_t *base, size_t size, bool preserve)
 Create a stream from a memory buffer. More...
 
stream_tvlc_stream_NewURL (vlc_object_t *obj, const char *url)
 Create a stream_t reading from a URL. More...
 
vlc_stream_fifo_tvlc_stream_fifo_New (vlc_object_t *parent, stream_t **reader)
 Creates a FIFO stream. More...
 
int vlc_stream_fifo_Queue (vlc_stream_fifo_t *s, block_t *block)
 Writes a block to a FIFO stream. More...
 
ssize_t vlc_stream_fifo_Write (vlc_stream_fifo_t *s, const void *buf, size_t len)
 Writes data to a FIFO stream. More...
 
void vlc_stream_fifo_Close (vlc_stream_fifo_t *s)
 Terminates a FIFO stream. More...
 
stream_tvlc_stream_FilterNew (stream_t *p_source, const char *psz_stream_filter)
 Try to add a stream filter to an open stream. More...
 

Detailed Description

Byte streams and byte stream filter modules interface.