hvirtual/libmpeg3/libmpeg3.h File Reference

#include "mpeg3private.h"

Include dependency graph for libmpeg3.h:

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

Go to the source code of this file.

Defines

#define MPEG3_RGB565   2
#define MPEG3_BGR888   0
#define MPEG3_BGRA8888   1
#define MPEG3_RGB888   3
#define MPEG3_RGBA8888   4
#define MPEG3_RGBA16161616   5
#define MPEG3_601_RGB565   11
#define MPEG3_601_BGR888   7
#define MPEG3_601_BGRA8888   8
#define MPEG3_601_RGB888   9
#define MPEG3_601_RGBA8888   10
#define MPEG3_YUV420P   12
#define MPEG3_YUV422P   13
#define MPEG3_UNDEFINED_ERROR   1
#define MPEG3_INVALID_TOC_VERSION   2
#define MPEG3_TOC_DATE_MISMATCH   3

Functions

int mpeg3_major ()
int mpeg3_minor ()
int mpeg3_release ()
int mpeg3_check_sig (char *path)
mpeg3_tmpeg3_open (char *path, int *error_return)
mpeg3_tmpeg3_open_copy (char *path, mpeg3_t *old_file, int *error_return)
int mpeg3_close (mpeg3_t *file)
int mpeg3_set_cpus (mpeg3_t *file, int cpus)
int mpeg3_has_audio (mpeg3_t *file)
int mpeg3_total_astreams (mpeg3_t *file)
int mpeg3_audio_channels (mpeg3_t *file, int stream)
int mpeg3_sample_rate (mpeg3_t *file, int stream)
char * mpeg3_audio_format (mpeg3_t *file, int stream)
long mpeg3_audio_samples (mpeg3_t *file, int stream)
int mpeg3_set_sample (mpeg3_t *file, long sample, int stream)
long mpeg3_get_sample (mpeg3_t *file, int stream)
int mpeg3_read_audio (mpeg3_t *file, float *output_f, short *output_i, int channel, long samples, int stream)
int mpeg3_reread_audio (mpeg3_t *file, float *output_f, short *output_i, int channel, long samples, int stream)
int mpeg3_read_audio_chunk (mpeg3_t *file, unsigned char *output, long *size, long max_size, int stream)
int mpeg3_has_video (mpeg3_t *file)
int mpeg3_total_vstreams (mpeg3_t *file)
int mpeg3_video_width (mpeg3_t *file, int stream)
int mpeg3_video_height (mpeg3_t *file, int stream)
float mpeg3_aspect_ratio (mpeg3_t *file, int stream)
double mpeg3_frame_rate (mpeg3_t *file, int stream)
long mpeg3_video_frames (mpeg3_t *file, int stream)
int mpeg3_set_frame (mpeg3_t *file, long frame, int stream)
int mpeg3_skip_frames ()
long mpeg3_get_frame (mpeg3_t *file, int stream)
int64_t mpeg3_get_bytes (mpeg3_t *file)
int mpeg3_seek_byte (mpeg3_t *file, int64_t byte)
int64_t mpeg3_tell_byte (mpeg3_t *file)
int mpeg3_previous_frame (mpeg3_t *file, int stream)
int mpeg3_end_of_audio (mpeg3_t *file, int stream)
int mpeg3_end_of_video (mpeg3_t *file, int stream)
double mpeg3_get_time (mpeg3_t *file)
int mpeg3_read_frame (mpeg3_t *file, 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, int stream)
int mpeg3_colormodel (mpeg3_t *file, int stream)
int mpeg3_set_rowspan (mpeg3_t *file, int bytes, 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 mpeg3_read_yuvframe_ptr (mpeg3_t *file, char **y_output, char **u_output, char **v_output, int stream)
int mpeg3_drop_frames (mpeg3_t *file, long frames, int stream)
int mpeg3_read_video_chunk (mpeg3_t *file, unsigned char *output, long *size, long max_size, int stream)
int mpeg3_total_programs ()
int mpeg3_set_program (int program)
int64_t mpeg3_memory_usage (mpeg3_t *file)
int mpeg3_subtitle_tracks (mpeg3_t *file)
void mpeg3_show_subtitle (mpeg3_t *file, int track)
mpeg3_tmpeg3_start_toc (char *path, char *toc_path, int64_t *total_bytes)
void mpeg3_set_index_bytes (mpeg3_t *file, int64_t bytes)
int mpeg3_do_toc (mpeg3_t *file, int64_t *bytes_processed)
void mpeg3_stop_toc (mpeg3_t *file)
int64_t mpeg3_get_source_date (mpeg3_t *file)
int64_t mpeg3_calculate_source_date (char *path)
int mpeg3_index_tracks (mpeg3_t *file)
int mpeg3_index_channels (mpeg3_t *file, int track)
int mpeg3_index_zoom (mpeg3_t *file)
int mpeg3_index_size (mpeg3_t *file, int track)
float * mpeg3_index_data (mpeg3_t *file, int track, int channel)
int mpeg3_has_toc (mpeg3_t *file)
char * mpeg3_title_path (mpeg3_t *file, int number)


Define Documentation

#define MPEG3_601_BGR888   7

Definition at line 23 of file libmpeg3.h.

Referenced by mpeg3video_ditherframe().

#define MPEG3_601_BGRA8888   8

Definition at line 24 of file libmpeg3.h.

Referenced by mpeg3video_ditherframe().

#define MPEG3_601_RGB565   11

Definition at line 22 of file libmpeg3.h.

Referenced by mpeg3video_ditherframe().

#define MPEG3_601_RGB888   9

Definition at line 25 of file libmpeg3.h.

Referenced by mpeg3video_ditherframe().

#define MPEG3_601_RGBA8888   10

Definition at line 26 of file libmpeg3.h.

Referenced by mpeg3video_ditherframe().

#define MPEG3_BGR888   0

Definition at line 14 of file libmpeg3.h.

Referenced by mpeg3video_ditherframe(), and FileMPEG::read_frame().

#define MPEG3_BGRA8888   1

Definition at line 15 of file libmpeg3.h.

Referenced by mpeg3video_ditherframe(), and FileMPEG::read_frame().

#define MPEG3_INVALID_TOC_VERSION   2

Definition at line 35 of file libmpeg3.h.

Referenced by mpeg3_read_toc(), and FileMPEG::open_file().

#define MPEG3_RGB565   2

Definition at line 13 of file libmpeg3.h.

Referenced by mpeg3video_ditherframe(), and FileMPEG::read_frame().

#define MPEG3_RGB888   3

Definition at line 16 of file libmpeg3.h.

Referenced by mpeg3video_ditherframe(), and FileMPEG::read_frame().

#define MPEG3_RGBA16161616   5

Definition at line 18 of file libmpeg3.h.

Referenced by mpeg3video_ditherframe(), and FileMPEG::read_frame().

#define MPEG3_RGBA8888   4

Definition at line 17 of file libmpeg3.h.

Referenced by mpeg3video_ditherframe(), and FileMPEG::read_frame().

#define MPEG3_TOC_DATE_MISMATCH   3

Definition at line 36 of file libmpeg3.h.

Referenced by mpeg3_read_toc(), and FileMPEG::open_file().

#define MPEG3_UNDEFINED_ERROR   1

Definition at line 34 of file libmpeg3.h.

#define MPEG3_YUV420P   12

Definition at line 29 of file libmpeg3.h.

Referenced by main(), mpeg3video_colormodel(), and FileMPEG::read_frame().

#define MPEG3_YUV422P   13

Definition at line 30 of file libmpeg3.h.

Referenced by main(), mpeg3video_colormodel(), FileMPEG::open_file(), and FileMPEG::read_frame().


Function Documentation

float mpeg3_aspect_ratio ( mpeg3_t file,
int  stream 
)

int mpeg3_audio_channels ( mpeg3_t file,
int  stream 
)

char* mpeg3_audio_format ( mpeg3_t file,
int  stream 
)

Definition at line 623 of file libmpeg3.c.

References mpeg3_t::atrack, AUDIO_AAC, AUDIO_AC3, AUDIO_JESUS, AUDIO_MPEG, AUDIO_PCM, AUDIO_UNKNOWN, and mpeg3_atrack_t::format.

Referenced by main().

long mpeg3_audio_samples ( mpeg3_t file,
int  stream 
)

int64_t mpeg3_calculate_source_date ( char *  path  ) 

Definition at line 1416 of file mpeg3tocutil.c.

Referenced by mpeg3_read_toc(), and mpeg3_start_toc().

int mpeg3_check_sig ( char *  path  ) 

int mpeg3_close ( mpeg3_t file  ) 

Definition at line 551 of file libmpeg3.c.

References mpeg3_delete().

Referenced by FileMPEG::close_file(), FileMPEG::create_index(), FileMPEG::get_info(), main(), mpeg2enc(), and mpeg3_generate_toc().

Here is the call graph for this function:

int mpeg3_colormodel ( mpeg3_t file,
int  stream 
)

Definition at line 845 of file libmpeg3.c.

References mpeg3video_colormodel(), mpeg3_t::total_vstreams, mpeg3_vtrack_t::video, and mpeg3_t::vtrack.

Referenced by main(), FileMPEG::open_file(), and FileMPEG::read_frame().

Here is the call graph for this function:

int mpeg3_do_toc ( mpeg3_t file,
int64_t *  bytes_processed 
)

int mpeg3_drop_frames ( mpeg3_t file,
long  frames,
int  stream 
)

int mpeg3_end_of_audio ( mpeg3_t file,
int  stream 
)

Definition at line 813 of file libmpeg3.c.

References mpeg3_t::atrack, mpeg3_atrack_t::channels, mpeg3_atrack_t::demuxer, and mpeg3demux_eof().

Referenced by main().

Here is the call graph for this function:

int mpeg3_end_of_video ( mpeg3_t file,
int  stream 
)

Definition at line 821 of file libmpeg3.c.

References mpeg3_vtrack_t::demuxer, mpeg3demux_eof(), and mpeg3_t::vtrack.

Referenced by main(), and read_mpeg().

Here is the call graph for this function:

double mpeg3_frame_rate ( mpeg3_t file,
int  stream 
)

int64_t mpeg3_get_bytes ( mpeg3_t file  ) 

Definition at line 768 of file libmpeg3.c.

References mpeg3_t::demuxer, and mpeg3demux_movie_size().

Referenced by FileMPEG::get_info(), and mpeg3_get_time().

Here is the call graph for this function:

long mpeg3_get_frame ( mpeg3_t file,
int  stream 
)

Definition at line 689 of file libmpeg3.c.

References mpeg3_vtrack_t::current_position, mpeg3_t::total_vstreams, and mpeg3_t::vtrack.

Referenced by read_mpeg().

long mpeg3_get_sample ( mpeg3_t file,
int  stream 
)

int64_t mpeg3_get_source_date ( mpeg3_t file  ) 

Definition at line 1411 of file mpeg3tocutil.c.

References mpeg3_t::source_date.

double mpeg3_get_time ( mpeg3_t file  ) 

int mpeg3_has_audio ( mpeg3_t file  ) 

Definition at line 567 of file libmpeg3.c.

References mpeg3_t::total_astreams.

Referenced by main(), and FileMPEG::open_file().

int mpeg3_has_toc ( mpeg3_t file  ) 

Definition at line 1396 of file mpeg3tocutil.c.

References mpeg3_t::frame_offsets, and mpeg3_t::sample_offsets.

Referenced by FileMPEG::create_index().

int mpeg3_has_video ( mpeg3_t file  ) 

Definition at line 640 of file libmpeg3.c.

References mpeg3_t::total_vstreams.

Referenced by main(), and FileMPEG::open_file().

int mpeg3_index_channels ( mpeg3_t file,
int  track 
)

float* mpeg3_index_data ( mpeg3_t file,
int  track,
int  channel 
)

Definition at line 1389 of file mpeg3tocutil.c.

References mpeg3_index_t::index_data, mpeg3_t::indexes, and mpeg3_t::total_indexes.

Referenced by FileMPEG::get_index().

int mpeg3_index_size ( mpeg3_t file,
int  track 
)

Definition at line 1383 of file mpeg3tocutil.c.

References mpeg3_index_t::index_size, mpeg3_t::indexes, and mpeg3_t::total_indexes.

Referenced by FileMPEG::get_index().

int mpeg3_index_tracks ( mpeg3_t file  ) 

Definition at line 1365 of file mpeg3tocutil.c.

References mpeg3_t::total_indexes.

Referenced by FileMPEG::get_index().

int mpeg3_index_zoom ( mpeg3_t file  ) 

Definition at line 1376 of file mpeg3tocutil.c.

References mpeg3_index_t::index_zoom, mpeg3_t::indexes, and mpeg3_t::total_indexes.

Referenced by FileMPEG::get_index().

int mpeg3_major (  ) 

Definition at line 11 of file libmpeg3.c.

References MPEG3_MAJOR.

Referenced by AboutPrefs::create_objects(), and main().

int64_t mpeg3_memory_usage ( mpeg3_t file  ) 

Definition at line 1039 of file libmpeg3.c.

References mpeg3_vtrack_t::frame_cache, mpeg3_cache_usage(), mpeg3_t::total_vstreams, and mpeg3_t::vtrack.

Referenced by FileMPEG::get_memory_usage().

Here is the call graph for this function:

int mpeg3_minor (  ) 

Definition at line 16 of file libmpeg3.c.

References MPEG3_MINOR.

Referenced by AboutPrefs::create_objects(), and main().

mpeg3_t* mpeg3_open ( char *  path,
int *  error_return 
)

Definition at line 546 of file libmpeg3.c.

References mpeg3_open_copy().

Referenced by FileMPEG::create_index(), FileMPEG::get_info(), main(), mpeg3_generate_toc(), FileMPEG::open_file(), and readcmdline().

Here is the call graph for this function:

mpeg3_t* mpeg3_open_copy ( char *  path,
mpeg3_t old_file,
int *  error_return 
)

int mpeg3_previous_frame ( mpeg3_t file,
int  stream 
)

Definition at line 742 of file libmpeg3.c.

References mpeg3_t::last_stream_read, mpeg3_t::last_type_read, mpeg3video_previous_frame(), mpeg3_t::total_vstreams, mpeg3_vtrack_t::video, and mpeg3_t::vtrack.

Here is the call graph for this function:

int mpeg3_read_audio ( mpeg3_t file,
float *  output_f,
short *  output_i,
int  channel,
long  samples,
int  stream 
)

int mpeg3_read_audio_chunk ( mpeg3_t file,
unsigned char *  output,
long *  size,
long  max_size,
int  stream 
)

Definition at line 999 of file libmpeg3.c.

References mpeg3_t::atrack, mpeg3_atrack_t::audio, mpeg3_t::last_stream_read, mpeg3_t::last_type_read, mpeg3audio_read_raw(), and mpeg3_t::total_astreams.

Referenced by main().

Here is the call graph for this function:

int mpeg3_read_frame ( mpeg3_t file,
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,
int  stream 
)

int mpeg3_read_video_chunk ( mpeg3_t file,
unsigned char *  output,
long *  size,
long  max_size,
int  stream 
)

Definition at line 1018 of file libmpeg3.c.

References mpeg3_t::last_stream_read, mpeg3_t::last_type_read, mpeg3video_read_raw(), mpeg3_t::total_vstreams, mpeg3_vtrack_t::video, and mpeg3_t::vtrack.

Referenced by main().

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 
)

