annotate libmpcodecs/vd.h @ 7946:f483ab704252

postprocessing cleanup: remove opendivx #ifdefs remove rk1 filter remove unused / obsolete stuff add -1,4,2,4,-1 deinterlacing filter (ffmpeg uses that) threadsafe / no more non-const globals some optimizations different strides for Y,U,V possible remove ebx usage (someone really should fix gcc, this is really lame) change the dering filter slightly (tell me if its worse for any files)
author michael
date Mon, 28 Oct 2002 19:31:04 +0000
parents 5e56ce70b551
children efb37725d616
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5323
a2bd4e930d59 common stuff moved to mpc_info.h
arpi
parents: 5003
diff changeset
1
7471
5e56ce70b551 wine headers cleanup
arpi
parents: 7220
diff changeset
2 #include "mp_image.h"
5323
a2bd4e930d59 common stuff moved to mpc_info.h
arpi
parents: 5003
diff changeset
3 #include "mpc_info.h"
a2bd4e930d59 common stuff moved to mpc_info.h
arpi
parents: 5003
diff changeset
4 typedef mp_codec_info_t vd_info_t;
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
5
4988
db591864d642 comments fixed
arpi
parents: 4957
diff changeset
6 /* interface of video decoder drivers */
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
7 typedef struct vd_functions_s
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
8 {
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
9 vd_info_t *info;
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
10 int (*init)(sh_video_t *sh);
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
11 void (*uninit)(sh_video_t *sh);
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
12 int (*control)(sh_video_t *sh,int cmd,void* arg, ...);
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
13 mp_image_t* (*decode)(sh_video_t *sh,void* data,int len,int flags);
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
14 } vd_functions_t;
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
15
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
16 // NULL terminated array of all drivers
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
17 extern vd_functions_t* mpcodecs_vd_drivers[];
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
18
5483
d2fbd113008e global var for option -slices
arpi
parents: 5323
diff changeset
19 extern int vd_use_slices;
d2fbd113008e global var for option -slices
arpi
parents: 5323
diff changeset
20
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
21 #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
22 #define VDCTRL_QUERY_MAX_PP_LEVEL 4 /* test for postprocessing support (max level) */
4988
db591864d642 comments fixed
arpi
parents: 4957
diff changeset
23 #define VDCTRL_SET_PP_LEVEL 5 /* set postprocessing level */
5003
88481d4b9e0e divx_quality and equalizer support done
arpi
parents: 4988
diff changeset
24 #define VDCTRL_SET_EQUALIZER 6 /* set color options (brightness,contrast etc) */
6780
5bf3ed8a17c4 equalizer reworked
alex
parents: 6709
diff changeset
25 #define VDCTRL_GET_EQUALIZER 7 /* get color options (brightness,contrast etc) */
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
26
4883
1602b4fed5a1 callbacks added
arpi
parents: 4878
diff changeset
27 // callbacks:
1602b4fed5a1 callbacks added
arpi
parents: 4878
diff changeset
28 int mpcodecs_config_vo(sh_video_t *sh, int w, int h, unsigned int preferred_outfmt);
1602b4fed5a1 callbacks added
arpi
parents: 4878
diff changeset
29 mp_image_t* mpcodecs_get_image(sh_video_t *sh, int mp_imgtype, int mp_imgflag, int w, int h);
7220
e3ecccc7e505 warning fixes by Dominik Mierzejewski <dominik@rangers.eu.org>
arpi
parents: 6780
diff changeset
30 void mpcodecs_draw_slice(sh_video_t *sh, unsigned char** src, int* stride, int w,int h, int x, int y);
4883
1602b4fed5a1 callbacks added
arpi
parents: 4878
diff changeset
31
6708
8058078f1248 support for external pp by divx4. some fixes/cosmetics?
alex
parents: 5483
diff changeset
32 #define VDFLAGS_DROPFRAME 3