Mercurial > mplayer.hg
annotate libmpcodecs/vd.h @ 30088:4977e04f3a18
Add support for parsing audio streams (though should be easy to extend to video)
via libavcodec.
Parsing can be done at the demuxer stage (currently disabled) or at the decoder
(ad_ffmpeg, enabled).
Should allow using the libavcodec AAC, DTS, ... decoders independent of container
format.
author | reimar |
---|---|
date | Sun, 27 Dec 2009 15:28:01 +0000 |
parents | a72ddec9b027 |
children | bbb6ebec87a0 |
rev | line source |
---|---|
26029 | 1 #ifndef MPLAYER_VD_H |
2 #define MPLAYER_VD_H | |
5323 | 3 |
7471 | 4 #include "mp_image.h" |
5323 | 5 #include "mpc_info.h" |
26147
41652035483c
Add necessary header #includes to fix 'make checkheaders'.
diego
parents:
26029
diff
changeset
|
6 #include "libmpdemux/stheader.h" |
41652035483c
Add necessary header #includes to fix 'make checkheaders'.
diego
parents:
26029
diff
changeset
|
7 |
5323 | 8 typedef mp_codec_info_t vd_info_t; |
4878 | 9 |
4988 | 10 /* interface of video decoder drivers */ |
4878 | 11 typedef struct vd_functions_s |
12 { | |
13 vd_info_t *info; | |
14 int (*init)(sh_video_t *sh); | |
15 void (*uninit)(sh_video_t *sh); | |
16 int (*control)(sh_video_t *sh,int cmd,void* arg, ...); | |
17 mp_image_t* (*decode)(sh_video_t *sh,void* data,int len,int flags); | |
18 } vd_functions_t; | |
19 | |
20 // NULL terminated array of all drivers | |
28826 | 21 extern const vd_functions_t * const mpcodecs_vd_drivers[]; |
4878 | 22 |
5483 | 23 extern int vd_use_slices; |
24 | |
4878 | 25 #define VDCTRL_QUERY_FORMAT 3 /* test for availabilty of a format */ |
4957 | 26 #define VDCTRL_QUERY_MAX_PP_LEVEL 4 /* test for postprocessing support (max level) */ |
4988 | 27 #define VDCTRL_SET_PP_LEVEL 5 /* set postprocessing level */ |
5003 | 28 #define VDCTRL_SET_EQUALIZER 6 /* set color options (brightness,contrast etc) */ |
6780 | 29 #define VDCTRL_GET_EQUALIZER 7 /* get color options (brightness,contrast etc) */ |
11977
efb37725d616
flushing stuff after seeking (finally we can view MPEG without thouse blocks after seeking with -vc ffmpeg12)
michael
parents:
7471
diff
changeset
|
30 #define VDCTRL_RESYNC_STREAM 8 /* seeking */ |
18917
d9a75b26da6c
Add a new video pts tracking mode, enabled by option -correct-pts.
uau
parents:
11977
diff
changeset
|
31 #define VDCTRL_QUERY_UNSEEN_FRAMES 9 /* current decoder lag */ |
4878 | 32 |
4883 | 33 // callbacks: |
34 int mpcodecs_config_vo(sh_video_t *sh, int w, int h, unsigned int preferred_outfmt); | |
35 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
|
36 void mpcodecs_draw_slice(sh_video_t *sh, unsigned char** src, int* stride, int w,int h, int x, int y); |
4883 | 37 |
6708
8058078f1248
support for external pp by divx4. some fixes/cosmetics?
alex
parents:
5483
diff
changeset
|
38 #define VDFLAGS_DROPFRAME 3 |
25553
6ac1ece1f9fe
Add multiple inclusion guards to all header files that lack them.
diego
parents:
18917
diff
changeset
|
39 |
26029 | 40 #endif /* MPLAYER_VD_H */ |