hvirtual/libmpeg3/mpeg3protos.h File Reference

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Defines

#define CLAMP(x, y, z)   ((x) = ((x) < (y) ? (y) : ((x) > (z) ? (z) : (x))))
#define mpeg3demux_error(demuxer)   (((mpeg3_demuxer_t *)(demuxer))->error_flag)
#define mpeg3bits_error(stream)   mpeg3demux_error((stream)->demuxer)
#define mpeg3bits_eof(stream)   mpeg3demux_eof((stream)->demuxer)
#define mpeg3bits_bof(stream)   mpeg3demux_bof((stream)->demuxer)
#define mpeg3io_tell(fs)   (((mpeg3_fs_t *)(fs))->current_byte)
#define mpeg3io_eof(fs)   (((mpeg3_fs_t *)(fs))->current_byte >= ((mpeg3_fs_t *)(fs))->total_bytes)
#define mpeg3io_bof(fs)   (((mpeg3_fs_t *)(fs))->current_byte < 0)
#define mpeg3io_get_fd(fs)   (fileno(((mpeg3_fs_t *)(fs))->fd))
#define mpeg3io_total_bytes(fs)   (((mpeg3_fs_t *)(fs))->total_bytes)
#define mpeg3slice_fillbits(buffer, nbits)
#define mpeg3slice_flushbits(buffer, nbits)
#define mpeg3slice_flushbit(buffer)

Functions