Definition at line 899 of file libmpeg3.c.

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

Definition at line 930 of file libmpeg3.c.

int mpeg3_release (  ) 

Definition at line 21 of file libmpeg3.c.

References MPEG3_RELEASE.

Referenced by AboutPrefs::create_objects(), and main().

int mpeg3_reread_audio ( mpeg3_t file,
float *  output_f,
short *  output_i,
int  channel,
long  samples,
int  stream 
)

Definition at line 975 of file libmpeg3.c.

References mpeg3_t::atrack, mpeg3_atrack_t::current_position, mpeg3_t::last_stream_read, mpeg3_t::last_type_read, mpeg3_read_audio(), mpeg3_set_sample(), and mpeg3_t::total_astreams.

Referenced by main().

Here is the call graph for this function:

int mpeg3_sample_rate ( mpeg3_t file,
int  stream 
)

int mpeg3_seek_byte ( mpeg3_t file,
int64_t  byte 
)

int mpeg3_set_cpus ( mpeg3_t file,
int  cpus 
)

Definition at line 558 of file libmpeg3.c.

References mpeg3_t::cpus, mpeg3video_set_cpus(), mpeg3_t::total_vstreams, mpeg3_vtrack_t::video, and mpeg3_t::vtrack.

Referenced by main(), and FileMPEG::open_file().

