Mercurial > mplayer.hg
annotate libmpcodecs/vd.h @ 34688:82f0b612bb52
sync with en/mplayer.1 rev. 34775
author | jrash |
---|---|
date | Fri, 24 Feb 2012 23:34:55 +0000 |
parents | 6e8f3cbab5f4 |
children |
rev | line source |
---|---|
30421
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
1 /* |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
2 * This file is part of MPlayer. |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
3 * |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
4 * MPlayer is free software; you can redistribute it and/or modify |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
5 * it under the terms of the GNU General Public License as published by |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
6 * the Free Software Foundation; either version 2 of the License, or |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
7 * (at your option) any later version. |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
8 * |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
9 * MPlayer is distributed in the hope that it will be useful, |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
12 * GNU General Public License for more details. |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
13 * |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
14 * You should have received a copy of the GNU General Public License along |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
15 * with MPlayer; if not, write to the Free Software Foundation, Inc., |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
17 */ |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
28826
diff
changeset
|
18 |
26029 | 19 #ifndef MPLAYER_VD_H |
20 #define MPLAYER_VD_H | |
5323 | 21 |
31457
6e8f3cbab5f4
Move video decoder option array extern declarations to vd.h.
diego
parents:
31172
diff
changeset
|
22 #include "m_option.h" |
7471 | 23 #include "mp_image.h" |
5323 | 24 #include "mpc_info.h" |
26147
41652035483c
Add necessary header #includes to fix 'make checkheaders'.
diego
parents:
26029
diff
changeset
|
25 #include "libmpdemux/stheader.h" |
41652035483c
Add necessary header #includes to fix 'make checkheaders'.
diego
parents:
26029
diff
changeset
|
26 |
5323 | 27 typedef mp_codec_info_t vd_info_t; |
4878 | 28 |
4988 | 29 /* interface of video decoder drivers */ |
31172
85219fe5960c
cosmetics: Drop _s suffix from 'struct vd_functions'.
diego
parents:
30653
diff
changeset
|
30 typedef struct vd_functions |
4878 | 31 { |
30517
290e478b07cd
Make vd_info_t const for pointer in vd_functions, avoids some warnings about
reimar
parents:
30421
diff
changeset
|
32 const vd_info_t *info; |
4878 | 33 int (*init)(sh_video_t *sh); |
34 void (*uninit)(sh_video_t *sh); | |
35 int (*control)(sh_video_t *sh,int cmd,void* arg, ...); | |
36 mp_image_t* (*decode)(sh_video_t *sh,void* data,int len,int flags); | |
37 } vd_functions_t; | |
38 | |
39 // NULL terminated array of all drivers | |
28826 | 40 extern const vd_functions_t * const mpcodecs_vd_drivers[]; |
4878 | 41 |
30653
3d23e24c5c60
Declare externally used variables from vd.c as extern in vd.h.
diego
parents:
30537
diff
changeset
|
42 extern int flip; |
3d23e24c5c60
Declare externally used variables from vd.c as extern in vd.h.
diego
parents:
30537
diff
changeset
|
43 extern int fullscreen; |
3d23e24c5c60
Declare externally used variables from vd.c as extern in vd.h.
diego
parents:
30537
diff
changeset
|
44 extern int opt_screen_size_x; |
3d23e24c5c60
Declare externally used variables from vd.c as extern in vd.h.
diego
parents:
30537
diff
changeset
|
45 extern int opt_screen_size_y; |
3d23e24c5c60
Declare externally used variables from vd.c as extern in vd.h.
diego
parents:
30537
diff
changeset
|
46 extern int softzoom; |
5483 | 47 extern int vd_use_slices; |
30653
3d23e24c5c60
Declare externally used variables from vd.c as extern in vd.h.
diego
parents:
30537
diff
changeset
|
48 extern int vidmode; |
30537
7bebe34b6ad2
Move movie_aspect extern declaration to libmpcodecs/vd.h.
diego
parents:
30517
diff
changeset
|
49 extern float movie_aspect; |
30653
3d23e24c5c60
Declare externally used variables from vd.c as extern in vd.h.
diego
parents:
30537
diff
changeset
|
50 extern float screen_size_xy; |
5483 | 51 |
31457
6e8f3cbab5f4
Move video decoder option array extern declarations to vd.h.
diego
parents:
31172
diff
changeset
|
52 extern const m_option_t lavc_decode_opts_conf[]; |
6e8f3cbab5f4
Move video decoder option array extern declarations to vd.h.
diego
parents:
31172
diff
changeset
|
53 extern const m_option_t xvid_dec_opts[]; |
6e8f3cbab5f4
Move video decoder option array extern declarations to vd.h.
diego
parents:
31172
diff
changeset
|
54 |
4878 | 55 #define VDCTRL_QUERY_FORMAT 3 /* test for availabilty of a format */ |
4957 | 56 #define VDCTRL_QUERY_MAX_PP_LEVEL 4 /* test for postprocessing support (max level) */ |
4988 | 57 #define VDCTRL_SET_PP_LEVEL 5 /* set postprocessing level */ |
5003 | 58 #define VDCTRL_SET_EQUALIZER 6 /* set color options (brightness,contrast etc) */ |
6780 | 59 #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
|
60 #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
|
61 #define VDCTRL_QUERY_UNSEEN_FRAMES 9 /* current decoder lag */ |
4878 | 62 |
4883 | 63 // callbacks: |
64 int mpcodecs_config_vo(sh_video_t *sh, int w, int h, unsigned int preferred_outfmt); | |
65 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
|
66 void mpcodecs_draw_slice(sh_video_t *sh, unsigned char** src, int* stride, int w,int h, int x, int y); |
4883 | 67 |
6708
8058078f1248
support for external pp by divx4. some fixes/cosmetics?
alex
parents:
5483
diff
changeset
|
68 #define VDFLAGS_DROPFRAME 3 |
25553
6ac1ece1f9fe
Add multiple inclusion guards to all header files that lack them.
diego
parents:
18917
diff
changeset
|
69 |
26029 | 70 #endif /* MPLAYER_VD_H */ |