mpeg3_css_tmpeg3_new_css ()
int64_t mpeg3io_tell_gcc (mpeg3_fs_t *fs)
double mpeg3_add_double_gcc (double x, double y)
double mpeg3_divide_double_gcc (double x, double y)
int64_t mpeg3_total_bytes_gcc (mpeg3_title_t *title)
int64_t mpeg3io_path_total_bytes (char *path)
int64_t mpeg3io_get_total_bytes (mpeg3_fs_t *fs)
mpeg3_title_tmpeg3_new_title (mpeg3_t *file, char *path)
void mpeg3_new_cell (mpeg3_title_t *title, int64_t program_start, int64_t program_end, int64_t title_start, int64_t title_end, int program)
int mpeg3demux_create_title (mpeg3_demuxer_t *demuxer, FILE *toc)
mpeg3_atrack_tmpeg3_new_atrack (mpeg3_t *file, int custom_id, int is_ac3, mpeg3_demuxer_t *demuxer, int number)
int mpeg3_delete_atrack (mpeg3_t *file, mpeg3_atrack_t *atrack)
void mpeg3_append_samples (mpeg3_atrack_t *atrack, int64_t offset)
int mpeg3_next_header ()
mpeg3_vtrack_tmpeg3_new_vtrack (mpeg3_t *file, int custom_id, mpeg3_demuxer_t *demuxer, int number)
int mpeg3_delete_vtrack (mpeg3_t *file, mpeg3_vtrack_t *vtrack)
void mpeg3_append_frame (mpeg3_vtrack_t *vtrack, int64_t offset, int is_keyframe)
mpeg3_strack_tmpeg3_new_strack (int id)
void mpeg3_delete_strack (mpeg3_strack_t *ptr)
void mpeg3_copy_strack (mpeg3_strack_t *dst, mpeg3_strack_t *src)
mpeg3_strack_tmpeg3_get_strack_id (mpeg3_t *file, int id)
mpeg3_strack_tmpeg3_get_strack (mpeg3_t *file, int number)
mpeg3_strack_tmpeg3_create_strack (mpeg3_t *file, int id)
void mpeg3_append_subtitle_offset (mpeg3_strack_t *dst, int64_t program_offset)
void mpeg3_delete_subtitle (mpeg3_subtitle_t *subtitle)
void mpeg3_append_subtitle (mpeg3_strack_t *strack, mpeg3_subtitle_t *subtitle)
mpeg3_subtitle_tmpeg3_get_subtitle (mpeg3_strack_t *strack)
void mpeg3_pop_subtitle (mpeg3_strack_t *strack, int number, int delete_it)
void mpeg3_pop_all_subtitles (mpeg3_strack_t *strack)
void mpeg3_reset_subtitles (mpeg3_t *file)
mpeg3audio_tmpeg3audio_new (mpeg3_t *file, mpeg3_atrack_t *track, int is_ac3)
int mpeg3audio_delete (mpeg3audio_t *audio)
int mpeg3audio_decode_audio (mpeg3audio_t *audio, float *output_f, short *output_i, int channel, int len)
void mpeg3_shift_audio (mpeg3audio_t *audio, int diff)
int mpeg3_new_decode_tables (mpeg3_layer_t *audio)
int mpeg3_init_layer3 (mpeg3_layer_t *audio)
int mpeg3_init_layer2 (mpeg3_layer_t *audio)
mpeg3_layer_tmpeg3_new_layer ()
mpeg3_ac3_tmpeg3_new_ac3 ()
mpeg3_pcm_tmpeg3_new_pcm ()
void mpeg3_delete_layer (mpeg3_layer_t *audio)
void mpeg3_delete_ac3 (mpeg3_ac3_t *audio)
void mpeg3_delete_pcm (mpeg3_pcm_t *audio)
int mpeg3_layer_check (unsigned char *data)
int mpeg3_ac3_check (unsigned char *header)
int mpeg3_pcm_check (unsigned char *header)
int mpeg3_layer_header (mpeg3_layer_t *audio, unsigned char *data)
int mpeg3_ac3_header (mpeg3_ac3_t *audio, unsigned char *header)
int mpeg3_pcm_header (mpeg3_pcm_t *audio, unsigned char *header)
void mpeg3_layer_reset (mpeg3_layer_t *audio)
int mpeg3audio_dolayer3 (mpeg3_layer_t *audio, char *frame, int frame_size, float **output, int render)
int mpeg3audio_dolayer2 (mpeg3_layer_t *audio, char *frame, int frame_size, float **output, int render)
int mpeg3audio_doac3 (mpeg3_ac3_t *audio, char *frame, int frame_size, float **output, int render)
int mpeg3audio_dopcm (mpeg3_pcm_t *audio, char *frame, int frame_size, float **output, int render)
mpeg3video_tmpeg3video_new (mpeg3_t *file, mpeg3_vtrack_t *track)
int mpeg3video_delete (mpeg3video_t *video)
int mpeg3video_read_frame (mpeg3video_t *video, unsigned char **output_rows, int in_x, int in_y, int in_w, int in_h, int out_w, int out_h, int color_model)
void mpeg3video_dump (mpeg3video_t *video)
int mpeg3video_prev_code (mpeg3_demuxer_t *demuxer, unsigned int code)
int mpeg3video_next_code (mpeg3_bits_t *stream, unsigned int code)
void mpeg3video_toc_error ()
int mpeg3_rewind_video (mpeg3video_t *video)
int mpeg3_read_yuvframe_ptr (mpeg3_t *file, char **y_output, char **u_output, char **v_output, int stream)
int mpeg3_read_yuvframe (mpeg3_t *file, char *y_output, char *u_output, char *v_output, int in_x, int in_y, int in_w, int in_h, int stream)
int mpeg3video_drop_frames (mpeg3video_t *video, long frames, int cache_it)
void mpeg3_decode_subtitle (mpeg3video_t *video)
mpeg3_cache_tmpeg3_new_cache ()
void mpeg3_delete_cache (mpeg3_cache_t *ptr)
void mpeg3_reset_cache (mpeg3_cache_t *ptr)
void mpeg3_cache_put_frame (mpeg3_cache_t *ptr, int64_t frame_number, unsigned char *y, unsigned char *u, unsigned char *v, int y_size, int u_size, int v_size)
int mpeg3_cache_get_frame (mpeg3_cache_t *ptr, int64_t frame_number, unsigned char **y, unsigned char **u, unsigned char **v)
int mpeg3_ceche_has_frame (mpeg3_cache_t *ptr, int64_t frame_number)
int64_t mpeg3_cache_usage (mpeg3_cache_t *ptr)
mpeg3_fs_tmpeg3_new_fs (char *path)
int mpeg3_delete_fs (mpeg3_fs_t *fs)
int mpeg3io_open_file (mpeg3_fs_t *fs)
int mpeg3io_close_file (mpeg3_fs_t *fs)
int mpeg3io_seek (mpeg3_fs_t *fs, int64_t byte)
int mpeg3io_seek_relative (mpeg3_fs_t *fs, int64_t bytes)
int mpeg3io_read_data (unsigned char *buffer, int64_t bytes, mpeg3_fs_t *fs)
mpeg3_tmpeg3_new (char *path)
mpeg3_index_tmpeg3_new_index ()
void mpeg3_delete_index (mpeg3_index_t *index)
int mpeg3_delete (mpeg3_t *file)
int mpeg3_get_file_type (mpeg3_t *file, mpeg3_t *old_file, int *toc_atracks, int *toc_vtracks)
int mpeg3_read_toc (mpeg3_t *file, int *atracks_return, int *vtracks_return)
mpeg3_demuxer_tmpeg3_new_demuxer (mpeg3_t *file, int do_audio, int do_video, int custom_id)
int mpeg3_delete_demuxer (mpeg3_demuxer_t *demuxer)
mpeg3_demuxer_tmpeg3_get_demuxer (mpeg3_t *file)
int mpeg3demux_read_data (mpeg3_demuxer_t *demuxer, unsigned char *output, int size)
void mpeg3demux_append_data (mpeg3_demuxer_t *demuxer, unsigned char *data, int bytes)
void mpeg3demux_shift_data (mpeg3_demuxer_t *demuxer, int bytes)
int64_t mpeg3_absolute_to_program (mpeg3_demuxer_t *demuxer, int64_t absolute_byte)
int mpeg3_read_next_packet (mpeg3_demuxer_t *demuxer)
int mpeg3_read_prev_packet (mpeg3_demuxer_t *demuxer)
unsigned int mpeg3demux_read_int32 (mpeg3_demuxer_t *demuxer)
unsigned int mpeg3demux_read_int24 (mpeg3_demuxer_t *demuxer)
unsigned int mpeg3demux_read_int16 (mpeg3_demuxer_t *demuxer)
int64_t mpeg3demux_movie_size (mpeg3_demuxer_t *demuxer)
int64_t mpeg3demux_tell_byte (mpeg3_demuxer_t *demuxer)
int mpeg3demux_tell_program (mpeg3_demuxer_t *demuxer)
double mpeg3demux_get_time (mpeg3_demuxer_t *demuxer)
int mpeg3demux_eof (mpeg3_demuxer_t *demuxer)
int mpeg3demux_bof (mpeg3_demuxer_t *demuxer)
void mpeg3demux_start_reverse (mpeg3_demuxer_t *demuxer)
void mpeg3demux_start_forward (mpeg3_demuxer_t *demuxer)
int mpeg3demux_open_title (mpeg3_demuxer_t *demuxer, int title_number)
int mpeg3demux_seek_byte (mpeg3_demuxer_t *demuxer, int64_t byte)
int mpeg3_seek_phys (mpeg3_demuxer_t *demuxer)
unsigned char mpeg3demux_read_char_packet (mpeg3_demuxer_t *demuxer)
unsigned char mpeg3demux_read_prev_char_packet (mpeg3_demuxer_t *demuxer)
int mpeg3demux_read_program (mpeg3_demuxer_t *demuxer)
double mpeg3demux_audio_pts (mpeg3_demuxer_t *demuxer)
double mpeg3demux_video_pts (mpeg3_demuxer_t *demuxer)
void mpeg3demux_reset_pts (mpeg3_demuxer_t *demuxer)
double mpeg3demux_scan_pts (mpeg3_demuxer_t *demuxer)
int mpeg3demux_goto_pts (mpeg3_demuxer_t *demuxer, double pts)
int mpeg3_finished_subtitles (mpeg3_demuxer_t *demuxer, int id)
static unsigned char mpeg3demux_read_char (mpeg3_demuxer_t *demuxer)
static unsigned char mpeg3demux_read_prev_char (mpeg3_demuxer_t *demuxer)
mpeg3_bits_tmpeg3bits_new_stream (mpeg3_t *file, mpeg3_demuxer_t *demuxer)
int mpeg3bits_delete_stream (mpeg3_bits_t *stream)
int mpeg3bits_seek_byte (mpeg3_bits_t *stream, int64_t position)
int mpeg3bits_open_title (mpeg3_bits_t *stream, int title)
int64_t mpeg3bits_tell (mpeg3_bits_t *stream)
void mpeg3bits_reset (mpeg3_bits_t *stream)
static void mpeg3bits_fill_reverse_bits (mpeg3_bits_t *stream, int bits)
static void mpeg3bits_fill_bits (mpeg3_bits_t *stream, int bits)
static unsigned int mpeg3bits_getbyte_noptr (mpeg3_bits_t *stream)
static unsigned int mpeg3bits_getbit_noptr (mpeg3_bits_t *stream)
static unsigned int mpeg3bits_getbits (mpeg3_bits_t *stream, int bits)
static unsigned int mpeg3bits_showbits24_noptr (mpeg3_bits_t *stream)
static unsigned int mpeg3bits_showbits32_noptr (mpeg3_bits_t *stream)
static unsigned int mpeg3bits_showbits (mpeg3_bits_t *stream, int bits)
static unsigned int mpeg3bits_getbits_reverse (mpeg3_bits_t *stream, int bits)
static unsigned int mpeg3bits_showbits_reverse (mpeg3_bits_t *stream, int bits)
void mpeg3io_read_buffer (mpeg3_fs_t *fs)
static int mpeg3io_sync_buffer (mpeg3_fs_t *fs)
static unsigned int mpeg3io_read_char (mpeg3_fs_t *fs)
static unsigned char mpeg3io_next_char (mpeg3_fs_t *fs)
static uint32_t mpeg3io_read_int32 (mpeg3_fs_t *fs)
static uint32_t mpeg3io_read_int24 (mpeg3_fs_t *fs)
static uint16_t mpeg3io_read_int16 (mpeg3_fs_t *fs)
static unsigned int mpeg3slice_getbit (mpeg3_slice_buffer_t *buffer)
static unsigned int mpeg3slice_getbits2 (mpeg3_slice_buffer_t *buffer)
static unsigned int mpeg3slice_getbyte (mpeg3_slice_buffer_t *buffer)
static unsigned int mpeg3slice_getbits (mpeg3_slice_buffer_t *slice_buffer, int bits)
static unsigned int mpeg3slice_showbits16 (mpeg3_slice_buffer_t *buffer)
static unsigned int mpeg3slice_showbits9 (mpeg3_slice_buffer_t *buffer)
static unsigned int mpeg3slice_showbits5 (mpeg3_slice_buffer_t *buffer)
static unsigned int mpeg3slice_showbits (mpeg3_slice_buffer_t *slice_buffer, int bits)


