/******************************************************************* GOP interface *******************************************************************/ #ifndef GOP_H #define GOP_H #include "mpeg_io.h" #include "timecode.h" #include "sequence_header.h" #include "picture_header.h" typedef struct { size_t offset; int frame; } GOP; typedef struct { MPEG_IO *p; FRAME_PER_SCALE *fps; READ_PICTURE_HEADER_OPTION *pic_opt; } GOP_TC; typedef GOP (* find_gop)(void *, int); typedef struct { void * arg1; find_gop func; } FIND_GOP; #ifdef __cplusplus extern "C" { #endif #ifndef GOP_C extern int next_gop(MPEG_IO *p); extern int read_gop(GOP_TC *in, GOP *out); extern int count_frame(GOP_TC *p); extern GOP gop_tc_find_gop(void *p, int frame); extern int last_gop(MPEG_IO *p); #endif #ifdef __cplusplus } #endif #endif