# HG changeset patch # User arpi # Date 1032650583 0 # Node ID 3a22c16fea466c14e42da47e9a70dae95778802a # Parent 02db452ea5c8ec62333933cda58199ab58fcb3b0 - cosmetics, reorder - removed sh_video->image, get_sh_video()/get_sh_audio() - they are unused and confusing diff -r 02db452ea5c8 -r 3a22c16fea46 libmpdemux/stheader.h --- a/libmpdemux/stheader.h Sat Sep 21 22:53:16 2002 +0000 +++ b/libmpdemux/stheader.h Sat Sep 21 23:23:03 2002 +0000 @@ -11,71 +11,70 @@ typedef struct { demux_stream_t *ds; + struct codecs_st *codec; unsigned int format; - struct codecs_st *codec; int inited; + float timer; // value of old a_frame // output format: - float timer; // value of old a_frame + int sample_format; int samplerate; int samplesize; int channels; int o_bps; // == samplerate*samplesize*channels (uncompr. bytes/sec) int i_bps; // == bitrate (compressed bytes/sec) // in buffers: + int audio_in_minsize; char* a_in_buffer; int a_in_buffer_len; int a_in_buffer_size; // out buffers: + int audio_out_minsize; char* a_buffer; int a_buffer_len; int a_buffer_size; - int sample_format; - // win32 codec stuff: + // win32-compatible codec parameters: AVIStreamHeader audio; - WAVEFORMATEX *wf; - int audio_in_minsize; - int audio_out_minsize; - // other codecs: + WAVEFORMATEX* wf; + // codec-specific: void* context; // codec-specific stuff (usually HANDLE or struct pointer) - unsigned char *codecdata; + unsigned char* codecdata; // extra header data passed from demuxer to codec int codecdata_len; } sh_audio_t; typedef struct { demux_stream_t *ds; + struct codecs_st *codec; unsigned int format; - struct codecs_st *codec; int inited; - // output format: - float timer; // value of old v_frame - float fps; - float frametime; // 1/fps - int i_bps; // == bitrate (compressed bytes/sec) - int disp_w,disp_h; // display size (filled by fileformat parser) -// int coded_w,coded_h; // coded size (filled by video codec) - float aspect; + float timer; // value of old v_frame + // frame counters: + float num_frames; // number of frames played + int num_frames_decoded; // number of frames decoded + // output format: (set by demuxer) + float fps; // frames per second (set only if constant fps) + float frametime; // 1/fps + float aspect; // aspect ratio stored in the file (for prescaling) + int i_bps; // == bitrate (compressed bytes/sec) + int disp_w,disp_h; // display size (filled by fileformat parser) + // output driver/filters: (set by libmpcodecs core) unsigned int outfmtidx; -// unsigned int bitrate; - // buffers: - float num_frames; // number of frames played - int num_frames_decoded; // number of frames decoded - mp_image_t *image; - // win32 codec stuff: + void* video_out; // the video_out handle, used for this video stream + void* vfilter; // the video filter chain, used for this video stream + int vf_inited; + // win32-compatible codec parameters: AVIStreamHeader video; - BITMAPINFOHEADER *bih; // in format - void* context; // codec-specific stuff (usually HANDLE or struct pointer) - void* video_out; - void* vfilter; - int vf_inited; + BITMAPINFOHEADER* bih; + // codec-specific: + void* context; // codec-specific stuff (usually HANDLE or struct pointer) } sh_video_t; -sh_audio_t* get_sh_audio(demuxer_t *demuxer,int id); -sh_video_t* get_sh_video(demuxer_t *demuxer,int id); +// demuxer.c: sh_audio_t* new_sh_audio(demuxer_t *demuxer,int id); sh_video_t* new_sh_video(demuxer_t *demuxer,int id); void free_sh_audio(sh_audio_t *sh); void free_sh_video(sh_video_t *sh); +// video.c: int video_read_properties(sh_video_t *sh_video); int video_read_frame(sh_video_t* sh_video,float* frame_time_ptr,unsigned char** start,int force_fps);