Define Documentation

#define CLAMP ( x,
y,
 )     ((x) = ((x) < (y) ? (y) : ((x) > (z) ? (z) : (x))))

Definition at line 9 of file mpeg3protos.h.

#define mpeg3bits_bof ( stream   )     mpeg3demux_bof((stream)->demuxer)

Definition at line 491 of file mpeg3protos.h.

Referenced by mpeg3bits_start_forward().

#define mpeg3bits_eof ( stream   )     mpeg3demux_eof((stream)->demuxer)

#define mpeg3bits_error ( stream   )     mpeg3demux_error((stream)->demuxer)

Definition at line 487 of file mpeg3protos.h.

Referenced by mpeg3audio_ac3_coeff_unpack(), and mpeg3video_getgophdr().

#define mpeg3demux_error ( demuxer   )     (((mpeg3_demuxer_t *)(demuxer))->error_flag)

Definition at line 423 of file mpeg3protos.h.

#define mpeg3io_bof ( fs   )     (((mpeg3_fs_t *)(fs))->current_byte < 0)

Definition at line 654 of file mpeg3protos.h.

Referenced by mpeg3demux_bof().

#define mpeg3io_eof ( fs   )     (((mpeg3_fs_t *)(fs))->current_byte >= ((mpeg3_fs_t *)(fs))->total_bytes)

