annotate vidix/vidix.c @ 37107:3c5c93a30fb7

vidix: Replace printf with mp_msg - Make MPlayer more quiet when requested (e.g. when using -really-quiet) - Additionally change some minor capitalization and "bla:" to "[bla]" Patch-by: Arne Bochem >arneb.mp ccan de< Patch-also-OKed-by: Reimar
author al
date Sat, 17 May 2014 01:38:00 +0000
parents 945eab072c9d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
1 /*
23046
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
2 * VIDIX - VIDeo Interface for *niX.
26718
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
3 *
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
4 * This interface is introduced as universal one to MPEG decoder,
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
5 * Back End Scaler (BES) and YUV2RGB hw accelerators.
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
6 *
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
7 * In the future it may be expanded up to capturing and audio things.
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
8 * Main goal of this this interface imlpementation is providing DGA
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
9 * everywhere where it's possible (unlike X11 and other).
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
10 *
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
11 * This interface is based on v4l2, fbvid.h, mga_vid.h projects
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
12 * and personally my ideas.
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
13 *
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
14 * NOTE: This interface is introduced as driver interface.
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26203
diff changeset
15 *
23046
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
16 * Copyright (C) 2002 Nick Kurshev
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
17 * Copyright (C) 2007 Benjamin Zores <ben@geexbox.org>
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
18 *
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
19 * This file is part of MPlayer.
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
20 *
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
21 * MPlayer is free software; you can redistribute it and/or modify
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
22 * it under the terms of the GNU General Public License as published by
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
23 * the Free Software Foundation; either version 2 of the License, or
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
24 * (at your option) any later version.
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
25 *
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
26 * MPlayer is distributed in the hope that it will be useful,
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
27 * but WITHOUT ANY WARRANTY; without even the implied warranty of
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
28 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
29 * GNU General Public License for more details.
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
30 *
26726
a1c020529cc0 Use standard license header with standard formatting.
diego
parents: 26718
diff changeset
31 * You should have received a copy of the GNU General Public License along
a1c020529cc0 Use standard license header with standard formatting.
diego
parents: 26718
diff changeset
32 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
a1c020529cc0 Use standard license header with standard formatting.
diego
parents: 26718
diff changeset
33 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
23046
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
34 */
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 22905
diff changeset
35
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
36 #include <stdlib.h>
dcc632dd2097 preliminary version
nick
parents:
diff changeset
37 #include <stdio.h>
dcc632dd2097 preliminary version
nick
parents:
diff changeset
38 #include <errno.h>
dcc632dd2097 preliminary version
nick
parents:
diff changeset
39 #include <string.h>
dcc632dd2097 preliminary version
nick
parents:
diff changeset
40
26203
0d255d03016f #include config.h before all other headers.
diego
parents: 23046
diff changeset
41 #include "config.h"
27079
df448e1248b2 remove now useless vidixlib.h file
ben
parents: 26977
diff changeset
42 #include "vidix.h"
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
43 #include "drivers.h"
22905
f34e5d778267 consistent include paths for config.h et al.
diego
parents: 22902
diff changeset
44 #include "libavutil/common.h"
f34e5d778267 consistent include paths for config.h et al.
diego
parents: 22902
diff changeset
45 #include "mpbswap.h"
37107
3c5c93a30fb7 vidix: Replace printf with mp_msg
al
parents: 36634
diff changeset
46 #include "mp_msg.h"
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
47
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
48 VDXContext *vdlOpen(const char *name,unsigned cap,int verbose)
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
49 {
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
50 VDXContext *ctx;
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
51
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
52 if (!(ctx = malloc (sizeof (VDXContext))))
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
53 return NULL;
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
54 memset (ctx, 0, sizeof (VDXContext));
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
55
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
56 /* register all drivers */
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
57 vidix_register_all_drivers ();
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 27087
diff changeset
58
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
59 if (!vidix_find_driver (ctx, name, cap, verbose))
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
60 {
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
61 free (ctx);
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
62 return NULL;
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
63 }
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
64
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
65 if (verbose)
37107
3c5c93a30fb7 vidix: Replace printf with mp_msg
al
parents: 36634
diff changeset
66 mp_msg(MSGT_VO, MSGL_STATUS, "[vidixlib] Will use %s driver\n", ctx->drv->name);
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
67
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
68 if (!ctx->drv || !ctx->drv->init)
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
69 {
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
70 if (verbose)
37107
3c5c93a30fb7 vidix: Replace printf with mp_msg
al
parents: 36634
diff changeset
71 mp_msg(MSGT_VO, MSGL_STATUS, "[vidixlib] Can't init driver\n");
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
72 free (ctx);
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
73 return NULL;
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
74 }
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 27087
diff changeset
75
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
76 if (verbose)
37107
3c5c93a30fb7 vidix: Replace printf with mp_msg
al
parents: 36634
diff changeset
77 mp_msg(MSGT_VO, MSGL_STATUS, "[vidixlib] Attempt to initialize driver at: %p\n",
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
78 ctx->drv->init);
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
79
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
80 if (ctx->drv->init () !=0)
4011
ca163699151f lazy loader works better ;)
nick
parents: 4008
diff changeset
81 {
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
82 if (verbose)
37107
3c5c93a30fb7 vidix: Replace printf with mp_msg
al
parents: 36634
diff changeset
83 mp_msg(MSGT_VO, MSGL_STATUS, "[vidixlib] Can't init driver\n");
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
84 free (ctx);
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
85 return NULL;
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
86 }
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 27087
diff changeset
87
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
88 if (verbose)
37107
3c5c93a30fb7 vidix: Replace printf with mp_msg
al
parents: 36634
diff changeset
89 mp_msg(MSGT_VO, MSGL_STATUS, "[vidixlib] '%s'successfully loaded\n", ctx->drv->name);
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 27087
diff changeset
90
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
91 return ctx;
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
92 }
dcc632dd2097 preliminary version
nick
parents:
diff changeset
93
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
94 void vdlClose(VDXContext *ctx)
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
95 {
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
96 if (ctx->drv->destroy)
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
97 ctx->drv->destroy ();
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 27087
diff changeset
98
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
99 memset (ctx, 0, sizeof (VDXContext)); /* <- it's not stupid */
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
100 free (ctx);
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
101 }
dcc632dd2097 preliminary version
nick
parents:
diff changeset
102
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
103 int vdlGetCapability(VDXContext *ctx, vidix_capability_t *cap)
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
104 {
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
105 return ctx->drv->get_caps (cap);
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
106 }
dcc632dd2097 preliminary version
nick
parents:
diff changeset
107
4539
fcd6e49cb3cc mplayer has swapped RGB's fourcc :(
nick
parents: 4509
diff changeset
108 #define MPLAYER_IMGFMT_RGB (('R'<<24)|('G'<<16)|('B'<<8))
fcd6e49cb3cc mplayer has swapped RGB's fourcc :(
nick
parents: 4509
diff changeset
109 #define MPLAYER_IMGFMT_BGR (('B'<<24)|('G'<<16)|('R'<<8))
fcd6e49cb3cc mplayer has swapped RGB's fourcc :(
nick
parents: 4509
diff changeset
110 #define MPLAYER_IMGFMT_RGB_MASK 0xFFFFFF00
fcd6e49cb3cc mplayer has swapped RGB's fourcc :(
nick
parents: 4509
diff changeset
111
27083
ef28bbd026b2 cosmetic: give a coherent indentation
ben
parents: 27082
diff changeset
112 static uint32_t normalize_fourcc (uint32_t fourcc)
4539
fcd6e49cb3cc mplayer has swapped RGB's fourcc :(
nick
parents: 4509
diff changeset
113 {
fcd6e49cb3cc mplayer has swapped RGB's fourcc :(
nick
parents: 4509
diff changeset
114 if((fourcc & MPLAYER_IMGFMT_RGB_MASK) == (MPLAYER_IMGFMT_RGB|0) ||
fcd6e49cb3cc mplayer has swapped RGB's fourcc :(
nick
parents: 4509
diff changeset
115 (fourcc & MPLAYER_IMGFMT_RGB_MASK) == (MPLAYER_IMGFMT_BGR|0))
fcd6e49cb3cc mplayer has swapped RGB's fourcc :(
nick
parents: 4509
diff changeset
116 return bswap_32(fourcc);
27081
35039052457d remove useless 'else'
ben
parents: 27080
diff changeset
117 return fourcc;
4539
fcd6e49cb3cc mplayer has swapped RGB's fourcc :(
nick
parents: 4509
diff changeset
118 }
fcd6e49cb3cc mplayer has swapped RGB's fourcc :(
nick
parents: 4509
diff changeset
119
27087
42726ce8f60a cosmetic: be consistent
ben
parents: 27084
diff changeset
120 int vdlQueryFourcc (VDXContext *ctx, vidix_fourcc_t *f)
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
121 {
4547
nick
parents: 4539
diff changeset
122 f->fourcc = normalize_fourcc(f->fourcc);
36634
945eab072c9d vidix: move query_format struct initialization to common code.
reimar
parents: 30726
diff changeset
123 f->depth = VID_DEPTH_NONE;
945eab072c9d vidix: move query_format struct initialization to common code.
reimar
parents: 30726
diff changeset
124 f->flags = VID_CAP_NONE;
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
125 return ctx->drv->query_fourcc (f);
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
126 }
dcc632dd2097 preliminary version
nick
parents:
diff changeset
127
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
128 int vdlConfigPlayback (VDXContext *ctx, vidix_playback_t *p)
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
129 {
4547
nick
parents: 4539
diff changeset
130 p->fourcc = normalize_fourcc(p->fourcc);
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
131 return ctx->drv->config_playback (p);
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
132 }
dcc632dd2097 preliminary version
nick
parents:
diff changeset
133
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
134 int vdlPlaybackOn (VDXContext *ctx)
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
135 {
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
136 return ctx->drv->playback_on ();
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
137 }
dcc632dd2097 preliminary version
nick
parents:
diff changeset
138
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
139 int vdlPlaybackOff (VDXContext *ctx)
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
140 {
22857
77def5093daf switch to new internal vidix API, no more dlopen/dlsym, libvidix is now a fully static library with all drivers built-in
ben
parents: 21507
diff changeset
141 return ctx->drv->playback_off ();
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
142 }
dcc632dd2097 preliminary version
nick
parents:
diff changeset
143
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
144 int vdlPlaybackFrameSelect (VDXContext *ctx, unsigned frame_idx)
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
145 {
22885
2fb21c753674 remove useless ()
aurel
parents: 22865
diff changeset
146 return ctx->drv->frame_sel ? ctx->drv->frame_sel (frame_idx) : ENOSYS;
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
147 }
dcc632dd2097 preliminary version
nick
parents:
diff changeset
148
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
149 int vdlPlaybackGetEq (VDXContext *ctx, vidix_video_eq_t *e)
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
150 {
22885
2fb21c753674 remove useless ()
aurel
parents: 22865
diff changeset
151 return ctx->drv->get_eq ? ctx->drv->get_eq (e) : ENOSYS;
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
152 }
dcc632dd2097 preliminary version
nick
parents:
diff changeset
153
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
154 int vdlPlaybackSetEq (VDXContext *ctx, const vidix_video_eq_t *e)
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
155 {
22885
2fb21c753674 remove useless ()
aurel
parents: 22865
diff changeset
156 return ctx->drv->set_eq ? ctx->drv->set_eq (e) : ENOSYS;
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
157 }
dcc632dd2097 preliminary version
nick
parents:
diff changeset
158
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
159 int vdlGetGrKeys (VDXContext *ctx, vidix_grkey_t *k)
4070
b61ba6c256dd Minor interface changes: color and video keys are moved out from playback configuring
nick
parents: 4011
diff changeset
160 {
22885
2fb21c753674 remove useless ()
aurel
parents: 22865
diff changeset
161 return ctx->drv->get_gkey ? ctx->drv->get_gkey (k) : ENOSYS;
4070
b61ba6c256dd Minor interface changes: color and video keys are moved out from playback configuring
nick
parents: 4011
diff changeset
162 }
b61ba6c256dd Minor interface changes: color and video keys are moved out from playback configuring
nick
parents: 4011
diff changeset
163
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
164 int vdlSetGrKeys (VDXContext *ctx, const vidix_grkey_t *k)
4070
b61ba6c256dd Minor interface changes: color and video keys are moved out from playback configuring
nick
parents: 4011
diff changeset
165 {
22885
2fb21c753674 remove useless ()
aurel
parents: 22865
diff changeset
166 return ctx->drv->set_gkey ? ctx->drv->set_gkey (k) : ENOSYS;
4070
b61ba6c256dd Minor interface changes: color and video keys are moved out from playback configuring
nick
parents: 4011
diff changeset
167 }
4191
62a6135d090e + new features and possibility
nick
parents: 4070
diff changeset
168
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
169 int vdlPlaybackGetDeint (VDXContext *ctx, vidix_deinterlace_t *d)
4191
62a6135d090e + new features and possibility
nick
parents: 4070
diff changeset
170 {
22885
2fb21c753674 remove useless ()
aurel
parents: 22865
diff changeset
171 return ctx->drv->get_deint ? ctx->drv->get_deint (d) : ENOSYS;
4191
62a6135d090e + new features and possibility
nick
parents: 4070
diff changeset
172 }
62a6135d090e + new features and possibility
nick
parents: 4070
diff changeset
173
27084
e4497d289c3c Remove useless typedef for VDXContext.
ben
parents: 27083
diff changeset
174 int vdlPlaybackSetDeint (VDXContext *ctx, const vidix_deinterlace_t *d)
4191
62a6135d090e + new features and possibility
nick
parents: 4070
diff changeset
175 {
22885
2fb21c753674 remove useless ()
aurel
parents: 22865
diff changeset
176 return ctx->drv->set_deint ? ctx->drv->set_deint (d) : ENOSYS;
4191
62a6135d090e + new features and possibility
nick
parents: 4070
diff changeset
177 }