Mercurial > mplayer.hg
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 |
rev | line source |
---|---|
5323 | 1 |
7471 | 2 #include "mp_image.h" |
5323 | 3 #include "mpc_info.h" |
4 typedef mp_codec_info_t vd_info_t; | |
4878 | 5 |
4988 | 6 /* interface of video decoder drivers */ |
4878 | 7 typedef struct vd_functions_s |
8 { | |
9 vd_info_t *info; | |
10 int (*init)(sh_video_t *sh); | |
11 void (*uninit)(sh_video_t *sh); | |
12 int (*control)(sh_video_t *sh,int cmd,void* arg, ...); | |
13 mp_image_t* (*decode)(sh_video_t *sh,void* data,int len,int flags); | |
14 } vd_functions_t; | |
15 | |
16 // NULL terminated array of all drivers | |
17 extern vd_functions_t* mpcodecs_vd_drivers[]; | |
18 | |
5483 | 19 extern int vd_use_slices; |
20 | |
4878 | 21 #define VDCTRL_QUERY_FORMAT 3 /* test for availabilty of a format */ |
4957 | 22 #define VDCTRL_QUERY_MAX_PP_LEVEL 4 /* test for postprocessing support (max level) */ |
4988 | 23 #define VDCTRL_SET_PP_LEVEL 5 /* set postprocessing level */ |
5003 | 24 #define VDCTRL_SET_EQUALIZER 6 /* set color options (brightness,contrast etc) */ |
6780 | 25 #define VDCTRL_GET_EQUALIZER 7 /* get color options (brightness,contrast etc) */ |
4878 | 26 |
4883 | 27 // callbacks: |
28 int mpcodecs_config_vo(sh_video_t *sh, int w, int h, unsigned int preferred_outfmt); | |
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 | 31 |
6708
8058078f1248
support for external pp by divx4. some fixes/cosmetics?
alex
parents:
5483
diff
changeset
|
32 #define VDFLAGS_DROPFRAME 3 |