|
VLC
2.1.0-git
|

Data Structures | |
| struct | stream_track_t |
| struct | access_entry_t |
| struct | stream_sys_t |
Macros | |
| #define | STREAM_CACHE_TRACK 3 |
| #define | STREAM_CACHE_SIZE (4*STREAM_CACHE_TRACK*1024*1024) |
| #define | STREAM_CACHE_PREBUFFER_SIZE (128) |
| #define | STREAM_READ_ATONCE 1024 |
| #define | STREAM_CACHE_TRACK_SIZE (STREAM_CACHE_SIZE/STREAM_CACHE_TRACK) |
| #define | STREAM_PROBE_LINE 2048 |
| Read from the stream untill first newline. | |
| #define | STREAM_LINE_MAX (2048*100) |
Enumerations | |
| enum | stream_read_method_t { STREAM_METHOD_BLOCK, STREAM_METHOD_STREAM } |
Functions | |
| static int | AStreamReadBlock (stream_t *s, void *p_read, unsigned int i_read) |
| static int | AStreamPeekBlock (stream_t *s, const uint8_t **p_peek, unsigned int i_read) |
| static int | AStreamSeekBlock (stream_t *s, uint64_t i_pos) |
| static void | AStreamPrebufferBlock (stream_t *s) |
| static block_t * | AReadBlock (stream_t *s, bool *pb_eof) |
| static int | AStreamReadStream (stream_t *s, void *p_read, unsigned int i_read) |
| static int | AStreamPeekStream (stream_t *s, const uint8_t **pp_peek, unsigned int i_read) |
| static int | AStreamSeekStream (stream_t *s, uint64_t i_pos) |
| static void | AStreamPrebufferStream (stream_t *s) |
| static int | AReadStream (stream_t *s, void *p_read, unsigned int i_read) |
| static int | AStreamControl (stream_t *s, int i_query, va_list) |
| static void | AStreamDestroy (stream_t *s) |
| static void | UStreamDestroy (stream_t *s) |
| static int | ASeek (stream_t *s, uint64_t i_pos) |
| stream_t * | stream_CommonNew (vlc_object_t *p_obj) |
| void | stream_CommonDelete (stream_t *s) |
| stream_t * | stream_UrlNew (((vlc_object_t *)(vlc_object_t *p_parent)), const char *psz_url) |
| stream_t * | stream_AccessNew (access_t *p_access, char **ppsz_list) |
| This function creates a stream_t from a provided access_t. | |
| static void | AStreamControlReset (stream_t *s) |
| static void | AStreamControlUpdate (stream_t *s) |
| static int | AStreamRefillBlock (stream_t *s) |
| static int | AStreamRefillStream (stream_t *s) |
| static int | AStreamReadNoSeekStream (stream_t *s, void *p_read, unsigned int i_read) |
| char * | stream_ReadLine (stream_t *s) |
| int | stream_Read (stream_t *s, void *p_read, int i_read) |
| Try to read "i_read" bytes into a buffer pointed by "p_read". | |
| int | stream_Peek (stream_t *s, const uint8_t **pp_peek, int i_peek) |
| Store in pp_peek a pointer to the next "i_peek" bytes in the stream. | |
| int | stream_vaControl (stream_t *s, int i_query, va_list args) |
| Use to control the "stream_t *". | |
| void | stream_Delete (stream_t *s) |
| Destroy a stream. | |
| int | stream_Control (stream_t *s, int i_query,...) |
| block_t * | stream_Block (stream_t *s, int i_size) |
| Read "i_size" bytes and store them in a block_t. | |
| block_t * | stream_BlockRemaining (stream_t *s, int i_max_size) |
| Read the remaining of the data if there is less than i_max_size bytes, otherwise return NULL. | |
| #define STREAM_CACHE_PREBUFFER_SIZE (128) |
Referenced by AStreamPrebufferBlock(), and AStreamPrebufferStream().
| #define STREAM_CACHE_SIZE (4*STREAM_CACHE_TRACK*1024*1024) |
Referenced by AStreamRefillBlock(), AStreamSeekBlock(), and stream_AccessNew().
| #define STREAM_CACHE_TRACK 3 |
Referenced by AStreamControlReset(), AStreamSeekStream(), and stream_AccessNew().
| #define STREAM_CACHE_TRACK_SIZE (STREAM_CACHE_SIZE/STREAM_CACHE_TRACK) |
Referenced by AStreamPeekStream(), AStreamPrebufferStream(), AStreamReadNoSeekStream(), AStreamRefillStream(), and stream_AccessNew().
| #define STREAM_LINE_MAX (2048*100) |
Referenced by stream_ReadLine().
| #define STREAM_PROBE_LINE 2048 |
Read from the stream untill first newline.
| s | Stream handle to read from |
Referenced by stream_ReadLine().
| #define STREAM_READ_ATONCE 1024 |
Referenced by AStreamReadNoSeekStream(), AStreamSeekStream(), and stream_AccessNew().
| enum stream_read_method_t |
References access_Delete(), access_New, access_t::b_eof, input_thread_private_t::counters, input_thread_private_t::counters_lock, block_t::i_buffer, stream_sys_t::i_list, stream_sys_t::i_list_index, access_t::info, libvlc_stats, stream_sys_t::list, msg_Dbg, input_thread_t::p, stream_sys_t::p_access, stream_t::p_input, input_thread_private_t::p_input_bitrate, stream_sys_t::p_list_access, input_thread_private_t::p_read_bytes, input_thread_private_t::p_read_packets, stream_t::p_sys, access_t::pf_block, access_t::psz_access, psz_name, access_entry_t::psz_path, stats_Update(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by AStreamPrebufferBlock(), and AStreamRefillBlock().
|
static |
References access_Delete(), access_New, input_thread_private_t::counters, input_thread_private_t::counters_lock, stream_sys_t::i_list, stream_sys_t::i_list_index, stream_sys_t::list, msg_Dbg, input_thread_t::p, stream_sys_t::p_access, stream_t::p_input, input_thread_private_t::p_input_bitrate, stream_sys_t::p_list_access, input_thread_private_t::p_read_bytes, input_thread_private_t::p_read_packets, stream_t::p_sys, access_t::pf_read, access_t::psz_access, psz_name, access_entry_t::psz_path, stats_Update(), vlc_mutex_lock(), and vlc_mutex_unlock().
Referenced by AStreamPrebufferStream(), and AStreamRefillStream().
|
static |
References access_Delete(), access_New, stream_sys_t::i_list, stream_sys_t::i_list_index, access_entry_t::i_size, stream_sys_t::list, list, msg_Dbg, stream_sys_t::p_access, stream_t::p_input, stream_sys_t::p_list_access, stream_t::p_sys, access_t::pf_seek, access_t::psz_access, psz_name, and access_entry_t::psz_path.
Referenced by AStreamSeekBlock(), and AStreamSeekStream().
|
static |
< Unspecified error
< Unspecified error
< No error
< Unspecified error
< No error
References ACCESS_CAN_FASTSEEK, ACCESS_CAN_SEEK, access_Control(), ACCESS_GET_CONTENT_TYPE, ACCESS_GET_PRIVATE_ID_STATE, ACCESS_SET_PRIVATE_ID_CA, ACCESS_SET_PRIVATE_ID_STATE, ACCESS_SET_SEEKPOINT, ACCESS_SET_TITLE, access_vaControl(), AStreamControlReset(), AStreamControlUpdate(), AStreamSeekBlock(), AStreamSeekStream(), stream_sys_t::i_list, stream_sys_t::i_pos, access_t::i_size, access_entry_t::i_size, access_t::info, stream_sys_t::list, stream_sys_t::method, msg_Err, stream_sys_t::p_access, stream_t::p_sys, STREAM_CAN_FASTSEEK, STREAM_CAN_SEEK, STREAM_CONTROL_ACCESS, STREAM_GET_CONTENT_TYPE, STREAM_GET_POSITION, STREAM_GET_SIZE, STREAM_METHOD_BLOCK, STREAM_METHOD_STREAM, STREAM_SET_POSITION, STREAM_SET_RECORD_STATE, STREAM_UPDATE_SIZE, VLC_EGENERIC, and VLC_SUCCESS.
Referenced by stream_AccessNew().
|
static |
References AStreamPrebufferBlock(), AStreamPrebufferStream(), stream_sys_t::block, block_ChainRelease(), stream_track_t::i_date, stream_track_t::i_end, stream_sys_t::i_offset, access_t::i_pos, stream_sys_t::i_pos, stream_sys_t::i_size, stream_track_t::i_start, stream_sys_t::i_start, stream_sys_t::i_tk, stream_sys_t::i_used, access_t::info, stream_sys_t::method, stream_sys_t::p_access, stream_sys_t::p_current, stream_sys_t::p_first, stream_t::p_sys, stream_sys_t::pp_last, stream_sys_t::stream, STREAM_CACHE_TRACK, STREAM_METHOD_BLOCK, STREAM_METHOD_STREAM, and stream_sys_t::tk.
Referenced by AStreamControl().
|
static |
References stream_sys_t::i_list, stream_sys_t::i_list_index, access_t::i_pos, stream_sys_t::i_pos, access_entry_t::i_size, access_t::info, stream_sys_t::list, stream_sys_t::p_access, and stream_t::p_sys.
Referenced by AStreamControl().
|
static |
References access_Delete(), stream_sys_t::block, block_ChainRelease(), stream_sys_t::i_list, stream_sys_t::list, stream_sys_t::method, stream_sys_t::p_access, stream_sys_t::p_buffer, stream_sys_t::p_first, stream_sys_t::p_list_access, stream_sys_t::p_peek, stream_t::p_sys, access_entry_t::psz_path, stream_sys_t::stream, stream_CommonDelete(), and STREAM_METHOD_BLOCK.
Referenced by stream_AccessNew(), and UStreamDestroy().
|
static |
References AStreamRefillBlock(), stream_sys_t::block, block_t::i_buffer, stream_sys_t::i_offset, stream_sys_t::i_peek, stream_sys_t::i_pos, stream_sys_t::i_size, stream_sys_t::i_start, block_t::p_buffer, stream_sys_t::p_current, block_t::p_next, stream_sys_t::p_peek, stream_t::p_sys, stream_sys_t::pp_last, and realloc_or_free().
Referenced by stream_AccessNew().
|
static |
References AStreamRefillStream(), stream_track_t::i_end, stream_sys_t::i_offset, stream_sys_t::i_peek, stream_sys_t::i_pos, stream_track_t::i_start, stream_sys_t::i_tk, stream_sys_t::i_used, msg_Dbg, stream_track_t::p_buffer, stream_sys_t::p_peek, stream_t::p_sys, realloc_or_free(), stream_sys_t::stream, STREAM_CACHE_TRACK_SIZE, and stream_sys_t::tk.
Referenced by stream_AccessNew().
|
static |
References AReadBlock(), stream_sys_t::block, block_t::i_buffer, stream_sys_t::i_bytes, stream_sys_t::i_read_count, stream_sys_t::i_read_time, stream_sys_t::i_size, mdate(), msg_Dbg, stream_sys_t::p_current, stream_sys_t::p_first, block_t::p_next, stream_t::p_sys, stream_sys_t::pp_last, stream_sys_t::stat, STREAM_CACHE_PREBUFFER_SIZE, and vlc_object_alive.
Referenced by AStreamControlReset(), and stream_AccessNew().
|
static |
References AReadStream(), stream_sys_t::i_bytes, stream_track_t::i_end, stream_sys_t::i_read_count, stream_sys_t::i_read_size, stream_sys_t::i_read_time, stream_track_t::i_start, stream_sys_t::i_tk, mdate(), msg_Dbg, stream_track_t::p_buffer, stream_t::p_sys, stream_sys_t::stat, stream_sys_t::stream, STREAM_CACHE_PREBUFFER_SIZE, STREAM_CACHE_TRACK_SIZE, stream_sys_t::tk, and vlc_object_alive.
Referenced by AStreamControlReset(), and stream_AccessNew().
|
static |
References ACCESS_CAN_SEEK, access_Control(), AStreamRefillBlock(), AStreamSeekBlock(), stream_sys_t::block, block_t::i_buffer, stream_sys_t::i_offset, stream_sys_t::i_pos, stream_sys_t::p_access, block_t::p_buffer, stream_sys_t::p_current, block_t::p_next, stream_t::p_sys, and VLC_CLIP.
Referenced by stream_AccessNew().
|
static |
References AStreamRefillStream(), stream_track_t::i_end, stream_sys_t::i_offset, stream_sys_t::i_pos, stream_track_t::i_start, stream_sys_t::i_tk, stream_sys_t::i_used, msg_Dbg, stream_track_t::p_buffer, stream_t::p_sys, stream_sys_t::stream, STREAM_CACHE_TRACK_SIZE, STREAM_READ_ATONCE, stream_sys_t::tk, and VLC_CLIP.
Referenced by AStreamReadStream(), and AStreamSeekStream().
|
static |
References AStreamReadNoSeekStream(), AStreamSeekStream(), stream_sys_t::i_pos, and stream_t::p_sys.
Referenced by stream_AccessNew().
|
static |
< No error
< Unspecified error
< Unspecified error
< No error
References AReadBlock(), stream_sys_t::block, block_Release(), block_t::i_buffer, stream_sys_t::i_bytes, stream_sys_t::i_read_count, stream_sys_t::i_read_time, stream_sys_t::i_size, stream_sys_t::i_start, mdate(), stream_sys_t::p_current, stream_sys_t::p_first, block_t::p_next, stream_t::p_sys, stream_sys_t::pp_last, stream_sys_t::stat, STREAM_CACHE_SIZE, VLC_EGENERIC, vlc_object_alive, and VLC_SUCCESS.
Referenced by AStreamPeekBlock(), AStreamReadBlock(), and AStreamSeekBlock().
|
static |
< Unspecified error
< Unspecified error
< Unspecified error
< No error
< No error
References AReadStream(), stream_sys_t::i_bytes, stream_track_t::i_end, stream_sys_t::i_offset, stream_sys_t::i_read_count, stream_sys_t::i_read_time, stream_track_t::i_start, stream_sys_t::i_tk, stream_sys_t::i_used, mdate(), msg_Dbg, stream_track_t::p_buffer, stream_t::p_sys, stream_sys_t::stat, stream_sys_t::stream, STREAM_CACHE_TRACK_SIZE, stream_sys_t::tk, VLC_EGENERIC, vlc_object_alive, and VLC_SUCCESS.
Referenced by AStreamPeekStream(), AStreamReadNoSeekStream(), and AStreamSeekStream().
|
static |
< No error
< Unspecified error
< Unspecified error
< Unspecified error
< No error
< Unspecified error
< No error
< Unspecified error
References ACCESS_CAN_FASTSEEK, ACCESS_CAN_SEEK, access_Control(), ASeek(), AStreamRefillBlock(), stream_sys_t::block, block_ChainRelease(), block_t::i_buffer, stream_sys_t::i_bytes, stream_sys_t::i_offset, stream_sys_t::i_pos, stream_sys_t::i_read_count, stream_sys_t::i_seek_count, stream_sys_t::i_seek_time, stream_sys_t::i_size, stream_sys_t::i_start, mdate(), msg_Dbg, msg_Err, msg_Warn, stream_sys_t::p_access, stream_sys_t::p_current, stream_sys_t::p_first, block_t::p_next, stream_t::p_sys, stream_sys_t::pp_last, stream_sys_t::stat, STREAM_CACHE_SIZE, VLC_EGENERIC, and VLC_SUCCESS.
Referenced by AStreamControl(), and AStreamReadBlock().
|
static |
< Unspecified error
< Unspecified error
< Unspecified error
< Unspecified error
< Unspecified error
< No error
References ACCESS_CAN_FASTSEEK, ACCESS_CAN_SEEK, access_Control(), ASeek(), AStreamReadNoSeekStream(), AStreamRefillStream(), stream_track_t::i_date, stream_track_t::i_end, stream_sys_t::i_offset, stream_sys_t::i_pos, stream_sys_t::i_read_size, stream_track_t::i_start, stream_sys_t::i_tk, stream_sys_t::i_used, mdate(), msg_Dbg, msg_Err, msg_Warn, stream_sys_t::p_access, stream_t::p_sys, stream_sys_t::stream, STREAM_CACHE_TRACK, STREAM_READ_ATONCE, stream_sys_t::tk, VLC_EGENERIC, and VLC_SUCCESS.
Referenced by AStreamControl(), and AStreamReadStream().
This function creates a stream_t from a provided access_t.
An optional NULL terminated list of file may be provided. The content of these extra files will be concatenated after to the main access.
XXX ppsz_list is treated as const (I failed to avoid a warning when using const keywords for pointer of pointers)
References ACCESS_CAN_FASTSEEK, access_Control(), access_Delete(), access_New, AStreamControl(), AStreamDestroy(), AStreamPeekBlock(), AStreamPeekStream(), AStreamPrebufferBlock(), AStreamPrebufferStream(), AStreamReadBlock(), AStreamReadStream(), stream_sys_t::b_fastseek, stream_sys_t::block, stream_sys_t::i_bytes, stream_track_t::i_date, stream_track_t::i_end, stream_sys_t::i_list, stream_sys_t::i_list_index, stream_sys_t::i_offset, stream_sys_t::i_peek, access_t::i_pos, stream_sys_t::i_pos, stream_sys_t::i_read_count, stream_sys_t::i_read_size, stream_sys_t::i_read_time, stream_sys_t::i_seek_count, stream_sys_t::i_seek_time, access_t::i_size, access_entry_t::i_size, stream_sys_t::i_size, stream_track_t::i_start, stream_sys_t::i_start, stream_sys_t::i_tk, stream_sys_t::i_used, access_t::info, stream_sys_t::list, stream_sys_t::method, msg_Dbg, msg_Err, stream_sys_t::p_access, stream_track_t::p_buffer, stream_sys_t::p_buffer, stream_sys_t::p_current, stream_sys_t::p_first, stream_t::p_input, access_t::p_input, stream_sys_t::p_list_access, stream_sys_t::p_peek, stream_t::p_sys, access_t::pf_block, stream_t::pf_control, stream_t::pf_destroy, stream_t::pf_peek, stream_t::pf_read, stream_sys_t::pp_last, stream_t::psz_access, access_t::psz_access, access_t::psz_location, psz_name, stream_t::psz_path, access_entry_t::psz_path, stream_sys_t::stat, strdup(), stream_sys_t::stream, STREAM_CACHE_SIZE, STREAM_CACHE_TRACK, STREAM_CACHE_TRACK_SIZE, stream_CommonDelete(), stream_CommonNew(), STREAM_METHOD_BLOCK, STREAM_METHOD_STREAM, STREAM_READ_ATONCE, TAB_APPEND, TAB_INIT, stream_sys_t::tk, and VLC_OBJECT.
Referenced by InputSourceInit(), and stream_UrlNew().
| void stream_CommonDelete | ( | stream_t * | s | ) |
References stream_text_t::conv, stream_t::p_text, stream_t::psz_access, stream_t::psz_path, vlc_iconv_close(), and vlc_object_release.
Referenced by AStreamDestroy(), Delete(), DStreamDelete(), stream_AccessNew(), stream_DemuxNew(), stream_FilterNew(), stream_MemoryNew(), and StreamDelete().
| stream_t* stream_CommonNew | ( | vlc_object_t * | p_obj | ) |
References stream_text_t::b_little_endian, stream_text_t::conv, stream_text_t::i_char_width, stream_t::p_text, vlc_custom_create, and vlc_object_release.
Referenced by stream_AccessNew(), stream_DemuxNew(), stream_FilterNew(), and stream_MemoryNew().
| stream_t* stream_UrlNew | ( | ((vlc_object_t *)(vlc_object_t *p_parent)) | , |
| const char * | psz_url | ||
| ) |
References access_Delete(), access_New, input_SplitMRL(), msg_Err, stream_t::pf_destroy, stream_AccessNew(), and UStreamDestroy().
|
static |
References access_Delete(), AStreamDestroy(), and stream_t::p_parent.
Referenced by stream_UrlNew().
1.8.1.2