annotate codec-cfg.h @ 12337:6f1b4c989914

soft skipping for mencoder. rather than skipping decoding/filtering frames that will be skipped, mencoded tells vf_softskip (if present) that it should drop the next frame. this allows filters that need to see every input frame (inverse telecine, denoise3d, ...) to see skipped frames before they get dropped. in principle, a smarter softskip filter could be written that would buffer frames and choose to drop the one with least change, rather than strictly dropping the next one.
author rfelker
date Wed, 28 Apr 2004 04:29:17 +0000
parents 3a246ecd835f
children 133e0ebde74d
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
10467
3a246ecd835f bumped version number
alex
parents: 9034
diff changeset
4 #define CODEC_CFG_MIN 20030724
6200
e604be87613d codecs.conf versioning - patch by Joey Parrish <joey@yunamusic.com>
arpi
parents: 6103
diff changeset
5
4216
ffb8428f39e2 fix for Xwid (exceed 16 fourcc)
nexus
parents: 3969
diff changeset
6 #define CODECS_MAX_FOURCC 32
4675
d8a577a52437 added informat support (for encoding)
alex
parents: 4656
diff changeset
7 #define CODECS_MAX_OUTFMT 16
d8a577a52437 added informat support (for encoding)
alex
parents: 4656
diff changeset
8 #define CODECS_MAX_INFMT 16
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 // Global flags:
328
fc98b6c3a3dc lots of changes again
szabii
parents: 319
diff changeset
11 #define CODECS_FLAG_SEEKABLE (1<<0)
6565
1075fe5fc8c3 new global codec flag: align16
arpi
parents: 6561
diff changeset
12 #define CODECS_FLAG_ALIGN16 (1<<1)
5325
9c326f199060 tagging selected codec to avoid trying the same codec several times
arpi
parents: 5263
diff changeset
13 #define CODECS_FLAG_SELECTED (1<<15) /* for internal use */
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
14
303
828ec81e0d64 codecs.conf support
arpi_esp
parents: 300
diff changeset
15 // Outfmt flags:
299
3343fb3e4f49 outflags[] reading fixed
arpi_esp
parents: 297
diff changeset
16 #define CODECS_FLAG_FLIP (1<<0)
3343fb3e4f49 outflags[] reading fixed
arpi_esp
parents: 297
diff changeset
17 #define CODECS_FLAG_NOFLIP (1<<1)
3343fb3e4f49 outflags[] reading fixed
arpi_esp
parents: 297
diff changeset
18 #define CODECS_FLAG_YUVHACK (1<<2)
5249
eafaa705a354 query flag added
arpi
parents: 5235
diff changeset
19 #define CODECS_FLAG_QUERY (1<<3)
6103
595743379480 'static' outfmt-flag added
arpi
parents: 5478
diff changeset
20 #define CODECS_FLAG_STATIC (1<<4)
299
3343fb3e4f49 outflags[] reading fixed
arpi_esp
parents: 297
diff changeset
21
5177
fc5f42c4d088 status numbers changed to fit our detection order
arpi
parents: 5029
diff changeset
22 #define CODECS_STATUS__MIN 0
fc5f42c4d088 status numbers changed to fit our detection order
arpi
parents: 5029
diff changeset
23 #define CODECS_STATUS_NOT_WORKING -1
fc5f42c4d088 status numbers changed to fit our detection order
arpi
parents: 5029
diff changeset
24 #define CODECS_STATUS_PROBLEMS 0
fc5f42c4d088 status numbers changed to fit our detection order
arpi
parents: 5029
diff changeset
25 #define CODECS_STATUS_WORKING 1
fc5f42c4d088 status numbers changed to fit our detection order
arpi
parents: 5029
diff changeset
26 #define CODECS_STATUS_UNTESTED 2
fc5f42c4d088 status numbers changed to fit our detection order
arpi
parents: 5029
diff changeset
27 #define CODECS_STATUS__MAX 2
316
589a93489054 status added
szabii
parents: 303
diff changeset
28
299
3343fb3e4f49 outflags[] reading fixed
arpi_esp
parents: 297
diff changeset
29
1836
7c1671842ee7 GUID fix
arpi
parents: 1828
diff changeset
30 #ifndef GUID_TYPE
7c1671842ee7 GUID fix
arpi
parents: 1828
diff changeset
31 #define GUID_TYPE
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
32 typedef struct {
300
df3f7a25584c audio format support, realloc() cleanup
arpi_esp
parents: 299
diff changeset
33 unsigned long f1;
df3f7a25584c audio format support, realloc() cleanup
arpi_esp
parents: 299
diff changeset
34 unsigned short f2;
df3f7a25584c audio format support, realloc() cleanup
arpi_esp
parents: 299
diff changeset
35 unsigned short f3;
df3f7a25584c audio format support, realloc() cleanup
arpi_esp
parents: 299
diff changeset
36 unsigned char f4[8];
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
37 } GUID;
1836
7c1671842ee7 GUID fix
arpi
parents: 1828
diff changeset
38 #endif
7c1671842ee7 GUID fix
arpi
parents: 1828
diff changeset
39
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
40
2310
9e059416eea6 libdemuxer...
arpi
parents: 1983
diff changeset
41 typedef struct codecs_st {
316
589a93489054 status added
szabii
parents: 303
diff changeset
42 unsigned int fourcc[CODECS_MAX_FOURCC];
589a93489054 status added
szabii
parents: 303
diff changeset
43 unsigned int fourccmap[CODECS_MAX_FOURCC];
589a93489054 status added
szabii
parents: 303
diff changeset
44 unsigned int outfmt[CODECS_MAX_OUTFMT];
589a93489054 status added
szabii
parents: 303
diff changeset
45 unsigned char outflags[CODECS_MAX_OUTFMT];
4675
d8a577a52437 added informat support (for encoding)
alex
parents: 4656
diff changeset
46 unsigned int infmt[CODECS_MAX_INFMT];
d8a577a52437 added informat support (for encoding)
alex
parents: 4656
diff changeset
47 unsigned char inflags[CODECS_MAX_INFMT];
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
48 char *name;
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
49 char *info;
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
50 char *comment;
316
589a93489054 status added
szabii
parents: 303
diff changeset
51 char *dll;
7180
28677d779205 -afm/-vfm migration from ID (int) to NAME (string) - simplifies code and makes dlopen()'ing possible
arpi
parents: 6935
diff changeset
52 char* drv;
316
589a93489054 status added
szabii
parents: 303
diff changeset
53 GUID guid;
7180
28677d779205 -afm/-vfm migration from ID (int) to NAME (string) - simplifies code and makes dlopen()'ing possible
arpi
parents: 6935
diff changeset
54 // short driver;
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
55 short flags;
316
589a93489054 status added
szabii
parents: 303
diff changeset
56 short status;
361
3e0c68209600 dunno :)
szabii
parents: 332
diff changeset
57 short cpuflags;
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
58 } codecs_t;
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
59
3798
d1e3ad5bcd8f fixed few segfaults, make parse_codec_cfg() return int
iive
parents: 3787
diff changeset
60 int parse_codec_cfg(char *cfgfile);
332
a5c6f9d536dd find_codec() modified
szabii
parents: 328
diff changeset
61 codecs_t* find_video_codec(unsigned int fourcc, unsigned int *fourccmap, codecs_t *start);
a5c6f9d536dd find_codec() modified
szabii
parents: 328
diff changeset
62 codecs_t* find_audio_codec(unsigned int fourcc, unsigned int *fourccmap, codecs_t *start);
a5c6f9d536dd find_codec() modified
szabii
parents: 328
diff changeset
63 codecs_t* find_codec(unsigned int fourcc,unsigned int *fourccmap,codecs_t *start,int audioflag);
7505
3a2685099095 new func: select_codec() - disables codec by name
arpi
parents: 7357
diff changeset
64 void select_codec(char* codecname,int audioflag);
1983
72f0648df475 -ac help / -vc help
arpi
parents: 1948
diff changeset
65 void list_codecs(int audioflag);
5326
0b024f661dd0 use codec selection
arpi
parents: 5325
diff changeset
66 void codecs_reset_selection(int audioflag);
297
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
67
9b00ddddc0b2 imported codec-cfg, small fixes
arpi_esp
parents:
diff changeset
68 #endif