xine-lib  1.2.9
Data Structures | Macros | Typedefs | Functions
asfheader.c File Reference
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <xine/xineutils.h>
#include "bswap.h"
#include "asfheader.h"

Data Structures

struct  asf_header_internal_s
 
struct  asf_reader_s
 

Macros

#define LOG_MODULE   "asfheader"
 
#define LOG_VERBOSE
 
#define iconv_open(TO, FROM)   0
 
#define iconv(CD, INBUF, INLEFT, OUTBUF, OUTLEFT)   iconv_internal(INBUF, INLEFT, OUTBUF, OUTLEFT)
 
#define iconv_close(CD)
 
#define ICONV_CONST   const
 

Typedefs

typedef int iconv_t
 
typedef struct asf_header_internal_s asf_header_internal_t
 
typedef struct asf_reader_s asf_reader_t
 

Functions

size_t iconv_internal (const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)
 
static void asf_reader_init (asf_reader_t *reader, uint8_t *buffer, int size)
 
static int asf_reader_get_16 (asf_reader_t *reader, uint16_t *value)
 
static int asf_reader_get_32 (asf_reader_t *reader, uint32_t *value)
 
static int asf_reader_get_64 (asf_reader_t *reader, uint64_t *value)
 
static int asf_reader_get_guid (asf_reader_t *reader, GUID *value)
 
static uint8_t * asf_reader_get_bytes (asf_reader_t *reader, size_t size)
 
static char * asf_reader_get_string (asf_reader_t *reader, size_t size, iconv_t cd)
 
static int asf_reader_skip (asf_reader_t *reader, size_t size)
 
static uint8_t * asf_reader_get_buffer (asf_reader_t *reader)
 
static int asf_reader_eos (asf_reader_t *reader)
 
static size_t asf_reader_get_size (asf_reader_t *reader)
 
void asf_get_guid (uint8_t *buffer, GUID *value)
 
int asf_find_object_id (GUID *g)
 
static int asf_header_get_stream_id (asf_header_t *header_pub, uint16_t stream_number)
 
static int asf_header_parse_file_properties (asf_header_t *header, uint8_t *buffer, int buffer_len)
 
static void asf_header_delete_stream_properties (asf_stream_t *asf_stream)
 
static int asf_header_parse_stream_properties (asf_header_t *header, uint8_t *buffer, int buffer_len)
 
static void asf_header_delete_stream_extended_properties (asf_stream_extension_t *asf_stream_extension)
 
static int asf_header_parse_stream_extended_properties (asf_header_t *header, uint8_t *buffer, int buffer_len)
 
static int asf_header_parse_stream_bitrate_properties (asf_header_t *header_pub, uint8_t *buffer, int buffer_len)
 
static int asf_header_parse_metadata (asf_header_t *header_pub, uint8_t *buffer, int buffer_len)
 
static int asf_header_parse_header_extension (asf_header_t *header, uint8_t *buffer, int buffer_len)
 
static int asf_header_parse_content_description (asf_header_t *header_pub, uint8_t *buffer, int buffer_len)
 
asf_header_tasf_header_new (uint8_t *buffer, int buffer_len)
 
static void asf_header_delete_file_properties (asf_file_t *asf_file)
 
static void asf_header_delete_content (asf_content_t *asf_content)
 
void asf_header_delete (asf_header_t *header_pub)
 
static int asf_header_choose_stream (asf_header_internal_t *header, int stream_type, uint32_t bandwidth)
 
void asf_header_choose_streams (asf_header_t *header_pub, uint32_t bandwidth, int *video_id, int *audio_id)
 
void asf_header_disable_streams (asf_header_t *header_pub, int video_id, int audio_id)
 

Macro Definition Documentation

◆ iconv

#define iconv (   CD,
  INBUF,
  INLEFT,
  OUTBUF,
  OUTLEFT 
)    iconv_internal(INBUF, INLEFT, OUTBUF, OUTLEFT)

◆ iconv_close

#define iconv_close (   CD)

◆ ICONV_CONST

#define ICONV_CONST   const

◆ iconv_open

#define iconv_open (   TO,
  FROM 
)    0

◆ LOG_MODULE

#define LOG_MODULE   "asfheader"

◆ LOG_VERBOSE

#define LOG_VERBOSE

Typedef Documentation

◆ asf_header_internal_t

◆ asf_reader_t

typedef struct asf_reader_s asf_reader_t

◆ iconv_t