#define mpeg3io_get_fd ( fs   )     (fileno(((mpeg3_fs_t *)(fs))->fd))

Definition at line 656 of file mpeg3protos.h.

Referenced by mpeg3_read_ifo().

#define mpeg3io_tell ( fs   )     (((mpeg3_fs_t *)(fs))->current_byte)

#define mpeg3io_total_bytes ( fs   )     (((mpeg3_fs_t *)(fs))->total_bytes)

Definition at line 658 of file mpeg3protos.h.

Referenced by mpeg3_create_title(), mpeg3_read_toc(), and mpeg3_start_toc().

#define mpeg3slice_fillbits ( buffer,
nbits   ) 

Value:

while(((mpeg3_slice_buffer_t*)(buffer))->bits_size < (nbits)) \
        { \
                if(((mpeg3_slice_buffer_t*)(buffer))->current_position < ((mpeg3_slice_buffer_t*)(buffer))->buffer_size) \
                { \
                        ((mpeg3_slice_buffer_t*)(buffer))->bits <<= 8; \
                        ((mpeg3_slice_buffer_t*)(buffer))->bits |= ((mpeg3_slice_buffer_t*)(buffer))->data[((mpeg3_slice_buffer_t*)(buffer))->current_position++]; \
                } \
                ((mpeg3_slice_buffer_t*)(buffer))->bits_size += 8; \
        }

Definition at line 755 of file mpeg3protos.h.

Referenced by mpeg3slice_getbits(), and mpeg3slice_showbits().

#define mpeg3slice_flushbit ( buffer   ) 

Value:

{ \
        if(((mpeg3_slice_buffer_t*)(buffer))->bits_size) \
                ((mpeg3_slice_buffer_t*)(buffer))->bits_size--; \
        else \
        if(((mpeg3_slice_buffer_t*)(buffer))->current_position < ((mpeg3_slice_buffer_t*)(buffer))->buffer_size) \
        { \
                ((mpeg3_slice_buffer_t*)(buffer))->bits = \
                        ((mpeg3_slice_buffer_t*)(buffer))->data[((mpeg3_slice_buffer_t*)(buffer))->current_position++]; \
                ((mpeg3_slice_buffer_t*)(buffer))->bits_size = 7; \
        } \
}

Definition at line 772 of file mpeg3protos.h.

Referenced by mpeg3_decode_slice(), and mpeg3video_get_macroblock_address().

#define mpeg3slice_flushbits ( buffer,
nbits   ) 


Function Documentation

int64_t mpeg3_absolute_to_program ( mpeg3_demuxer_t demuxer,
int64_t  absolute_byte 
)

int mpeg3_ac3_check ( unsigned char *  header  ) 

Definition at line 29 of file ac3.c.

References a52_syncinfo(), and bitrate.

Referenced by calculate_format().

Here is the call graph for this function:

int mpeg3_ac3_header ( mpeg3_ac3_t audio,
unsigned char *  header 
)

double mpeg3_add_double_gcc ( double  x,
double  y 
)

Definition at line 13 of file workarounds.c.

void mpeg3_append_frame ( mpeg3_vtrack_t vtrack,
int64_t  offset,
int  is_keyframe 
)

void mpeg3_append_samples ( mpeg3_atrack_t atrack,
int64_t  offset 
)

void mpeg3_append_subtitle ( mpeg3_strack_t strack,
mpeg3_subtitle_t subtitle 
)

Definition at line 116 of file mpeg3strack.c.

References mpeg3_strack_t::allocated_subtitles, MAX, memcpy, MPEG3_MAX_SUBTITLES, mpeg3_pop_subtitle(), mpeg3_strack_t::subtitles, and mpeg3_strack_t::total_subtitles.

Referenced by handle_subtitle().

Here is the call graph for this function:

void mpeg3_append_subtitle_offset ( mpeg3_strack_t dst,
int64_t  program_offset 
)

int mpeg3_cache_get_frame ( mpeg3_cache_t ptr,
int64_t  frame_number,
unsigned char **  y,
unsigned char **  u,
unsigned char **  v 
)

void mpeg3_cache_put_frame ( mpeg3_cache_t ptr,
int64_t  frame_number,
unsigned char *  y,
unsigned char *  u,
unsigned char *  v,
int  y_size,
int  u_size,
int  v_size 
)

int64_t mpeg3_cache_usage ( mpeg3_cache_t ptr  ) 

int mpeg3_ceche_has_frame ( mpeg3_cache_t ptr,
int64_t  frame_number 
)

void mpeg3_copy_strack ( mpeg3_strack_t dst,
mpeg3_strack_t src 
)

mpeg3_strack_t* mpeg3_create_strack ( mpeg3_t file,
int  id 
)

Definition at line 64 of file mpeg3strack.c.

References mpeg3_strack_t::id, mpeg3_get_strack_id(), mpeg3_new_strack(), mpeg3_t::strack, and mpeg3_t::total_sstreams.

Referenced by handle_subtitle().

Here is the call graph for this function:

void mpeg3_decode_subtitle ( mpeg3video_t video  ) 

int mpeg3_delete ( mpeg3_t file  ) 

void mpeg3_delete_ac3 ( mpeg3_ac3_t audio  ) 

Definition at line 20 of file ac3.c.

References a52_free(), mpeg3bits_delete_stream(), mpeg3_ac3_t::state, and mpeg3_ac3_t::stream.

Referenced by delete_struct().

Here is the call graph for this function:

int mpeg3_delete_atrack ( mpeg3_t file,
mpeg3_atrack_t atrack 
)

void mpeg3_delete_cache ( mpeg3_cache_t ptr  ) 

int mpeg3_delete_demuxer ( mpeg3_demuxer_t demuxer  ) 

int mpeg3_delete_fs ( mpeg3_fs_t fs  ) 

Definition at line 21 of file mpeg3io.c.

References mpeg3_fs_t::buffer, mpeg3_fs_t::css, and mpeg3_delete_css().

Referenced by mpeg3_check_sig(), mpeg3_delete(), and mpeg3_delete_title().

Here is the call graph for this function:

void mpeg3_delete_index ( mpeg3_index_t index  ) 

Definition at line 49 of file libmpeg3.c.

References mpeg3_index_t::index_channels, and mpeg3_index_t::index_data.

Referenced by mpeg3_delete().

void mpeg3_delete_layer ( mpeg3_layer_t audio  ) 

Definition at line 1546 of file layer3.c.

References mpeg3bits_delete_stream(), and mpeg3_layer_t::stream.

Referenced by delete_codec(), and delete_struct().

Here is the call graph for this function:

void mpeg3_delete_pcm ( mpeg3_pcm_t audio  ) 

Definition at line 15 of file pcm.c.

Referenced by delete_struct().

void mpeg3_delete_strack ( mpeg3_strack_t ptr  ) 

Definition at line 15 of file mpeg3strack.c.

References mpeg3_delete_subtitle(), mpeg3_strack_t::offsets, mpeg3_strack_t::subtitles, and mpeg3_strack_t::total_subtitles.

Referenced by mpeg3_delete().

Here is the call graph for this function:

void mpeg3_delete_subtitle ( mpeg3_subtitle_t subtitle  ) 

int mpeg3_delete_vtrack ( mpeg3_t file,
mpeg3_vtrack_t vtrack 
)

double mpeg3_divide_double_gcc ( double  x,
double  y 
)

Definition at line 18 of file workarounds.c.

int mpeg3_finished_subtitles ( mpeg3_demuxer_t demuxer,
int  id 
)

mpeg3_demuxer_t* mpeg3_get_demuxer ( mpeg3_t file  ) 

int mpeg3_get_file_type ( mpeg3_t file,
mpeg3_t old_file,
int *  toc_atracks,
int *  toc_vtracks 
)

mpeg3_strack_t* mpeg3_get_strack ( mpeg3_t file,
int  number 
)

Definition at line 57 of file mpeg3strack.c.

References mpeg3_t::strack, and mpeg3_t::total_sstreams.

Referenced by handle_subtitle(), and mpeg3_decode_subtitle().

mpeg3_strack_t* mpeg3_get_strack_id ( mpeg3_t file,
int  id 
)

Definition at line 47 of file mpeg3strack.c.

References mpeg3_strack_t::id, mpeg3_t::strack, and mpeg3_t::total_sstreams.

Referenced by mpeg3_create_strack().

mpeg3_subtitle_t* mpeg3_get_subtitle ( mpeg3_strack_t strack  ) 

int mpeg3_init_layer2 ( mpeg3_layer_t audio  ) 

int mpeg3_init_layer3 ( mpeg3_layer_t audio  ) 

int mpeg3_layer_check ( unsigned char *  data  ) 

Definition at line 1363 of file layer3.c.

Referenced by mpeg3_layer_header().

int mpeg3_layer_header ( mpeg3_layer_t audio,
unsigned char *  data 
)

void mpeg3_layer_reset ( mpeg3_layer_t audio  ) 

Definition at line 1346 of file layer3.c.

References mpeg3_layer_t::first_frame, mpeg3_layer_t::mp3_blc, mpeg3_layer_t::mp3_block, and mpeg3audio_reset_synths().

Referenced by mpeg3audio_dolayer3(), and seek().

Here is the call graph for this function:

mpeg3_t* mpeg3_new ( char *  path  ) 

Definition at line 28 of file libmpeg3.c.

References mpeg3_t::cpus, mpeg3_t::demuxer, mpeg3_t::fs, mpeg3_t::index_bytes, mpeg3_new_demuxer(), mpeg3_new_fs(), mpeg3_t::seekable, and mpeg3_t::subtitle_track.

Referenced by mpeg3_open_copy(), and mpeg3_start_toc().

Here is the call graph for this function:

mpeg3_ac3_t* mpeg3_new_ac3 (  ) 

Definition at line 11 of file ac3.c.

References a52_init(), a52_samples(), mpeg3bits_new_stream(), mpeg3_ac3_t::output, mpeg3_ac3_t::state, and mpeg3_ac3_t::stream.

Referenced by mpeg3audio_decode_audio(), and mpeg3audio_new().

Here is the call graph for this function:

mpeg3_atrack_t* mpeg3_new_atrack ( mpeg3_t file,
int  custom_id,
int  is_ac3,
mpeg3_demuxer_t demuxer,
int  number 
)

mpeg3_cache_t* mpeg3_new_cache (  ) 

Definition at line 11 of file mpeg3cache.c.

Referenced by mpeg3_new_vtrack().

void mpeg3_new_cell ( mpeg3_title_t title,
int64_t  program_start,
int64_t  program_end,
int64_t  title_start,
int64_t  title_end,
int  program 
)

mpeg3_css_t* mpeg3_new_css (  ) 

Definition at line 6 of file mpeg3css_fake.c.

Referenced by mpeg3_new_fs().

int mpeg3_new_decode_tables ( mpeg3_layer_t audio  ) 

Definition at line 415 of file tables.c.

References costab, init_layer2(), init_layer3(), M_PI, mpeg3_decwin, mpeg3_intwinbase, and mpeg3_pnts.

Referenced by mpeg3_new_layer().

Here is the call graph for this function:

mpeg3_demuxer_t* mpeg3_new_demuxer ( mpeg3_t file,
int  do_audio,
int  do_video,
int  custom_id 
)

mpeg3_fs_t* mpeg3_new_fs ( char *  path  ) 

Definition at line 10 of file mpeg3io.c.

References mpeg3_fs_t::buffer, mpeg3_fs_t::buffer_position, mpeg3_fs_t::css, MPEG3_IO_SIZE, mpeg3_new_css(), and mpeg3_fs_t::path.

Referenced by mpeg3_check_sig(), mpeg3_new(), and mpeg3_new_title().

Here is the call graph for this function:

mpeg3_index_t* mpeg3_new_index (  ) 

Definition at line 42 of file libmpeg3.c.

References mpeg3_index_t::index_zoom.

Referenced by mpeg3_do_toc(), and mpeg3_read_toc().

mpeg3_layer_t* mpeg3_new_layer (  ) 

mpeg3_pcm_t* mpeg3_new_pcm (  ) 

Definition at line 7 of file pcm.c.

Referenced by mpeg3audio_decode_audio(), and mpeg3audio_new().

mpeg3_strack_t* mpeg3_new_strack ( int  id  ) 

Definition at line 8 of file mpeg3strack.c.

References mpeg3_strack_t::id.

Referenced by copy_subtitles(), mpeg3_create_strack(), and mpeg3_read_toc().

mpeg3_title_t* mpeg3_new_title ( mpeg3_t file,
char *  path 
)

Definition at line 9 of file mpeg3title.c.

References mpeg3_title_t::file, mpeg3_title_t::fs, and mpeg3_new_fs().

Referenced by get_ifo_playlist(), mpeg3_create_title(), mpeg3_read_toc(), mpeg3_start_toc(), mpeg3demux_copy_titles(), and read_titles().

Here is the call graph for this function:

mpeg3_vtrack_t* mpeg3_new_vtrack ( mpeg3_t file,
int  custom_id,
mpeg3_demuxer_t demuxer,
int  number 
)

int mpeg3_next_header (  ) 

int mpeg3_pcm_check ( unsigned char *  header  ) 

Definition at line 21 of file pcm.c.

References MPEG3_PCM_START_CODE.

Referenced by mpeg3_pcm_header().

int mpeg3_pcm_header ( mpeg3_pcm_t audio,
unsigned char *  header 
)

Definition at line 35 of file pcm.c.

References mpeg3_pcm_t::bits, mpeg3_pcm_t::channels, mpeg3_pcm_t::framesize, mpeg3_pcm_check(), and mpeg3_pcm_t::samplerate.

Referenced by read_header().

Here is the call graph for this function:

void mpeg3_pop_all_subtitles ( mpeg3_strack_t strack  ) 

Definition at line 157 of file mpeg3strack.c.

References mpeg3_delete_subtitle(), mpeg3_strack_t::subtitles, and mpeg3_strack_t::total_subtitles.

Referenced by mpeg3_decode_subtitle(), and mpeg3_reset_subtitles().

Here is the call graph for this function:

void mpeg3_pop_subtitle ( mpeg3_strack_t strack,
int  number,
int  delete_it 
)

Definition at line 144 of file mpeg3strack.c.

References mpeg3_delete_subtitle(), mpeg3_strack_t::subtitles, and mpeg3_strack_t::total_subtitles.

Referenced by handle_subtitle(), mpeg3_append_subtitle(), and mpeg3_decode_subtitle().

Here is the call graph for this function:

int mpeg3_read_next_packet ( mpeg3_demuxer_t demuxer  ) 

int mpeg3_read_prev_packet ( mpeg3_demuxer_t demuxer  ) 

int mpeg3_read_toc ( mpeg3_t file,
int *  atracks_return,
int *  vtracks_return 
)

Definition at line 134 of file mpeg3tocutil.c.