Here is the call graph for this function:

int mpeg3_set_frame ( mpeg3_t file,
long  frame,
int  stream 
)

Definition at line 697 of file libmpeg3.c.

References mpeg3_vtrack_t::current_position, mpeg3video_seek_frame(), mpeg3_t::total_vstreams, mpeg3_vtrack_t::video, and mpeg3_t::vtrack.

Referenced by FileMPEG::set_video_position().

Here is the call graph for this function:

void mpeg3_set_index_bytes ( mpeg3_t file,
int64_t  bytes 
)

Definition at line 560 of file mpeg3tocutil.c.

References mpeg3_t::index_bytes.

int mpeg3_set_program ( int  program  ) 

int mpeg3_set_rowspan ( mpeg3_t file,
int  bytes,
int  stream 
)

int mpeg3_set_sample ( mpeg3_t file,
long  sample,
int  stream 
)

void mpeg3_show_subtitle ( mpeg3_t file,
int  track 
)

Definition at line 184 of file mpeg3strack.c.

References mpeg3_t::subtitle_track.

Referenced by FileMPEG::open_file().

int mpeg3_skip_frames (  ) 

mpeg3_t* mpeg3_start_toc ( char *  path,
char *  toc_path,
int64_t *  total_bytes 
)

void mpeg3_stop_toc ( mpeg3_t file  ) 

