Mercurial > mplayer.hg
annotate codec-cfg.h @ 36708:9274efe53180
Improve language information on audio and subtitle streams.
Extend the language table to transform ISO 639-2 / ISO 639-5
codes into a language name as well, and extend GetLanguage()
to be flexible enough to scan for all sorts of language codes.
author | ib |
---|---|
date | Fri, 07 Feb 2014 19:49:56 +0000 |
parents | 6055467828a4 |
children | 86ba78d8137c |
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 |
34924 | 23 #define CODECS_MAX_OUTFMT 32 |
31077 | 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) | |
35245 | 29 #define CODECS_FLAG_DUMMY (1<<2) |
297 | 30 |
303 | 31 // Outfmt flags: |
31077 | 32 #define CODECS_FLAG_FLIP (1<<0) |
33 #define CODECS_FLAG_NOFLIP (1<<1) | |
34 #define CODECS_FLAG_YUVHACK (1<<2) | |
35 #define CODECS_FLAG_QUERY (1<<3) | |
36 #define CODECS_FLAG_STATIC (1<<4) | |
299 | 37 |
31077 | 38 #define CODECS_STATUS__MIN 0 |
39 #define CODECS_STATUS_NOT_WORKING -1 | |
40 #define CODECS_STATUS_PROBLEMS 0 | |
41 #define CODECS_STATUS_WORKING 1 | |
42 #define CODECS_STATUS_UNTESTED 2 | |
43 #define CODECS_STATUS__MAX 2 | |
316 | 44 |
299 | 45 |
31400
f6864e52d6be
Move codecs_file extern variable declaration to codec-cfg.h.
diego
parents:
31077
diff
changeset
|
46 extern char *codecs_file; |
f6864e52d6be
Move codecs_file extern variable declaration to codec-cfg.h.
diego
parents:
31077
diff
changeset
|
47 |
f6864e52d6be
Move codecs_file extern variable declaration to codec-cfg.h.
diego
parents:
31077
diff
changeset
|
48 |
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
|
49 #if !defined(GUID_TYPE) && !defined(GUID_DEFINED) |
31077 | 50 #define GUID_TYPE 1 |
13591 | 51 #define GUID_DEFINED 1 |
297 | 52 typedef struct { |
31077 | 53 unsigned long f1; |
54 unsigned short f2; | |
55 unsigned short f3; | |
56 unsigned char f4[8]; | |
297 | 57 } GUID; |
1836 | 58 #endif |
59 | |
297 | 60 |
30710
c6524b71a9da
cosmetics: Rename "codecs_st" struct to just plain "codecs".
diego
parents:
30429
diff
changeset
|
61 typedef struct codecs { |
31077 | 62 unsigned int fourcc[CODECS_MAX_FOURCC]; |
63 unsigned int fourccmap[CODECS_MAX_FOURCC]; | |
64 unsigned int outfmt[CODECS_MAX_OUTFMT]; | |
65 unsigned char outflags[CODECS_MAX_OUTFMT]; | |
66 unsigned int infmt[CODECS_MAX_INFMT]; | |
67 unsigned char inflags[CODECS_MAX_INFMT]; | |
68 char *name; | |
69 char *info; | |
70 char *comment; | |
71 char *dll; | |
72 char* drv; | |
73 GUID guid; | |
74 // short driver; | |
75 short flags; | |
76 short status; | |
77 short cpuflags; | |
297 | 78 } codecs_t; |
79 | |
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
|
80 int parse_codec_cfg(const char *cfgfile); |
16321
efbfac98cab1
Allow forcing of demuxers and codecs by prepending '+'
reimar
parents:
16132
diff
changeset
|
81 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
|
82 codecs_t *start, int force); |
efbfac98cab1
Allow forcing of demuxers and codecs by prepending '+'
reimar
parents:
16132
diff
changeset
|
83 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
|
84 codecs_t *start, int force); |
efbfac98cab1
Allow forcing of demuxers and codecs by prepending '+'
reimar
parents:
16132
diff
changeset
|
85 codecs_t* find_codec(unsigned int fourcc, unsigned int *fourccmap, |
efbfac98cab1
Allow forcing of demuxers and codecs by prepending '+'
reimar
parents:
16132
diff
changeset
|
86 codecs_t *start, int audioflag, int force); |
1983 | 87 void list_codecs(int audioflag); |
17566
f580a7755ac5
Patch by Stefan Huehner / stefan % huehner ! org \
rathann
parents:
16321
diff
changeset
|
88 void codecs_uninit_free(void); |
297 | 89 |
25661
293aeec83153
Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with
reimar
parents:
23870
diff
changeset
|
90 typedef char ** stringset_t; |
293aeec83153
Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with
reimar
parents:
23870
diff
changeset
|
91 void stringset_init(stringset_t *set); |
293aeec83153
Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with
reimar
parents:
23870
diff
changeset
|
92 void stringset_free(stringset_t *set); |
293aeec83153
Replace the persistent CODECS_FLAG_SELECTED by a local "stringset" with
reimar
parents:
23870
diff
changeset
|
93 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
|
94 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
|
95 |
26029 | 96 #endif /* MPLAYER_CODEC_CFG_H */ |