References mpeg3_strack_t::allocated_offsets, mpeg3_demuxer_t::astream_table, ATRACK_COUNT, mpeg3_t::audio_eof, mpeg3_title_t::cell_table, mpeg3_title_t::cell_table_allocation, mpeg3_title_t::cell_table_size, mpeg3_t::channel_counts, complete_path(), debug, mpeg3_t::demuxer, mpeg3_title_t::end_byte, fclose(), FILE_INFO, FILE_TYPE_AUDIO, FILE_TYPE_PROGRAM, FILE_TYPE_TRANSPORT, FILE_TYPE_VIDEO, fopen(), fprintf, mpeg3_t::frame_offsets, mpeg3_t::fs, mpeg3_t::have_palette, IFO_PALETTE, mpeg3_index_t::index_channels, mpeg3_index_t::index_data, mpeg3_index_t::index_size, mpeg3_index_t::index_zoom, mpeg3_t::indexes, mpeg3_t::is_audio_stream, mpeg3_t::is_bd, mpeg3_t::is_program_stream, mpeg3_t::is_transport_stream, mpeg3_t::is_video_stream, mpeg3_t::keyframe_numbers, memcpy, mpeg3_calculate_source_date(), MPEG3_INVALID_TOC_VERSION, mpeg3_new_index(), mpeg3_new_strack(), mpeg3_new_title(), MPEG3_STRLEN, MPEG3_TOC_DATE_MISMATCH, MPEG3_TOC_VERSION, mpeg3demux_open_title(), mpeg3io_read_data(), mpeg3io_seek(), mpeg3io_total_bytes, mpeg3_strack_t::offsets, mpeg3_t::palette, mpeg3_fs_t::path, mpeg3_cell_t::program, mpeg3_cell_t::program_end, mpeg3_cell_t::program_start, read_data(), read_int32(), read_int64(), RENDERFARM_FS_PREFIX, mpeg3_t::sample_offsets, mpeg3_t::source_date, mpeg3_title_t::start_byte, mpeg3_t::strack, STRACK_COUNT, STREAM_AUDIO, STREAM_VIDEO, strrchr, mpeg3_cell_t::title_end, TITLE_PATH, mpeg3_cell_t::title_start, mpeg3_demuxer_t::titles, mpeg3_title_t::total_bytes, mpeg3_t::total_frame_offsets, mpeg3_t::total_indexes, mpeg3_t::total_keyframe_numbers, mpeg3_strack_t::total_offsets, mpeg3_t::total_sample_offsets, mpeg3_t::total_samples, mpeg3_t::total_sstreams, mpeg3_demuxer_t::total_titles, mpeg3_t::video_eof, mpeg3_demuxer_t::vstream_table, and VTRACK_COUNT.

Referenced by mpeg3_get_file_type().

Here is the call graph for this function:

int mpeg3_read_yuvframe ( mpeg3_t file,
char *  y_output,
char *  u_output,
char *  v_output,
int  in_x,
int  in_y,
int  in_w,
int  in_h,
int  stream 
)

int mpeg3_read_yuvframe_ptr ( mpeg3_t file,
char **  y_output,
char **  u_output,
char **  v_output,
int  stream 
)

void mpeg3_reset_cache ( mpeg3_cache_t ptr  ) 

Definition at line 34 of file mpeg3cache.c.

References mpeg3_cache_t::total.

Referenced by mpeg3video_seek().

void mpeg3_reset_subtitles ( mpeg3_t file  ) 

Definition at line 189 of file mpeg3strack.c.

References mpeg3_pop_all_subtitles(), mpeg3_t::strack, and mpeg3_t::total_sstreams.

Referenced by mpeg3video_seek().

Here is the call graph for this function:

int mpeg3_rewind_video ( mpeg3video_t video  ) 

Definition at line 192 of file seek.c.

References mpeg3_vtrack_t::frame_offsets, mpeg3bits_seek_byte(), mpeg3video_t::track, and mpeg3video_t::vstream.

Referenced by mpeg3video_new(), and mpeg3video_seek().

Here is the call graph for this function:

int mpeg3_seek_phys ( mpeg3_demuxer_t demuxer  ) 

void mpeg3_shift_audio ( mpeg3audio_t audio,
int  diff 
)

int64_t mpeg3_total_bytes_gcc ( mpeg3_title_t title  ) 

Definition at line 23 of file workarounds.c.

References mpeg3_title_t::total_bytes.

int mpeg3audio_decode_audio ( mpeg3audio_t audio,
float *  output_f,
short *  output_i,
int  channel,
int  len 
)

int mpeg3audio_delete ( mpeg3audio_t audio  ) 

Definition at line 664 of file mpeg3audio.c.

References delete_struct().

Referenced by mpeg3_delete_atrack().

Here is the call graph for this function:

int mpeg3audio_doac3 ( mpeg3_ac3_t audio,
char *  frame,
int  frame_size,
float **  output,
int  render 
)

Definition at line 103 of file ac3.c.

References A52_3F, A52_3F1R, A52_3F2R, a52_block(), A52_CHANNEL_MASK, a52_dynrng(), a52_frame(), A52_LFE, mpeg3_ac3_t::channels, mpeg3_ac3_t::flags, level, NULL, mpeg3_ac3_t::output, and mpeg3_ac3_t::state.

Referenced by read_frame().

Here is the call graph for this function:

int mpeg3audio_dolayer2 ( mpeg3_layer_t audio,
char *  frame,
int  frame_size,
float **  output,
int  render 
)

int mpeg3audio_dolayer3 ( mpeg3_layer_t audio,
char *  frame,
int  frame_size,
float **  output,
int  render 
)

int mpeg3audio_dopcm ( mpeg3_pcm_t audio,
char *  frame,
int  frame_size,
float **  output,
int  render 
)

Definition at line 48 of file pcm.c.