Definition at line 1094 of file mpeg3tocutil.c.

References mpeg3_demuxer_t::astream_table, mpeg3_t::atrack, ATRACK_COUNT, mpeg3_atrack_t::audio_eof, mpeg3_title_t::cell_table, mpeg3_title_t::cell_table_size, mpeg3_atrack_t::channels, mpeg3_atrack_t::current_position, mpeg3_t::demuxer, divide_index(), fclose(), FILE_INFO, FILE_TYPE_AUDIO, FILE_TYPE_PROGRAM, FILE_TYPE_TRANSPORT, FILE_TYPE_VIDEO, fprintf, fputc(), mpeg3_vtrack_t::frame_offsets, mpeg3_title_t::fs, mpeg3_t::fs, fwrite(), mpeg3_strack_t::id, IFO_PALETTE, 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_program_stream, mpeg3_t::is_transport_stream, mpeg3_t::is_video_stream, mpeg3_vtrack_t::keyframe_numbers, mpeg3_append_samples(), mpeg3_delete(), MPEG3_MAX_STREAMS, MPEG3_STRLEN, MPEG3_TOC_VERSION, mpeg3_update_index(), mpeg3_strack_t::offsets, mpeg3_t::palette, mpeg3_fs_t::path, mpeg3_vtrack_t::pid, mpeg3_atrack_t::pid, mpeg3_atrack_t::prev_offset, mpeg3_cell_t::program, mpeg3_cell_t::program_end, mpeg3_cell_t::program_start, PUT_INT32, PUT_INT64, mpeg3_atrack_t::sample_offsets, mpeg3_t::source_date, mpeg3_t::strack, STRACK_COUNT, STREAM_AUDIO, STREAM_VIDEO, mpeg3_cell_t::title_end, TITLE_PATH, mpeg3_cell_t::title_start, mpeg3_demuxer_t::titles, mpeg3_t::toc_fd, mpeg3_t::total_astreams, mpeg3_title_t::total_bytes, mpeg3_vtrack_t::total_frame_offsets, mpeg3_vtrack_t::total_keyframe_numbers, mpeg3_strack_t::total_offsets, mpeg3_atrack_t::total_sample_offsets, mpeg3_t::total_sstreams, mpeg3_demuxer_t::total_titles, mpeg3_t::total_vstreams, mpeg3_vtrack_t::video_eof, mpeg3_demuxer_t::vstream_table, mpeg3_t::vtrack, and VTRACK_COUNT.

