annotate codec-cfg.h @ 3667:ec943f8ec439

add support for priotity <int> in codecs.conf, higher numbers are better
author atmos4
date Sun, 23 Dec 2001 11:58:57 +0000
parents fb9fd7e2dd35
children 7fb817c9060b
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
1 #ifndef __CODEC_CFG_H
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
2 #define __CODEC_CFG_H
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
3
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
4 #define CODECS_MAX_FOURCC 16
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
5 #define CODECS_MAX_OUTFMT 16
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
6
303
828ec81e0d64 codecs.conf support
arpi_esp
parents: 300
diff changeset
7 // Global flags:
328
fc98b6c3a3dc lots of changes again
szabii
parents: 319
diff changeset
8 #define CODECS_FLAG_SEEKABLE (1<<0)
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
9
303
828ec81e0d64 codecs.conf support
arpi_esp
parents: 300
diff changeset
10 // Outfmt flags:
299
3343fb3e4f49 outflags[] reading fixed
arpi_esp
parents: 297
diff changeset
11 #define CODECS_FLAG_FLIP (1<<0)
3343fb3e4f49 outflags[] reading fixed
arpi_esp
parents: 297
diff changeset
12 #define CODECS_FLAG_NOFLIP (1<<1)
3343fb3e4f49 outflags[] reading fixed
arpi_esp
parents: 297
diff changeset
13 #define CODECS_FLAG_YUVHACK (1<<2)
3343fb3e4f49 outflags[] reading fixed
arpi_esp
parents: 297
diff changeset
14
316
589a93489054 status added
szabii
parents: 303
diff changeset
15 #define CODECS_STATUS_NOT_WORKING 0
589a93489054 status added
szabii
parents: 303
diff changeset
16 #define CODECS_STATUS_UNTESTED -1
589a93489054 status added
szabii
parents: 303
diff changeset
17 #define CODECS_STATUS_PROBLEMS 1
589a93489054 status added
szabii
parents: 303
diff changeset
18 #define CODECS_STATUS_WORKING 2
589a93489054 status added
szabii
parents: 303
diff changeset
19
1410
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
20 // Codec family/driver:
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
21 #define AFM_MPEG 1
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
22 #define AFM_PCM 2
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
23 #define AFM_AC3 3
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
24 #define AFM_ACM 4
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
25 #define AFM_ALAW 5
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
26 #define AFM_GSM 6
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
27 #define AFM_DSHOW 7
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
28 #define AFM_DVDPCM 8
1528
a444bd456fcc ac3/spdif patch by German Gomez Garcia <german@piraos.com>
arpi
parents: 1488
diff changeset
29 #define AFM_HWAC3 9
1828
60afe3421c04 OggVorbis support, ALPHA state!
atmos4
parents: 1528
diff changeset
30 #define AFM_VORBIS 10
1929
af7b3e83d47b added ffmpeg audio driver
arpi
parents: 1836
diff changeset
31 #define AFM_FFMPEG 11
2415
58ea110b4036 libmad (ARM) patch by jeroen.dobbelaere@acunia.com
arpi
parents: 2379
diff changeset
32 #define AFM_MAD 12
2422
a06f9c1df28e ima4 added
arpi
parents: 2415
diff changeset
33 #define AFM_IMA4 13
3400
c91d9c4512c5 g72x and a52 added
arpi
parents: 3172
diff changeset
34 #define AFM_A52 14
c91d9c4512c5 g72x and a52 added
arpi
parents: 3172
diff changeset
35 #define AFM_G72X 15
1410
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
36
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
37 #define VFM_MPEG 1
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
38 #define VFM_VFW 2
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
39 #define VFM_ODIVX 3
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
40 #define VFM_DSHOW 4
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
41 #define VFM_FFMPEG 5
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
42 #define VFM_VFWEX 6
eda16e490ae7 using AFM_/VFM_ macros instead of hardcoded constants (idea by al3x)
arpi
parents: 408
diff changeset
43 #define VFM_DIVX4 7
1488
70652cb8c402 raw (uncompressed) video codec
arpi
parents: 1410
diff changeset
44 #define VFM_RAW 8
1948
e0cc7b7290ec native codec 'rle' added
arpi
parents: 1929
diff changeset
45 #define VFM_RLE 9
2379
8a821809659d xanim added
arpi
parents: 2310
diff changeset
46 #define VFM_XANIM 10
2827
b4d46817f050 ms video1 (cram) codecs by Mike Melanson <melanson@pcisys.net>
arpi
parents: 2422
diff changeset
47 #define VFM_MSVIDC 11
3172
bb38b6b072f8 support for FLI image decoding
melanson
parents: 2827
diff changeset
48 #define VFM_FLI 12
3643
fb9fd7e2dd35 native opensourec Cinepak (CVID) codec by im Ferguson <timf@mail.csse.monash.edu.au>
arpi
parents: 3400
diff changeset
49 #define VFM_CINEPAK 13
299
3343fb3e4f49 outflags[] reading fixed
arpi_esp
parents: 297
diff changeset
50
1836
7c1671842ee7 GUID fix
arpi
parents: 1828
diff changeset
51 #ifndef GUID_TYPE
7c1671842ee7 GUID fix
arpi
parents: 1828
diff changeset
52 #define GUID_TYPE
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
53 typedef struct {
300
df3f7a25584c audio format support, realloc() cleanup
arpi_esp
parents: 299
diff changeset
54 unsigned long f1;
df3f7a25584c audio format support, realloc() cleanup
arpi_esp
parents: 299
diff changeset
55 unsigned short f2;
df3f7a25584c audio format support, realloc() cleanup
arpi_esp
parents: 299
diff changeset
56 unsigned short f3;
df3f7a25584c audio format support, realloc() cleanup
arpi_esp
parents: 299
diff changeset
57 unsigned char f4[8];
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
58 } GUID;
1836
7c1671842ee7 GUID fix
arpi
parents: 1828
diff changeset
59 #endif
7c1671842ee7 GUID fix
arpi
parents: 1828
diff changeset
60
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
61
2310
9e059416eea6 libdemuxer...
arpi
parents: 1983
diff changeset
62 typedef struct codecs_st {
316
589a93489054 status added
szabii
parents: 303
diff changeset
63 unsigned int fourcc[CODECS_MAX_FOURCC];
589a93489054 status added
szabii
parents: 303
diff changeset
64 unsigned int fourccmap[CODECS_MAX_FOURCC];
589a93489054 status added
szabii
parents: 303
diff changeset
65 unsigned int outfmt[CODECS_MAX_OUTFMT];
589a93489054 status added
szabii
parents: 303
diff changeset
66 unsigned char outflags[CODECS_MAX_OUTFMT];
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
67 char *name;
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
68 char *info;
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
69 char *comment;
316
589a93489054 status added
szabii
parents: 303
diff changeset
70 char *dll;
589a93489054 status added
szabii
parents: 303
diff changeset
71 GUID guid;
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
72 short driver;
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
73 short flags;
316
589a93489054 status added
szabii
parents: 303
diff changeset
74 short status;
361
3e0c68209600 dunno :)
szabii
parents: 332
diff changeset
75 short cpuflags;
3667
ec943f8ec439 add support for priotity <int> in codecs.conf, higher numbers are better
atmos4
parents: 3643
diff changeset
76 short priority;
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
77 } codecs_t;
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
78
328
fc98b6c3a3dc lots of changes again
szabii
parents: 319
diff changeset
79 codecs_t** parse_codec_cfg(char *cfgfile);
332
a5c6f9d536dd find_codec() modified
szabii
parents: 328
diff changeset
80 codecs_t* find_video_codec(unsigned int fourcc, unsigned int *fourccmap, codecs_t *start);
a5c6f9d536dd find_codec() modified
szabii
parents: 328
diff changeset
81 codecs_t* find_audio_codec(unsigned int fourcc, unsigned int *fourccmap, codecs_t *start);
a5c6f9d536dd find_codec() modified
szabii
parents: 328
diff changeset
82 codecs_t* find_codec(unsigned int fourcc,unsigned int *fourccmap,codecs_t *start,int audioflag);
1983
72f0648df475 -ac help / -vc help
arpi
parents: 1948
diff changeset
83 void list_codecs(int audioflag);
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
84
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
85 #endif