References mpeg3_pcm_t::bits, mpeg3_pcm_t::channels, input, and PCM_HEADERSIZE.

Referenced by read_frame().

mpeg3audio_t* mpeg3audio_new ( mpeg3_t file,
mpeg3_atrack_t track,
int  is_ac3 
)

int mpeg3bits_delete_stream ( mpeg3_bits_t stream  ) 

Definition at line 18 of file bitstream.c.

Referenced by mpeg3_delete_ac3(), mpeg3_delete_layer(), and mpeg3video_delete_struct().

static void mpeg3bits_fill_bits ( mpeg3_bits_t stream,
int  bits 
) [static]

static void mpeg3bits_fill_reverse_bits ( mpeg3_bits_t stream,
int  bits 
) [static]

static unsigned int mpeg3bits_getbit_noptr ( mpeg3_bits_t stream  )  [static]

static unsigned int mpeg3bits_getbits ( mpeg3_bits_t stream,
int  bits 
) [static]

static unsigned int mpeg3bits_getbits_reverse ( mpeg3_bits_t stream,
int  bits 
) [static]

Definition at line 612 of file mpeg3protos.h.

References mpeg3_bits_t::bfr, mpeg3_bits_t::bit_number, and mpeg3bits_fill_reverse_bits().

Referenced by dequantize_sample().

Here is the call graph for this function:

static unsigned int mpeg3bits_getbyte_noptr ( mpeg3_bits_t stream  )  [static]

mpeg3_bits_t* mpeg3bits_new_stream ( mpeg3_t file,
mpeg3_demuxer_t demuxer 
)

int mpeg3bits_open_title ( mpeg3_bits_t stream,
int  title 
)

Definition at line 143 of file bitstream.c.

References mpeg3_bits_t::bfr_size, mpeg3_bits_t::bit_number, mpeg3_bits_t::demuxer, and mpeg3demux_open_title().

Here is the call graph for this function:

void mpeg3bits_reset ( mpeg3_bits_t stream  ) 

int mpeg3bits_seek_byte ( mpeg3_bits_t stream,
int64_t  position 
)

Definition at line 157 of file bitstream.c.

References mpeg3_bits_t::bfr_size, mpeg3_bits_t::bit_number, mpeg3_bits_t::demuxer, and mpeg3demux_seek_byte().

Referenced by mpeg3_rewind_video(), mpeg3video_seek(), and mpeg3video_seek_byte().

Here is the call graph for this function:

static unsigned int mpeg3bits_showbits ( mpeg3_bits_t stream,
int  bits 
) [static]

Definition at line 606 of file mpeg3protos.h.

References mpeg3_bits_t::bfr, mpeg3_bits_t::bit_number, and mpeg3bits_fill_bits().

Here is the call graph for this function:

static unsigned int mpeg3bits_showbits24_noptr ( mpeg3_bits_t stream  )  [static]

Definition at line 580 of file mpeg3protos.h.

References mpeg3_bits_t::bfr, mpeg3_bits_t::bfr_size, mpeg3_bits_t::bit_number, mpeg3_bits_t::demuxer, and mpeg3demux_read_char().

Referenced by mpeg3video_get_macroblocks().

Here is the call graph for this function:

static unsigned int mpeg3bits_showbits32_noptr ( mpeg3_bits_t stream  )  [static]

static unsigned int mpeg3bits_showbits_reverse ( mpeg3_bits_t stream,
int  bits 
) [static]

Definition at line 621 of file mpeg3protos.h.

References mpeg3_bits_t::bfr, mpeg3_bits_t::bit_number, and mpeg3bits_fill_reverse_bits().

Here is the call graph for this function:

int64_t mpeg3bits_tell ( mpeg3_bits_t stream  ) 

Definition at line 168 of file bitstream.c.

References mpeg3_bits_t::demuxer, and mpeg3demux_tell_byte().

Here is the call graph for this function:

void mpeg3demux_append_data ( mpeg3_demuxer_t demuxer,
unsigned char *  data,
int  bytes 
)

double mpeg3demux_audio_pts ( mpeg3_demuxer_t demuxer  ) 

Definition at line 2290 of file mpeg3demux.c.

References mpeg3_demuxer_t::pes_audio_time.

int mpeg3demux_bof ( mpeg3_demuxer_t demuxer  ) 

int mpeg3demux_create_title ( mpeg3_demuxer_t demuxer,
FILE *  toc 
)

Referenced by mpeg3_generate_toc().

int mpeg3demux_eof ( mpeg3_demuxer_t demuxer  ) 

double mpeg3demux_get_time ( mpeg3_demuxer_t demuxer  ) 

Definition at line 2285 of file mpeg3demux.c.

References mpeg3_demuxer_t::time.

Referenced by mpeg3_get_time().

int mpeg3demux_goto_pts ( mpeg3_demuxer_t demuxer,
double  pts 
)

int64_t mpeg3demux_movie_size ( mpeg3_demuxer_t demuxer  ) 

int mpeg3demux_open_title ( mpeg3_demuxer_t demuxer,
int  title_number 
)

static unsigned char mpeg3demux_read_char ( mpeg3_demuxer_t demuxer  )  [static]

unsigned char mpeg3demux_read_char_packet ( mpeg3_demuxer_t demuxer  ) 

int mpeg3demux_read_data ( mpeg3_demuxer_t demuxer,
unsigned char *  output,
int  size 
)