annotate libmpcodecs/vd.h @ 5051:0515832e6eab

users should know what he lose
author nick
date Tue, 12 Mar 2002 07:16:29 +0000
parents 88481d4b9e0e
children a2bd4e930d59
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
1 typedef struct vd_info_s
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
2 {
4988
db591864d642 comments fixed
arpi
parents: 4957
diff changeset
3 /* codec long name ("Autodesk FLI/FLC Animation decoder" */
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
4 const char *name;
4988
db591864d642 comments fixed
arpi
parents: 4957
diff changeset
5 /* short name (same as driver name in codecs.conf) ("dshow") */
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
6 const char *short_name;
4988
db591864d642 comments fixed
arpi
parents: 4957
diff changeset
7 /* codec family: -vfm id */
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
8 const int id;
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
9 /* interface author/maintainer */
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
10 const char *maintainer;
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
11 /* codec author ("Aaron Holtzman <aholtzma@ess.engr.uvic.ca>") */
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
12 const char *author;
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
13 /* any additional comments */
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
14 const char *comment;
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
15 } vd_info_t;
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
16
4988
db591864d642 comments fixed
arpi
parents: 4957
diff changeset
17 /* interface of video decoder drivers */
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
18 typedef struct vd_functions_s
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
19 {
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
20 vd_info_t *info;
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
21 int (*init)(sh_video_t *sh);
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
22 void (*uninit)(sh_video_t *sh);
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
23 int (*control)(sh_video_t *sh,int cmd,void* arg, ...);
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
24 mp_image_t* (*decode)(sh_video_t *sh,void* data,int len,int flags);
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
25 } vd_functions_t;
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
26
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
27 // NULL terminated array of all drivers
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
28 extern vd_functions_t* mpcodecs_vd_drivers[];
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
29
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
30 #define CONTROL_OK 1
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
31 #define CONTROL_TRUE 1
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
32 #define CONTROL_FALSE 0
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
33 #define CONTROL_UNKNOWN -1
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
34 #define CONTROL_ERROR -2
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
35 #define CONTROL_NA -3
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
36
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
37 #define VDCTRL_QUERY_FORMAT 3 /* test for availabilty of a format */
4957
2826b2e5cbd3 new controls added for query/set pp level
arpi
parents: 4883
diff changeset
38 #define VDCTRL_QUERY_MAX_PP_LEVEL 4 /* test for postprocessing support (max level) */
4988
db591864d642 comments fixed
arpi
parents: 4957
diff changeset
39 #define VDCTRL_SET_PP_LEVEL 5 /* set postprocessing level */
5003
88481d4b9e0e divx_quality and equalizer support done
arpi
parents: 4988
diff changeset
40 #define VDCTRL_SET_EQUALIZER 6 /* set color options (brightness,contrast etc) */
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
41
4883
1602b4fed5a1 callbacks added
arpi
parents: 4878
diff changeset
42 // callbacks:
1602b4fed5a1 callbacks added
arpi
parents: 4878
diff changeset
43 int mpcodecs_config_vo(sh_video_t *sh, int w, int h, unsigned int preferred_outfmt);
1602b4fed5a1 callbacks added
arpi
parents: 4878
diff changeset
44 mp_image_t* mpcodecs_get_image(sh_video_t *sh, int mp_imgtype, int mp_imgflag, int w, int h);
1602b4fed5a1 callbacks added
arpi
parents: 4878
diff changeset
45