OSDN Git Service

stop using trunk directory in rectool
[rec10/rec10-git.git] / tstools / DtsEdit / src / common.h
1 \r
2 #ifndef _COMMON_H_\r
3 \r
4 // common.h\r
5 \r
6 #define _COMMON_H_\r
7 \r
8 #define GF_ISOM_BRAND_MP4V GF_4CC('m','p','4','v')\r
9 #define GF_ISOM_BRAND_XVID GF_4CC('x','v','i','d')\r
10 \r
11 typedef struct {\r
12         char            *p_infile;\r
13         char            *p_outfile;\r
14         char            *p_tcfile;\r
15         int                     i_mode;\r
16         int                     i_tcv;\r
17         BOOL            b_dc;\r
18         int                     i_timescale;\r
19         int                     i_timerate;\r
20         int                     i_delayFrame;\r
21         double          f_scaleFct;\r
22         double          f_mlt;\r
23 } T_EDIT_PARAM;\r
24 \r
25 typedef struct {\r
26         GF_ISOFile      *fp_in;\r
27         GF_ISOFile      *fp_out;\r
28         int                     i_trackCount;\r
29         int                     i_trackNo;\r
30         u32                     ui_4cc;\r
31         u32                     ui_sampleCount;\r
32         int                     i_delayFrame;\r
33         int                     i_initDelay;\r
34         int                     i_org_timescale;\r
35         int                     i_org_timerate;\r
36 } T_MP4_INFO;\r
37 \r
38 typedef struct {\r
39         u64                     DTS;\r
40         u32                     CTS_Offset;\r
41         u64                     CTS;\r
42         u64                     PTS;    // delay\82ð\8aÜ\82Ü\82È\82¢\83s\83N\83`\83\83\95\\8e¦\83^\83C\83~\83\93\83O\r
43         u32                     samples;\r
44 } T_TS_LIST;\r
45 \r
46 int gcd( int a, int b);\r
47 int CompareU64(const u64 *a, const u64 *b);\r
48 int CompareTS_PTS(const T_TS_LIST *a, const T_TS_LIST *b);\r
49 int CompareTS_Sample(const T_TS_LIST *a, const T_TS_LIST *b);\r
50 \r
51 int SearchTrackOf4CC(T_MP4_INFO *mi, u32 *List4CC, int ListCount);\r
52 int readTsFromFile(T_MP4_INFO *mi, T_TS_LIST *ts);\r
53 int getDelayFlame(T_MP4_INFO *mi, T_TS_LIST *ts);\r
54 int getMinimumPTSDiff(T_MP4_INFO *mi, T_TS_LIST *ts);\r
55 int getMaximumPTSDiff(T_MP4_INFO *mi, T_TS_LIST *ts);\r
56 double getAveragePTSDiff(T_MP4_INFO *mi, T_TS_LIST *ts);\r
57 double getAverageFps(T_MP4_INFO *mi, T_TS_LIST *ts);\r
58 double getMaximumFps(T_MP4_INFO *mi, T_TS_LIST *ts);\r
59 \r
60 int readTimeCodeFromFile(T_MP4_INFO *mi, T_TS_LIST *tc, T_EDIT_PARAM *prm);\r
61 int readTimeCodeFromFileV1(T_MP4_INFO *mi, T_TS_LIST *tc, T_EDIT_PARAM *prm);\r
62 \r
63 \r
64 \r
65 #endif //_COMMON_H_\r
66 \r
67 \r