Mercurial > mplayer.hg
annotate codec-cfg.h @ 32938:29ce708287dd
Reduce item arrays to reasonable size.
The current maximum of items used in skins is 46 (for main), 27 (for bar)
and 15 (for menu), so 64 seems to be a reasonable value.
The symbolic constant will allow to check for out-of-bounds array access later
(which currently isn't performed) and issue an appropriate error message.
author | ib |
---|---|
date | Fri, 04 Mar 2011 13:58:48 +0000 |
parents | 0fd1b3f1fe69 |
children | 6b13e41172e2 |
rev | line source |
---|---|
30429
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
1 /* |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
2 * This file is part of MPlayer. |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
3 * |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
4 * MPlayer is free software; you can redistribute it and/or modify |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
5 * it under the terms of the GNU General Public License as published by |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
6 * the Free Software Foundation; either version 2 of the License, or |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
7 * (at your option) any later version. |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
8 * |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
9 * MPlayer is distributed in the hope that it will be useful, |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
12 * GNU General Public License for more details. |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
13 * |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
14 * You should have received a copy of the GNU General Public License along |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
15 * with MPlayer; if not, write to the Free Software Foundation, Inc., |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
17 */ |
c1a3f1bbba26
Add license header to all top-level files missing them.
diego
parents:
27334
diff
changeset
|
18 |
26029 | 19 #ifndef MPLAYER_CODEC_CFG_H |
20 #define MPLAYER_CODEC_CFG_H | |
297 | 21 |
31077 | 22 #define CODECS_MAX_FOURCC 92 |
23 #define CODECS_MAX_OUTFMT 16 | |
24 #define CODECS_MAX_INFMT 16 | |
297 | 25 |
303 | 26 // Global flags: |
31077 | 27 #define CODECS_FLAG_SEEKABLE (1<<0) |
28 #define CODECS_FLAG_ALIGN16 (1<<1) | |
297 | 29 |
303 | 30 // Outfmt flags: |
31077 | 31 #define CODECS_FLAG_FLIP (1<<0) |
32 #define CODECS_FLAG_NOFLIP (1<<1) | |
33 #define CODECS_FLAG_YUVHACK (1<<2) | |
34 #define CODECS_FLAG_QUERY (1<<3) | |
35 #define CODECS_FLAG_STATIC (1<<4) | |
299 | 36 |
31077 | 37 #define CODECS_STATUS__MIN 0 |
38 #define CODECS_STATUS_NOT_WORKING -1 | |
39 #define CODECS_STATUS_PROBLEMS 0 | |
40 #define CODECS_STATUS_WORKING 1 | |
41 #define CODECS_STATUS_UNTESTED 2 | |
42 #define CODECS_STATUS__MAX 2 | |
316 | 43 |
299 | 44 |
31400
f6864e52d6be
Move codecs_file extern variable declaration to codec-cfg.h.
diego
parents:
31077
diff
changeset
|
45 extern char *codecs_file; |
f6864e52d6be
Move codecs_file extern variable declaration to codec-cfg.h.
diego
parents:
31077
diff
changeset
|
46 |
f6864e52d6be
Move codecs_file extern variable declaration to codec-cfg.h.
diego
parents:
31077
diff
changeset
|
47 |
12358
133e0ebde74d
Make it compile on mingw again. Now it is finally possible to include windows.h in mplayer.c
faust3
parents:
10467
diff
changeset
|
48 #if !defined(GUID_TYPE) && !defined(GUID_DEFINED) |
31077 | 49 #define GUID_TYPE 1 |
13591 | 50 #define GUID_DEFINED 1 |
297 | 51 typedef struct { |
31077 | 52 unsigned long f1; |
53 unsigned short f2; | |
54 unsigned short f3; | |
55 unsigned char f4[8]; | |
297 | 56 } GUID; |
1836 | 57 #endif |
58 | |
297 | 59 |
30710
c6524b71a9da
cosmetics: Rename "codecs_st" struct to just plain "codecs".
diego
parents:
30429
diff
changeset
|
60 typedef struct codecs { |
31077 | 61 unsigned int fourcc[CODECS_MAX_FOURCC]; |
62 unsigned int fourccmap[CODECS_MAX_FOURCC]; | |
63 unsigned int outfmt[CODECS_MAX_OUTFMT]; | |
64 unsigned char outflags[CODECS_MAX_OUTFMT]; | |
65 unsigned int infmt[CODECS_MAX_INFMT]; | |
66 unsigned char inflags[CODECS_MAX_INFMT]; | |
67 char *name; | |
68 char *info; | |
69 char *comment; | |
70 char *dll; | |
71 char* drv; | |
72 GUID guid; | |
73 // short driver; | |
74 short flags; | |
75 short status; | |
76 short cpuflags; | |
297 | 77 } codecs_t; |
78 | |
18980
ed69754aa58d
Marks several string parameters as const when they are not modified in the function, Patch by Stefan Huehner, stefan AT huehner-org
reynaldo
parents:
18581
diff
changeset
|
79 int parse_codec_cfg(const char *cfgfile); |
16321
efbfac98cab1
Allow forcing of demuxers and codecs by prepending '+'
reimar
parents:
16132
diff
changeset
|
80 codecs_t* find_video_codec(unsigned int fourcc, unsigned int *fourccmap, |
efbfac98cab1
Allow forcing of demuxers and codecs by prepending '+'
reimar
parents:
16132
diff
changeset
|
81 codecs_t *start, int force); |
efbfac98cab1
Allow forcing of demuxers and codecs by prepending '+'
reimar
parents:
16132
diff
changeset
|
82 codecs_t* find_audio_codec(unsigned int fourcc, unsigned int *fourccmap, |
efbfac98cab1
Allow forcing of demuxers and codecs by prepending '+'
reimar
parents:
16132
diff
changeset
|
83 codecs_t *start, int force); |
efbfac98cab1
Allow forcing of demuxers and codecs by prepending '+'
reimar
parents:
16132
diff
changeset
|
84 codecs_t* find_codec(unsigned int fourcc, unsigned int *fourccmap, |
efbfac98cab1
Allow forcing of demuxers and codecs by prepending '+'
reimar
parents:
16132
diff
changeset
|
85 codecs_t *start, int audioflag, int force); |
1983 | 86 void list_codecs(int audioflag); |
17566
f580a7755ac5
Patch by Stefan Huehner / stefan % huehner ! org \
rathann
parents:
16321
diff
changeset
|
87 void codecs_uninit_free(void); |
297 | 88 |
25661
293aeec83153
Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with
reimar
parents:
23870
diff
changeset
|
89 typedef char ** stringset_t; |
293aeec83153
Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with
reimar
parents:
23870
diff
changeset
|
90 void stringset_init(stringset_t *set); |
293aeec83153
Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with
reimar
parents:
23870
diff
changeset
|
91 void stringset_free(stringset_t *set); |
293aeec83153
Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with
reimar
parents:
23870
diff
changeset
|
92 void stringset_add(stringset_t *set, const char *str); |
293aeec83153
Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with
reimar
parents:
23870
diff
changeset
|
93 int stringset_test(stringset_t *set, const char *str); |
293aeec83153
Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with
reimar
parents:
23870
diff
changeset
|
94 |
26029 | 95 #endif /* MPLAYER_CODEC_CFG_H */ |