Referenced by FileMPEG::create_index(), and main().

Here is the call graph for this function:

int mpeg3_subtitle_tracks ( mpeg3_t file  ) 

Definition at line 179 of file mpeg3strack.c.

References mpeg3_t::total_sstreams.

Referenced by FileMPEG::get_info(), handle_subtitle(), main(), and mpeg3_decode_subtitle().

int64_t mpeg3_tell_byte ( mpeg3_t file  ) 

char* mpeg3_title_path ( mpeg3_t file,
int  number 
)

int mpeg3_total_astreams ( mpeg3_t file  ) 

Definition at line 572 of file libmpeg3.c.

References mpeg3_t::total_astreams.

Referenced by main(), FileMPEG::open_file(), and FileMPEG::to_streamchannel().

int mpeg3_total_programs (  ) 

int mpeg3_total_vstreams ( mpeg3_t file  ) 

Definition at line 645 of file libmpeg3.c.

References mpeg3_t::total_vstreams.

Referenced by main(), and FileMPEG::open_file().

long mpeg3_video_frames ( mpeg3_t file,
int  stream 
)

int mpeg3_video_height ( mpeg3_t file,
int  stream 
)

Definition at line 658 of file libmpeg3.c.

References mpeg3_vtrack_t::height, mpeg3_t::total_vstreams, and mpeg3_t::vtrack.

Referenced by main(), FileMPEG::open_file(), and readcmdline().

int mpeg3_video_width ( mpeg3_t file,
int  stream 
)

Definition at line 650 of file libmpeg3.c.

References mpeg3_t::total_vstreams, mpeg3_t::vtrack, and mpeg3_vtrack_t::width.

Referenced by main(), FileMPEG::open_file(), and readcmdline().


Generated on Mon Apr 28 13:59:06 2008 for Cinelerra by  doxygen 1.5.5