Add a comment that explains why this header has no multiple inclusion guards.
[mplayer/greg.git] / libmpdemux / yuv4mpeg_intern.h
blobedf447509e350bca22992f7d27761da40087c3b5
1 /*
2 * yuv4mpeg_intern.h: Internal constants for "new" YUV4MPEG streams
4 * Copyright (C) 2001 Andrew Stevens <andrew.stevens@philips.com>
6 * This file is part of the lavtools package (mjpeg.sourceforge.net).
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of version 2 of the GNU General Public License
10 * as published by the Free Software Foundation.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
22 #ifndef YUV4MPEG_INTERN_H
23 #define YUV4MPEG_INTERN_H
26 #define Y4M_MAGIC "YUV4MPEG2"
27 #define Y4M_FRAME_MAGIC "FRAME"
29 #define Y4M_DELIM " " /* single-character(space) separating tagged fields */
31 #define Y4M_LINE_MAX 256 /* max number of characters in a header line
32 (including the '\n', but not the '\0') */
35 /* standard framerate ratios */
36 #define Y4M_FPS_UNKNOWN { 0, 0 }
37 #define Y4M_FPS_NTSC_FILM { 24000, 1001 }
38 #define Y4M_FPS_FILM { 24, 1 }
39 #define Y4M_FPS_PAL { 25, 1 }
40 #define Y4M_FPS_NTSC { 30000, 1001 }
41 #define Y4M_FPS_30 { 30, 1 }
42 #define Y4M_FPS_PAL_FIELD { 50, 1 }
43 #define Y4M_FPS_NTSC_FIELD { 60000, 1001 }
44 #define Y4M_FPS_60 { 60, 1 }
46 /* standard sample/pixel aspect ratios */
47 #define Y4M_SAR_UNKNOWN { 0, 0 }
48 #define Y4M_SAR_SQUARE { 1, 1 }
49 #define Y4M_SAR_NTSC_CCIR601 { 10, 11 }
50 #define Y4M_SAR_NTSC_16_9 { 40, 33 }
51 #define Y4M_SAR_NTSC_SVCD_4_3 { 15, 11 }
52 #define Y4M_SAR_NTSC_SVCD_16_9 { 20, 11 }
53 #define Y4M_SAR_PAL_CCIR601 { 59, 54 }
54 #define Y4M_SAR_PAL_16_9 { 118, 81 }
55 #define Y4M_SAR_PAL_SVCD_4_3 { 59, 36 }
56 #define Y4M_SAR_PAL_SVCD_16_9 { 59, 27 }
58 #define Y4M_SAR_MPEG1_1 Y4M_SAR_SQUARE
59 #define Y4M_SAR_MPEG1_2 { 10000, 6735 }
60 #define Y4M_SAR_MPEG1_3 { 10000, 7031 } /* Anamorphic 16:9 PAL */
61 #define Y4M_SAR_MPEG1_4 { 10000, 7615 }
62 #define Y4M_SAR_MPEG1_5 { 10000, 8055 }
63 #define Y4M_SAR_MPEG1_6 { 10000, 8437 } /* Anamorphic 16:9 NTSC */
64 #define Y4M_SAR_MPEG1_7 { 10000, 8935 }
65 #define Y4M_SAR_MPEG1_8 { 10000, 9375 } /* PAL/SECAM 4:3 */
66 #define Y4M_SAR_MPEG1_9 { 10000, 9815 }
67 #define Y4M_SAR_MPEG1_10 { 10000, 10255 }
68 #define Y4M_SAR_MPEG1_11 { 10000, 10695 }
69 #define Y4M_SAR_MPEG1_12 { 10000, 11250 } /* NTSC 4:3 */
70 #define Y4M_SAR_MPEG1_13 { 10000, 11575 }
71 #define Y4M_SAR_MPEG1_14 { 10000, 12015 }
73 #define Y4M_DAR_MPEG2_1 { 1, 1}
74 #define Y4M_DAR_MPEG2_2 { 4, 3 }
75 #define Y4M_DAR_MPEG2_3 { 16, 9 }
76 #define Y4M_DAR_MPEG2_4 { 221, 100 }
78 #endif /* YUV4MPEG_INTERN_H */