annotate libmpcodecs/vd.h @ 31076:783f8faee539

Put symlinks under revision control instead of generating them during make. This simplifies the build system and should have no practical disadvantage.
author diego
date Mon, 03 May 2010 23:00:58 +0000
parents 3d23e24c5c60
children 85219fe5960c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25553
diff changeset
19 #ifndef MPLAYER_VD_H
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25553
diff changeset
20 #define MPLAYER_VD_H
5323
a2bd4e930d59 common stuff moved to mpc_info.h
arpi
parents: 5003
diff changeset
21
7471
5e56ce70b551 wine headers cleanup
arpi
parents: 7220
diff changeset
22 #include "mp_image.h"
5323
a2bd4e930d59 common stuff moved to mpc_info.h
arpi
parents: 5003
diff changeset
23 #include "mpc_info.h"
26147
41652035483c Add necessary header #includes to fix 'make checkheaders'.
diego
parents: 26029
diff changeset
24 #include "libmpdemux/stheader.h"
41652035483c Add necessary header #includes to fix 'make checkheaders'.
diego
parents: 26029
diff changeset
25
5323
a2bd4e930d59 common stuff moved to mpc_info.h
arpi
parents: 5003
diff changeset
26 typedef mp_codec_info_t vd_info_t;
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
27
4988
db591864d642 comments fixed
arpi
parents: 4957
diff changeset
28 /* interface of video decoder drivers */
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
29 typedef struct vd_functions_s
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
30 {
30517
290e478b07cd Make vd_info_t const for pointer in vd_functions, avoids some warnings about
reimar
parents: 30421
diff changeset
31 const vd_info_t *info;
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
32 int (*init)(sh_video_t *sh);
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
33 void (*uninit)(sh_video_t *sh);
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
34 int (*control)(sh_video_t *sh,int cmd,void* arg, ...);
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
35 mp_image_t* (*decode)(sh_video_t *sh,void* data,int len,int flags);
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
36 } vd_functions_t;
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
37
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
38 // NULL terminated array of all drivers
28826
a72ddec9b027 Add some "const" to mpcodecs_vd_drivers
reimar
parents: 26147
diff changeset
39 extern const vd_functions_t * const mpcodecs_vd_drivers[];
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
40
30653
3d23e24c5c60 Declare externally used variables from vd.c as extern in vd.h.
diego
parents: 30537
diff changeset
41 extern int flip;
3d23e24c5c60 Declare externally used variables from vd.c as extern in vd.h.
diego
parents: 30537
diff changeset
42 extern int fullscreen;
3d23e24c5c60 Declare externally used variables from vd.c as extern in vd.h.
diego
parents: 30537
diff changeset
43 extern int opt_screen_size_x;
3d23e24c5c60 Declare externally used variables from vd.c as extern in vd.h.
diego
parents: 30537
diff changeset
44 extern int opt_screen_size_y;
3d23e24c5c60 Declare externally used variables from vd.c as extern in vd.h.
diego
parents: 30537
diff changeset
45 extern int softzoom;
5483
d2fbd113008e global var for option -slices
arpi
parents: 5323
diff changeset
46 extern int vd_use_slices;
30653
3d23e24c5c60 Declare externally used variables from vd.c as extern in vd.h.
diego
parents: 30537
diff changeset
47 extern int vidmode;
30537
7bebe34b6ad2 Move movie_aspect extern declaration to libmpcodecs/vd.h.
diego
parents: 30517
diff changeset
48 extern float movie_aspect;
30653
3d23e24c5c60 Declare externally used variables from vd.c as extern in vd.h.
diego
parents: 30537
diff changeset
49 extern float screen_size_xy;
5483
d2fbd113008e global var for option -slices
arpi
parents: 5323
diff changeset
50
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
51 #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
52 #define VDCTRL_QUERY_MAX_PP_LEVEL 4 /* test for postprocessing support (max level) */
4988
db591864d642 comments fixed
arpi
parents: 4957
diff changeset
53 #define VDCTRL_SET_PP_LEVEL 5 /* set postprocessing level */
5003
88481d4b9e0e divx_quality and equalizer support done
arpi
parents: 4988
diff changeset
54 #define VDCTRL_SET_EQUALIZER 6 /* set color options (brightness,contrast etc) */
6780
5bf3ed8a17c4 equalizer reworked
alex
parents: 6709
diff changeset
55 #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
56 #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
57 #define VDCTRL_QUERY_UNSEEN_FRAMES 9 /* current decoder lag */
4878
eff8a76e515f libmpcodecs core - initial version
arpi
parents:
diff changeset
58
4883
1602b4fed5a1 callbacks added
arpi
parents: 4878
diff changeset
59 // callbacks:
1602b4fed5a1 callbacks added
arpi
parents: 4878
diff changeset
60 int mpcodecs_config_vo(sh_video_t *sh, int w, int h, unsigned int preferred_outfmt);
1602b4fed5a1 callbacks added
arpi
parents: 4878
diff changeset
61 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
62 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
63
6708
8058078f1248 support for external pp by divx4. some fixes/cosmetics?
alex
parents: 5483
diff changeset
64 #define VDFLAGS_DROPFRAME 3
25553
6ac1ece1f9fe Add multiple inclusion guards to all header files that lack them.
diego
parents: 18917
diff changeset
65
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25553
diff changeset
66 #endif /* MPLAYER_VD_H */