xine-lib 1.2.11
|
#include <string.h>
#include <xine/xine_internal.h>
#include <xine/xineutils.h>
#include "bswap.h"
#include "ebml.h"
Macros | |
#define | LOG_MODULE "ebml" |
#define | LOG_VERBOSE |
Functions | |
ebml_parser_t * | new_ebml_parser (xine_t *xine, input_plugin_t *input) |
void | dispose_ebml_parser (ebml_parser_t *ebml) |
uint32_t | ebml_get_next_level (ebml_parser_t *ebml, ebml_elem_t *elem) |
static int | ebml_read_elem_id (ebml_parser_t *ebml, uint32_t *id) |
static int | ebml_read_elem_len (ebml_parser_t *ebml, uint64_t *len) |
static int | ebml_read_elem_data (ebml_parser_t *ebml, void *buf, int64_t len) |
int | ebml_skip (ebml_parser_t *ebml, ebml_elem_t *elem) |
int | ebml_read_elem_head (ebml_parser_t *ebml, ebml_elem_t *elem) |
int | ebml_read_uint (ebml_parser_t *ebml, ebml_elem_t *elem, uint64_t *num) |
int | ebml_read_float (ebml_parser_t *ebml, ebml_elem_t *elem, double *num) |
int | ebml_read_ascii (ebml_parser_t *ebml, ebml_elem_t *elem, char *str) |
char * | ebml_alloc_read_ascii (ebml_parser_t *ebml, ebml_elem_t *elem) |
int | ebml_read_master (ebml_parser_t *ebml, ebml_elem_t *elem) |
int | ebml_read_binary (ebml_parser_t *ebml, ebml_elem_t *elem, void *binary) |
int | ebml_check_header (ebml_parser_t *ebml) |
#define LOG_MODULE "ebml" |
#define LOG_VERBOSE |
void dispose_ebml_parser | ( | ebml_parser_t * | ebml | ) |
References _x_freep(), and ebml_parser_s::doctype.
Referenced by demux_matroska_dispose(), and open_plugin().
char * ebml_alloc_read_ascii | ( | ebml_parser_t * | ebml, |
ebml_elem_t * | elem | ||
) |
References ebml_read_ascii(), ebml_elem_s::len, and NULL.
Referenced by ebml_check_header(), parse_chapter_display(), parse_info(), and parse_track_entry().
int ebml_check_header | ( | ebml_parser_t * | ebml | ) |
References ebml_parser_s::doctype, ebml_parser_s::doctype_read_version, ebml_parser_s::doctype_version, ebml_alloc_read_ascii(), ebml_get_next_level(), EBML_ID_DOCTYPE, EBML_ID_DOCTYPEREADVERSION, EBML_ID_DOCTYPEVERSION, EBML_ID_EBML, EBML_ID_EBMLMAXIDLENGTH, EBML_ID_EBMLMAXSIZELENGTH, EBML_ID_EBMLREADVERSION, EBML_ID_EBMLVERSION, ebml_read_elem_head(), ebml_read_master(), ebml_read_uint(), ebml_skip(), EBML_VERSION, ebml_elem_s::id, lprintf, ebml_parser_s::max_id_len, ebml_parser_s::max_size_len, ebml_parser_s::read_version, ebml_parser_s::version, ebml_parser_s::xine, XINE_VERBOSITY_LOG, and xprintf.
Referenced by open_plugin().
uint32_t ebml_get_next_level | ( | ebml_parser_t * | ebml, |
ebml_elem_t * | elem | ||
) |
References ebml_parser_s::elem_stack, ebml_elem_s::id, ebml_elem_s::len, ebml_parser_s::level, lprintf, and ebml_elem_s::start.
Referenced by ebml_check_header(), matroska_parse_chapters(), parse_attachments(), parse_audio_track(), parse_block_group(), parse_chapter_atom(), parse_chapter_display(), parse_cluster(), parse_content_compression(), parse_content_encoding(), parse_content_encodings(), parse_cue_point(), parse_cue_trackposition(), parse_cues(), parse_edition_entry(), parse_info(), parse_seek_entry(), parse_seekhead(), parse_tags(), parse_top_level(), parse_top_level_head(), parse_track_entry(), parse_tracks(), and parse_video_track().
int ebml_read_ascii | ( | ebml_parser_t * | ebml, |
ebml_elem_t * | elem, | ||
char * | str | ||
) |
References ebml_read_elem_data(), and ebml_elem_s::len.
Referenced by ebml_alloc_read_ascii().
int ebml_read_binary | ( | ebml_parser_t * | ebml, |
ebml_elem_t * | elem, | ||
void * | binary | ||
) |
References ebml_read_elem_data(), and ebml_elem_s::len.
Referenced by parse_content_compression(), and parse_track_entry().
|
static |
References input_plugin_s::get_current_pos, ebml_parser_s::input, input_plugin_s::read, ebml_parser_s::xine, XINE_VERBOSITY_LOG, and xprintf.
Referenced by ebml_read_ascii(), ebml_read_binary(), ebml_read_float(), and ebml_read_uint().
int ebml_read_elem_head | ( | ebml_parser_t * | ebml, |
ebml_elem_t * | elem | ||
) |
References ebml_read_elem_id(), ebml_read_elem_len(), input_plugin_s::get_current_pos, ebml_elem_s::id, ebml_parser_s::input, ebml_elem_s::len, and ebml_elem_s::start.
Referenced by ebml_check_header(), matroska_parse_chapters(), parse_attachments(), parse_audio_track(), parse_block_group(), parse_chapter_atom(), parse_chapter_display(), parse_cluster(), parse_content_compression(), parse_content_encoding(), parse_content_encodings(), parse_cue_point(), parse_cue_trackposition(), parse_cues(), parse_edition_entry(), parse_info(), parse_seek_entry(), parse_seekhead(), parse_segment(), parse_tags(), parse_top_level(), parse_top_level_head(), parse_track_entry(), parse_tracks(), and parse_video_track().
|
static |
References input_plugin_s::get_current_pos, ebml_parser_s::input, input_plugin_s::read, ebml_parser_s::xine, XINE_VERBOSITY_LOG, and xprintf.
Referenced by ebml_read_elem_head().
|
static |
References input_plugin_s::get_current_pos, ebml_parser_s::input, input_plugin_s::read, ebml_parser_s::xine, XINE_VERBOSITY_LOG, and xprintf.
Referenced by ebml_read_elem_head().
int ebml_read_float | ( | ebml_parser_t * | ebml, |
ebml_elem_t * | elem, | ||
double * | num | ||
) |
References _X_BE_32, _X_BE_64, ebml_read_elem_data(), ebml_elem_s::len, ebml_parser_s::xine, XINE_VERBOSITY_LOG, and xprintf.
Referenced by parse_audio_track(), and parse_info().
int ebml_read_master | ( | ebml_parser_t * | ebml, |
ebml_elem_t * | elem | ||
) |
References EBML_STACK_SIZE, ebml_parser_s::elem_stack, ebml_elem_s::id, ebml_elem_s::len, ebml_parser_s::level, lprintf, ebml_elem_s::start, ebml_parser_s::xine, XINE_VERBOSITY_LOG, and xprintf.
Referenced by demux_matroska_send_headers(), ebml_check_header(), matroska_parse_chapters(), parse_chapter_atom(), parse_cluster(), parse_content_encoding(), parse_content_encodings(), parse_cue_point(), parse_cues(), parse_edition_entry(), parse_seekhead(), parse_segment(), parse_top_level(), parse_top_level_head(), parse_track_entry(), and parse_tracks().
int ebml_read_uint | ( | ebml_parser_t * | ebml, |
ebml_elem_t * | elem, | ||
uint64_t * | num | ||
) |
References ebml_read_elem_data(), ebml_elem_s::len, ebml_parser_s::xine, XINE_VERBOSITY_LOG, and xprintf.
Referenced by ebml_check_header(), parse_audio_track(), parse_block_group(), parse_chapter_atom(), parse_cluster(), parse_content_compression(), parse_content_encoding(), parse_cue_point(), parse_cue_trackposition(), parse_edition_entry(), parse_info(), parse_seek_entry(), parse_track_entry(), and parse_video_track().
int ebml_skip | ( | ebml_parser_t * | ebml, |
ebml_elem_t * | elem | ||
) |
References ebml_parser_s::input, ebml_elem_s::len, input_plugin_s::seek, ebml_parser_s::xine, XINE_VERBOSITY_LOG, and xprintf.
Referenced by ebml_check_header(), matroska_parse_chapters(), parse_attachments(), parse_audio_track(), parse_block_group(), parse_chapter_atom(), parse_chapter_display(), parse_cluster(), parse_content_compression(), parse_content_encoding(), parse_content_encodings(), parse_cue_point(), parse_cue_trackposition(), parse_cues(), parse_edition_entry(), parse_info(), parse_seek_entry(), parse_seekhead(), parse_tags(), parse_top_level(), parse_top_level_head(), parse_track_entry(), parse_tracks(), and parse_video_track().
ebml_parser_t * new_ebml_parser | ( | xine_t * | xine, |
input_plugin_t * | input | ||
) |
References ebml_parser_s::input, input(), and ebml_parser_s::xine.
Referenced by open_plugin().