typedef int iconv_t

Function Documentation

◆ asf_find_object_id()

int asf_find_object_id ( GUID g)

◆ asf_get_guid()

void asf_get_guid ( uint8_t *  buffer,
GUID value 
)

◆ asf_header_choose_stream()

static int asf_header_choose_stream ( asf_header_internal_t header,
int  stream_type,
uint32_t  bandwidth 
)
static

◆ asf_header_choose_streams()

void asf_header_choose_streams ( asf_header_t header_pub,
uint32_t  bandwidth,
int *  video_id,
int *  audio_id 
)

◆ asf_header_delete()

void asf_header_delete ( asf_header_t header_pub)

◆ asf_header_delete_content()

static void asf_header_delete_content ( asf_content_t asf_content)
static

◆ asf_header_delete_file_properties()

static void asf_header_delete_file_properties ( asf_file_t asf_file)
static

Referenced by asf_header_delete().

◆ asf_header_delete_stream_extended_properties()

static void asf_header_delete_stream_extended_properties ( asf_stream_extension_t asf_stream_extension)
static

◆ asf_header_delete_stream_properties()

static void asf_header_delete_stream_properties ( asf_stream_t asf_stream)
static

◆ asf_header_disable_streams()

void asf_header_disable_streams ( asf_header_t header_pub,
int  video_id,
int  audio_id 
)

◆ asf_header_get_stream_id()

static int asf_header_get_stream_id ( asf_header_t header_pub,
uint16_t  stream_number 
)
static

◆ asf_header_new()

asf_header_t* asf_header_new ( uint8_t *  buffer,
int  buffer_len 
)

◆ asf_header_parse_content_description()

static int asf_header_parse_content_description ( asf_header_t header_pub,
uint8_t *  buffer,
int  buffer_len 
)
static

◆ asf_header_parse_file_properties()

static int asf_header_parse_file_properties ( asf_header_t header,
uint8_t *  buffer,
int  buffer_len 
)
static

◆ asf_header_parse_header_extension()

static int asf_header_parse_header_extension ( asf_header_t header,
uint8_t *  buffer,
int  buffer_len 
)
static

◆ asf_header_parse_metadata()

static int asf_header_parse_metadata ( asf_header_t header_pub,
uint8_t *  buffer,
int  buffer_len 
)
static

◆ asf_header_parse_stream_bitrate_properties()

static int asf_header_parse_stream_bitrate_properties ( asf_header_t header_pub,
uint8_t *  buffer,
int  buffer_len 
)
static

◆ asf_header_parse_stream_extended_properties()

static int asf_header_parse_stream_extended_properties ( asf_header_t header,
uint8_t *  buffer,
int  buffer_len 
)
static

◆ asf_header_parse_stream_properties()

static int asf_header_parse_stream_properties ( asf_header_t header,
uint8_t *  buffer,
int  buffer_len 
)
static

◆ asf_reader_eos()

static int asf_reader_eos ( asf_reader_t reader)
static

◆ asf_reader_get_16()

static int asf_reader_get_16 ( asf_reader_t reader,
uint16_t *  value 
)
static

◆ asf_reader_get_32()

static int asf_reader_get_32 ( asf_reader_t reader,
uint32_t *  value 
)
static

◆ asf_reader_get_64()

static int asf_reader_get_64 ( asf_reader_t reader,
uint64_t *  value 
)
static

◆ asf_reader_get_buffer()

static uint8_t* asf_reader_get_buffer ( asf_reader_t reader)
static

◆ asf_reader_get_bytes()

static uint8_t* asf_reader_get_bytes ( asf_reader_t reader,
size_t  size 
)
static

◆ asf_reader_get_guid()

static int asf_reader_get_guid ( asf_reader_t reader,
GUID value 
)
static

◆ asf_reader_get_size()

static size_t asf_reader_get_size ( asf_reader_t reader)
static

◆ asf_reader_get_string()

static char* asf_reader_get_string ( asf_reader_t reader,
size_t  size,
iconv_t  cd 
)
static

◆ asf_reader_init()

static void asf_reader_init ( asf_reader_t reader,
uint8_t *  buffer,
int  size 
)
static

◆ asf_reader_skip()

static int asf_reader_skip ( asf_reader_t reader,
size_t  size 
)
static

◆ iconv_internal()

size_t iconv_internal ( const char **  inbuf,
size_t *  inbytesleft,
char **  outbuf,
size_t *  outbytesleft 
)