2 * Copyright (C) <1999> Erik Walthinsen <omega@cse.ogi.edu>
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Library General Public License for more details.
14 * You should have received a copy of the GNU Library General Public
15 * License along with this library; if not, write to the
16 * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
17 * Boston, MA 02110-1301, USA.
20 * Unless otherwise indicated, Source Code is licensed under MIT license.
21 * See further explanation attached in License Statement (distributed in the file
24 * Permission is hereby granted, free of charge, to any person obtaining a copy of
25 * this software and associated documentation files (the "Software"), to deal in
26 * the Software without restriction, including without limitation the rights to
27 * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
28 * of the Software, and to permit persons to whom the Software is furnished to do
29 * so, subject to the following conditions:
31 * The above copyright notice and this permission notice shall be included in all
32 * copies or substantial portions of the Software.
34 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
35 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
36 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
37 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
38 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
39 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
51 #define FOURCC_null 0x0
53 #define FOURCC_2vuy GST_MAKE_FOURCC('2','v','u','y')
54 #define FOURCC_FMP4 GST_MAKE_FOURCC('F','M','P','4')
55 #define FOURCC_H264 GST_MAKE_FOURCC('H','2','6','4')
56 #define FOURCC_H265 GST_MAKE_FOURCC('H','2','6','5')
57 #define FOURCC_MAC3 GST_MAKE_FOURCC('M','A','C','3')
58 #define FOURCC_MAC6 GST_MAKE_FOURCC('M','A','C','6')
59 #define FOURCC_MP4V GST_MAKE_FOURCC('M','P','4','V')
60 #define FOURCC_PICT GST_MAKE_FOURCC('P','I','C','T')
61 #define FOURCC_QDM2 GST_MAKE_FOURCC('Q','D','M','2')
62 #define FOURCC_SVQ3 GST_MAKE_FOURCC('S','V','Q','3')
63 #define FOURCC_VP31 GST_MAKE_FOURCC('V','P','3','1')
64 #define FOURCC_VP80 GST_MAKE_FOURCC('V','P','8','0')
65 #define FOURCC_WRLE GST_MAKE_FOURCC('W','R','L','E')
66 #define FOURCC_XMP_ GST_MAKE_FOURCC('X','M','P','_')
67 #define FOURCC_XVID GST_MAKE_FOURCC('X','V','I','D')
68 #define FOURCC__ART GST_MAKE_FOURCC(0xa9,'A','R','T')
69 #define FOURCC_____ GST_MAKE_FOURCC('-','-','-','-')
70 #define FOURCC___in GST_MAKE_FOURCC(' ',' ','i','n')
71 #define FOURCC___ty GST_MAKE_FOURCC(' ',' ','t','y')
72 #define FOURCC__alb GST_MAKE_FOURCC(0xa9,'a','l','b')
73 #define FOURCC__cpy GST_MAKE_FOURCC(0xa9,'c','p','y')
74 #define FOURCC__day GST_MAKE_FOURCC(0xa9,'d','a','y')
75 #define FOURCC__des GST_MAKE_FOURCC(0xa9,'d','e','s')
76 #define FOURCC__enc GST_MAKE_FOURCC(0xa9,'e','n','c')
77 #define FOURCC__gen GST_MAKE_FOURCC(0xa9, 'g', 'e', 'n')
78 #define FOURCC__grp GST_MAKE_FOURCC(0xa9,'g','r','p')
79 #define FOURCC__inf GST_MAKE_FOURCC(0xa9,'i','n','f')
80 #define FOURCC__lyr GST_MAKE_FOURCC(0xa9,'l','y','r')
81 #define FOURCC__mp3 GST_MAKE_FOURCC('.','m','p','3')
82 #define FOURCC__nam GST_MAKE_FOURCC(0xa9,'n','a','m')
83 #define FOURCC__req GST_MAKE_FOURCC(0xa9,'r','e','q')
84 #define FOURCC__too GST_MAKE_FOURCC(0xa9,'t','o','o')
85 #define FOURCC__wrt GST_MAKE_FOURCC(0xa9,'w','r','t')
86 #define FOURCC_aART GST_MAKE_FOURCC('a','A','R','T')
87 #define FOURCC_ac_3 GST_MAKE_FOURCC('a','c','-','3')
88 #define FOURCC_agsm GST_MAKE_FOURCC('a','g','s','m')
89 #define FOURCC_alac GST_MAKE_FOURCC('a','l','a','c')
90 #define FOURCC_fLaC GST_MAKE_FOURCC('f','L','a','C')
91 #define FOURCC_dfLa GST_MAKE_FOURCC('d','f','L','a')
92 #define FOURCC_alaw GST_MAKE_FOURCC('a','l','a','w')
93 #define FOURCC_alis GST_MAKE_FOURCC('a','l','i','s')
94 #define FOURCC_appl GST_MAKE_FOURCC('a','p','p','l')
95 #define FOURCC_avc1 GST_MAKE_FOURCC('a','v','c','1')
96 #define FOURCC_avc3 GST_MAKE_FOURCC('a','v','c','3')
97 #define FOURCC_avcC GST_MAKE_FOURCC('a','v','c','C')
98 #define FOURCC_c608 GST_MAKE_FOURCC('c','6','0','8')
99 #define FOURCC_c708 GST_MAKE_FOURCC('c','7','0','8')
100 #define FOURCC_ccdp GST_MAKE_FOURCC('c','c','d','p')
101 #define FOURCC_cdat GST_MAKE_FOURCC('c','d','a','t')
102 #define FOURCC_cdt2 GST_MAKE_FOURCC('c','d','t','2')
103 #define FOURCC_clcp GST_MAKE_FOURCC('c','l','c','p')
104 #define FOURCC_clip GST_MAKE_FOURCC('c','l','i','p')
105 #define FOURCC_cmov GST_MAKE_FOURCC('c','m','o','v')
106 #define FOURCC_cmvd GST_MAKE_FOURCC('c','m','v','d')
107 #define FOURCC_co64 GST_MAKE_FOURCC('c','o','6','4')
108 #define FOURCC_covr GST_MAKE_FOURCC('c','o','v','r')
109 #define FOURCC_cpil GST_MAKE_FOURCC('c','p','i','l')
110 #define FOURCC_cprt GST_MAKE_FOURCC('c','p','r','t')
111 #define FOURCC_crgn GST_MAKE_FOURCC('c','r','g','n')
112 #define FOURCC_ctab GST_MAKE_FOURCC('c','t','a','b')
113 #define FOURCC_ctts GST_MAKE_FOURCC('c','t','t','s')
114 #define FOURCC_cslg GST_MAKE_FOURCC('c','s','l','g')
115 #define FOURCC_d263 GST_MAKE_FOURCC('d','2','6','3')
116 #define FOURCC_dac3 GST_MAKE_FOURCC('d','a','c','3')
117 #define FOURCC_damr GST_MAKE_FOURCC('d','a','m','r')
118 #define FOURCC_data GST_MAKE_FOURCC('d','a','t','a')
119 #define FOURCC_dcom GST_MAKE_FOURCC('d','c','o','m')
120 #define FOURCC_desc GST_MAKE_FOURCC('d','e','s','c')
121 #define FOURCC_dhlr GST_MAKE_FOURCC('d','h','l','r')
122 #define FOURCC_dinf GST_MAKE_FOURCC('d','i','n','f')
123 #define FOURCC_disc GST_MAKE_FOURCC('d','i','s','c')
124 #define FOURCC_disk GST_MAKE_FOURCC('d','i','s','k')
125 #define FOURCC_drac GST_MAKE_FOURCC('d','r','a','c')
126 #define FOURCC_dref GST_MAKE_FOURCC('d','r','e','f')
127 #define FOURCC_drmi GST_MAKE_FOURCC('d','r','m','i')
128 #define FOURCC_drms GST_MAKE_FOURCC('d','r','m','s')
129 #define FOURCC_dvcp GST_MAKE_FOURCC('d','v','c','p')
130 #define FOURCC_dvc_ GST_MAKE_FOURCC('d','v','c',' ')
131 #define FOURCC_dv5p GST_MAKE_FOURCC('d','v','5','p')
132 #define FOURCC_dv5n GST_MAKE_FOURCC('d','v','5','n')
133 #define FOURCC_edts GST_MAKE_FOURCC('e','d','t','s')
134 #define FOURCC_elst GST_MAKE_FOURCC('e','l','s','t')
135 #define FOURCC_enda GST_MAKE_FOURCC('e','n','d','a')
136 #define FOURCC_esds GST_MAKE_FOURCC('e','s','d','s')
137 #define FOURCC_fmp4 GST_MAKE_FOURCC('f','m','p','4')
138 #define FOURCC_free GST_MAKE_FOURCC('f','r','e','e')
139 #define FOURCC_frma GST_MAKE_FOURCC('f','r','m','a')
140 #define FOURCC_ftyp GST_MAKE_FOURCC('f','t','y','p')
141 #define FOURCC_ftab GST_MAKE_FOURCC('f','t','a','b')
142 #define FOURCC_gama GST_MAKE_FOURCC('g','a','m','a')
143 #define FOURCC_glbl GST_MAKE_FOURCC('g','l','b','l')
144 #define FOURCC_gmhd GST_MAKE_FOURCC('g','m','h','d')
145 #define FOURCC_gmin GST_MAKE_FOURCC('g','m','i','n')
146 #define FOURCC_gnre GST_MAKE_FOURCC('g','n','r','e')
147 #define FOURCC_h263 GST_MAKE_FOURCC('h','2','6','3')
148 #define FOURCC_hdlr GST_MAKE_FOURCC('h','d','l','r')
149 #define FOURCC_hev1 GST_MAKE_FOURCC('h','e','v','1')
150 #define FOURCC_hint GST_MAKE_FOURCC('h','i','n','t')
151 #define FOURCC_hmhd GST_MAKE_FOURCC('h','m','h','d')
152 #define FOURCC_hndl GST_MAKE_FOURCC('h','n','d','l')
153 #define FOURCC_hnti GST_MAKE_FOURCC('h','n','t','i')
154 #define FOURCC_hvc1 GST_MAKE_FOURCC('h','v','c','1')
155 #define FOURCC_hvcC GST_MAKE_FOURCC('h','v','c','C')
156 #define FOURCC_ilst GST_MAKE_FOURCC('i','l','s','t')
157 #define FOURCC_ima4 GST_MAKE_FOURCC('i','m','a','4')
158 #define FOURCC_imap GST_MAKE_FOURCC('i','m','a','p')
159 #define FOURCC_in24 GST_MAKE_FOURCC('i','n','2','4')
160 #define FOURCC_jp2c GST_MAKE_FOURCC('j','p','2','c')
161 #define FOURCC_jpeg GST_MAKE_FOURCC('j','p','e','g')
162 #define FOURCC_keyw GST_MAKE_FOURCC('k','e','y','w')
163 #define FOURCC_kmat GST_MAKE_FOURCC('k','m','a','t')
164 #define FOURCC_kywd GST_MAKE_FOURCC('k','y','w','d')
165 #define FOURCC_load GST_MAKE_FOURCC('l','o','a','d')
166 #define FOURCC_matt GST_MAKE_FOURCC('m','a','t','t')
167 #define FOURCC_mdat GST_MAKE_FOURCC('m','d','a','t')
168 #define FOURCC_mdhd GST_MAKE_FOURCC('m','d','h','d')
169 #define FOURCC_mdia GST_MAKE_FOURCC('m','d','i','a')
170 #define FOURCC_mdir GST_MAKE_FOURCC('m','d','i','r')
171 #define FOURCC_mean GST_MAKE_FOURCC('m','e','a','n')
172 #define FOURCC_meta GST_MAKE_FOURCC('m','e','t','a')
173 #define FOURCC_mhlr GST_MAKE_FOURCC('m','h','l','r')
174 #define FOURCC_minf GST_MAKE_FOURCC('m','i','n','f')
175 #define FOURCC_moov GST_MAKE_FOURCC('m','o','o','v')
176 #define FOURCC_mp4a GST_MAKE_FOURCC('m','p','4','a')
177 #define FOURCC_mp4s GST_MAKE_FOURCC('m','p','4','s')
178 #define FOURCC_mp4s GST_MAKE_FOURCC('m','p','4','s')
179 #define FOURCC_mp4v GST_MAKE_FOURCC('m','p','4','v')
180 #define FOURCC_name GST_MAKE_FOURCC('n','a','m','e')
181 #define FOURCC_nclc GST_MAKE_FOURCC('n','c','l','c')
182 #define FOURCC_nclx GST_MAKE_FOURCC('n','c','l','x')
183 #define FOURCC_opus GST_MAKE_FOURCC('O','p','u','s')
184 #define FOURCC_dops GST_MAKE_FOURCC('d','O','p','s')
185 #define FOURCC_pasp GST_MAKE_FOURCC('p','a','s','p')
186 #define FOURCC_colr GST_MAKE_FOURCC('c','o','l','r')
187 #define FOURCC_clap GST_MAKE_FOURCC('c','l','a','p')
188 #define FOURCC_tapt GST_MAKE_FOURCC('t','a','p','t')
189 #define FOURCC_clef GST_MAKE_FOURCC('c','l','e','f')
190 #define FOURCC_prof GST_MAKE_FOURCC('p','r','o','f')
191 #define FOURCC_enof GST_MAKE_FOURCC('e','n','o','f')
192 #define FOURCC_fiel GST_MAKE_FOURCC('f','i','e','l')
193 #define FOURCC_pcst GST_MAKE_FOURCC('p','c','s','t')
194 #define FOURCC_pgap GST_MAKE_FOURCC('p','g','a','p')
195 #define FOURCC_png GST_MAKE_FOURCC('p','n','g',' ')
196 #define FOURCC_pnot GST_MAKE_FOURCC('p','n','o','t')
197 #define FOURCC_qt__ GST_MAKE_FOURCC('q','t',' ',' ')
198 #define FOURCC_qtim GST_MAKE_FOURCC('q','t','i','m')
199 #define FOURCC_raw_ GST_MAKE_FOURCC('r','a','w',' ')
200 #define FOURCC_rdrf GST_MAKE_FOURCC('r','d','r','f')
201 #define FOURCC_rle_ GST_MAKE_FOURCC('r','l','e',' ')
202 #define FOURCC_rmda GST_MAKE_FOURCC('r','m','d','a')
203 #define FOURCC_rmdr GST_MAKE_FOURCC('r','m','d','r')
204 #define FOURCC_rmra GST_MAKE_FOURCC('r','m','r','a')
205 #define FOURCC_rmvc GST_MAKE_FOURCC('r','m','v','c')
206 #define FOURCC_rtp_ GST_MAKE_FOURCC('r','t','p',' ')
207 #define FOURCC_rtsp GST_MAKE_FOURCC('r','t','s','p')
208 #define FOURCC_s263 GST_MAKE_FOURCC('s','2','6','3')
209 #define FOURCC_samr GST_MAKE_FOURCC('s','a','m','r')
210 #define FOURCC_sawb GST_MAKE_FOURCC('s','a','w','b')
211 #define FOURCC_sbtl GST_MAKE_FOURCC('s','b','t','l')
212 #define FOURCC_sdp_ GST_MAKE_FOURCC('s','d','p',' ')
213 #define FOURCC_sidx GST_MAKE_FOURCC('s','i','d','x')
214 #define FOURCC_skip GST_MAKE_FOURCC('s','k','i','p')
215 #define FOURCC_smhd GST_MAKE_FOURCC('s','m','h','d')
216 #define FOURCC_soaa GST_MAKE_FOURCC('s','o','a','a')
217 #define FOURCC_soal GST_MAKE_FOURCC('s','o','a','l')
218 #define FOURCC_soar GST_MAKE_FOURCC('s','o','a','r')
219 #define FOURCC_soco GST_MAKE_FOURCC('s','o','c','o')
220 #define FOURCC_sonm GST_MAKE_FOURCC('s','o','n','m')
221 #define FOURCC_sosn GST_MAKE_FOURCC('s','o','s','n')
222 #define FOURCC_soun GST_MAKE_FOURCC('s','o','u','n')
223 #define FOURCC_sowt GST_MAKE_FOURCC('s','o','w','t')
224 #define FOURCC_stbl GST_MAKE_FOURCC('s','t','b','l')
225 #define FOURCC_stco GST_MAKE_FOURCC('s','t','c','o')
226 #define FOURCC_stpp GST_MAKE_FOURCC('s','t','p','p')
227 #define FOURCC_stps GST_MAKE_FOURCC('s','t','p','s')
228 #define FOURCC_strf GST_MAKE_FOURCC('s','t','r','f')
229 #define FOURCC_strm GST_MAKE_FOURCC('s','t','r','m')
230 #define FOURCC_stsc GST_MAKE_FOURCC('s','t','s','c')
231 #define FOURCC_stsd GST_MAKE_FOURCC('s','t','s','d')
232 #define FOURCC_stss GST_MAKE_FOURCC('s','t','s','s')
233 #define FOURCC_stsz GST_MAKE_FOURCC('s','t','s','z')
234 #define FOURCC_stts GST_MAKE_FOURCC('s','t','t','s')
235 #define FOURCC_styp GST_MAKE_FOURCC('s','t','y','p')
236 #define FOURCC_subp GST_MAKE_FOURCC('s','u','b','p')
237 #define FOURCC_subt GST_MAKE_FOURCC('s','u','b','t')
238 #define FOURCC_text GST_MAKE_FOURCC('t','e','x','t')
239 #define FOURCC_tcmi GST_MAKE_FOURCC('t','c','m','i')
240 #define FOURCC_tkhd GST_MAKE_FOURCC('t','k','h','d')
241 #define FOURCC_tmcd GST_MAKE_FOURCC('t','m','c','d')
242 #define FOURCC_tmpo GST_MAKE_FOURCC('t','m','p','o')
243 #define FOURCC_trak GST_MAKE_FOURCC('t','r','a','k')
244 #define FOURCC_tref GST_MAKE_FOURCC('t','r','e','f')
245 #define FOURCC_trkn GST_MAKE_FOURCC('t','r','k','n')
246 #define FOURCC_tven GST_MAKE_FOURCC('t','v','e','n')
247 #define FOURCC_tves GST_MAKE_FOURCC('t','v','e','s')
248 #define FOURCC_tvsh GST_MAKE_FOURCC('t','v','s','h')
249 #define FOURCC_tvsn GST_MAKE_FOURCC('t','v','s','n')
250 #define FOURCC_twos GST_MAKE_FOURCC('t','w','o','s')
251 #define FOURCC_tx3g GST_MAKE_FOURCC('t','x','3','g')
252 #define FOURCC_udta GST_MAKE_FOURCC('u','d','t','a')
253 #define FOURCC_ulaw GST_MAKE_FOURCC('u','l','a','w')
254 #define FOURCC_url_ GST_MAKE_FOURCC('u','r','l',' ')
255 #define FOURCC_uuid GST_MAKE_FOURCC('u','u','i','d')
256 #define FOURCC_v210 GST_MAKE_FOURCC('v','2','1','0')
257 #define FOURCC_vc_1 GST_MAKE_FOURCC('v','c','-','1')
258 #define FOURCC_vide GST_MAKE_FOURCC('v','i','d','e')
259 #define FOURCC_vmhd GST_MAKE_FOURCC('v','m','h','d')
260 #define FOURCC_vp08 GST_MAKE_FOURCC('v','p','0','8')
261 #define FOURCC_vp09 GST_MAKE_FOURCC('v','p','0','9')
262 #define FOURCC_xvid GST_MAKE_FOURCC('x','v','i','d')
263 #define FOURCC_wave GST_MAKE_FOURCC('w','a','v','e')
264 #define FOURCC_wide GST_MAKE_FOURCC('w','i','d','e')
265 #define FOURCC_zlib GST_MAKE_FOURCC('z','l','i','b')
266 #define FOURCC_lpcm GST_MAKE_FOURCC('l','p','c','m')
268 #define FOURCC_cfhd GST_MAKE_FOURCC('C','F','H','D')
269 #define FOURCC_ap4x GST_MAKE_FOURCC('a','p','4','x')
270 #define FOURCC_ap4h GST_MAKE_FOURCC('a','p','4','h')
271 #define FOURCC_apch GST_MAKE_FOURCC('a','p','c','h')
272 #define FOURCC_apcn GST_MAKE_FOURCC('a','p','c','n')
273 #define FOURCC_apco GST_MAKE_FOURCC('a','p','c','o')
274 #define FOURCC_apcs GST_MAKE_FOURCC('a','p','c','s')
275 #define FOURCC_m1v GST_MAKE_FOURCC('m','1','v',' ')
276 #define FOURCC_vivo GST_MAKE_FOURCC('v','i','v','o')
277 #define FOURCC_saiz GST_MAKE_FOURCC('s','a','i','z')
278 #define FOURCC_saio GST_MAKE_FOURCC('s','a','i','o')
280 #define FOURCC_3gg6 GST_MAKE_FOURCC('3','g','g','6')
281 #define FOURCC_3gg7 GST_MAKE_FOURCC('3','g','g','7')
282 #define FOURCC_3gp4 GST_MAKE_FOURCC('3','g','p','4')
283 #define FOURCC_3gp6 GST_MAKE_FOURCC('3','g','p','6')
284 #define FOURCC_3gr6 GST_MAKE_FOURCC('3','g','r','6')
285 #define FOURCC_3g__ GST_MAKE_FOURCC('3','g',0,0)
286 #define FOURCC_isml GST_MAKE_FOURCC('i','s','m','l')
287 #define FOURCC_iso2 GST_MAKE_FOURCC('i','s','o','2')
288 #define FOURCC_isom GST_MAKE_FOURCC('i','s','o','m')
289 #define FOURCC_mp41 GST_MAKE_FOURCC('m','p','4','1')
290 #define FOURCC_mp42 GST_MAKE_FOURCC('m','p','4','2')
291 #define FOURCC_piff GST_MAKE_FOURCC('p','i','f','f')
292 #define FOURCC_titl GST_MAKE_FOURCC('t','i','t','l')
295 #define FOURCC_SEQH GST_MAKE_FOURCC('S','E','Q','H')
296 #define FOURCC_SMI_ GST_MAKE_FOURCC('S','M','I',' ')
298 /* 3gpp asset meta data fourcc */
299 #define FOURCC_albm GST_MAKE_FOURCC('a','l','b','m')
300 #define FOURCC_auth GST_MAKE_FOURCC('a','u','t','h')
301 #define FOURCC_clsf GST_MAKE_FOURCC('c','l','s','f')
302 #define FOURCC_dscp GST_MAKE_FOURCC('d','s','c','p')
303 #define FOURCC_loci GST_MAKE_FOURCC('l','o','c','i')
304 #define FOURCC_perf GST_MAKE_FOURCC('p','e','r','f')
305 #define FOURCC_rtng GST_MAKE_FOURCC('r','t','n','g')
306 #define FOURCC_yrrc GST_MAKE_FOURCC('y','r','r','c')
309 #define FOURCC_ID32 GST_MAKE_FOURCC('I', 'D','3','2')
311 /* ISO Motion JPEG 2000 fourcc */
312 #define FOURCC_cdef GST_MAKE_FOURCC('c','d','e','f')
313 #define FOURCC_cmap GST_MAKE_FOURCC('c','m','a','p')
314 #define FOURCC_ihdr GST_MAKE_FOURCC('i','h','d','r')
315 #define FOURCC_jp2h GST_MAKE_FOURCC('j','p','2','h')
316 #define FOURCC_jp2x GST_MAKE_FOURCC('j','p','2','x')
317 #define FOURCC_mjp2 GST_MAKE_FOURCC('m','j','p','2')
319 /* some buggy hardware's notion of mdhd */
320 #define FOURCC_mhdr GST_MAKE_FOURCC('m','h','d','r')
323 #define FOURCC_btrt GST_MAKE_FOURCC('b','t','r','t')
324 #define FOURCC_mehd GST_MAKE_FOURCC('m','e','h','d')
325 #define FOURCC_mfhd GST_MAKE_FOURCC('m','f','h','d')
326 #define FOURCC_mfra GST_MAKE_FOURCC('m','f','r','a')
327 #define FOURCC_mfro GST_MAKE_FOURCC('m','f','r','o')
328 #define FOURCC_moof GST_MAKE_FOURCC('m','o','o','f')
329 #define FOURCC_mvex GST_MAKE_FOURCC('m','v','e','x')
330 #define FOURCC_mvhd GST_MAKE_FOURCC('m','v','h','d')
331 #define FOURCC_ovc1 GST_MAKE_FOURCC('o','v','c','1')
332 #define FOURCC_owma GST_MAKE_FOURCC('o','w','m','a')
333 #define FOURCC_sdtp GST_MAKE_FOURCC('s','d','t','p')
334 #define FOURCC_tfhd GST_MAKE_FOURCC('t','f','h','d')
335 #define FOURCC_tfra GST_MAKE_FOURCC('t','f','r','a')
336 #define FOURCC_traf GST_MAKE_FOURCC('t','r','a','f')
337 #define FOURCC_trex GST_MAKE_FOURCC('t','r','e','x')
338 #define FOURCC_trun GST_MAKE_FOURCC('t','r','u','n')
339 #define FOURCC_wma_ GST_MAKE_FOURCC('w','m','a',' ')
342 #define FOURCC_tfdt GST_MAKE_FOURCC('t','f','d','t')
345 #define FOURCC_XdxT GST_MAKE_FOURCC('X','d','x','T')
346 #define FOURCC_XiTh GST_MAKE_FOURCC('X','i','T','h')
347 #define FOURCC_tCtC GST_MAKE_FOURCC('t','C','t','C')
348 #define FOURCC_tCtH GST_MAKE_FOURCC('t','C','t','H')
349 #define FOURCC_tCt_ GST_MAKE_FOURCC('t','C','t','#')
352 #define FOURCC__cmt GST_MAKE_FOURCC(0xa9, 'c','m','t')
355 #define FOURCC__mak GST_MAKE_FOURCC(0xa9, 'm','a','k')
356 #define FOURCC__mod GST_MAKE_FOURCC(0xa9, 'm','o','d')
357 #define FOURCC__swr GST_MAKE_FOURCC(0xa9, 's','w','r')
359 /* Chapters reference */
360 #define FOURCC_chap GST_MAKE_FOURCC('c','h','a','p')
362 /* For Microsoft Wave formats embedded in quicktime, the FOURCC is
363 'm', 's', then the 16 bit wave codec id */
364 #define MS_WAVE_FOURCC(codecid) GST_MAKE_FOURCC( \
365 'm', 's', ((codecid)>>8)&0xff, ((codecid)&0xff))
367 /* MPEG Application Format , Stereo Video */
368 #define FOURCC_ss01 GST_MAKE_FOURCC('s','s','0','1')
369 #define FOURCC_ss02 GST_MAKE_FOURCC('s','s','0','2')
370 #define FOURCC_svmi GST_MAKE_FOURCC('s','v','m','i')
371 #define FOURCC_scdi GST_MAKE_FOURCC('s','c','d','i')
373 /* Protected streams */
374 #define FOURCC_encv GST_MAKE_FOURCC('e','n','c','v')
375 #define FOURCC_enca GST_MAKE_FOURCC('e','n','c','a')
376 #define FOURCC_enct GST_MAKE_FOURCC('e','n','c','t')
377 #define FOURCC_encs GST_MAKE_FOURCC('e','n','c','s')
378 #define FOURCC_sinf GST_MAKE_FOURCC('s','i','n','f')
379 #define FOURCC_frma GST_MAKE_FOURCC('f','r','m','a')
380 #define FOURCC_schm GST_MAKE_FOURCC('s','c','h','m')
381 #define FOURCC_schi GST_MAKE_FOURCC('s','c','h','i')
383 /* Common Encryption */
384 #define FOURCC_pssh GST_MAKE_FOURCC('p','s','s','h')
385 #define FOURCC_tenc GST_MAKE_FOURCC('t','e','n','c')
386 #define FOURCC_cenc GST_MAKE_FOURCC('c','e','n','c')
390 #endif /* __FOURCC_H__ */