summaryrefslogtreecommitdiffstats
path: root/libvo
diff options
context:
space:
mode:
authoralex <alex@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-12-07 15:08:20 +0000
committeralex <alex@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-12-07 15:08:20 +0000
commit81b36170398d9dc18b8df59ef51b23a0b1459501 (patch)
tree146e3fb445658b66184b24c59f4b6c9434ff7f47 /libvo
parent3040bf626b03ac8794659be902308559974f9e12 (diff)
downloadmpv-81b36170398d9dc18b8df59ef51b23a0b1459501.tar.bz2
mpv-81b36170398d9dc18b8df59ef51b23a0b1459501.tar.xz
Some more vidix crap - vidix equalizer passthrough. Patch by Oleg I. Vdovikin <vdovikin@jscc.ru>
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@11566 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo')
-rw-r--r--libvo/vo_svga.c31
-rw-r--r--libvo/vo_vesa.c31
2 files changed, 62 insertions, 0 deletions
diff --git a/libvo/vo_svga.c b/libvo/vo_svga.c
index 25fa02e7c3..79557f288d 100644
--- a/libvo/vo_svga.c
+++ b/libvo/vo_svga.c
@@ -361,6 +361,37 @@ static uint32_t control(uint32_t request, void *data, ...)
case VOCTRL_GET_IMAGE:
return get_image(data);
}
+
+#ifdef CONFIG_VIDIX
+ if (vidix_name) {
+ switch (request) {
+ case VOCTRL_SET_EQUALIZER:
+ {
+ va_list ap;
+ int value;
+
+ va_start(ap, data);
+ value = va_arg(ap, int);
+ va_end(ap);
+
+ return vidix_control(request, data, (int *)value);
+ }
+ case VOCTRL_GET_EQUALIZER:
+ {
+ va_list ap;
+ int *value;
+
+ va_start(ap, data);
+ value = va_arg(ap, int*);
+ va_end(ap);
+
+ return vidix_control(request, data, value);
+ }
+ }
+ return vidix_control(request, data);
+ }
+#endif
+
return VO_NOTIMPL;
}
diff --git a/libvo/vo_vesa.c b/libvo/vo_vesa.c
index 9da76fe01d..afeb74f8a0 100644
--- a/libvo/vo_vesa.c
+++ b/libvo/vo_vesa.c
@@ -1065,5 +1065,36 @@ static uint32_t control(uint32_t request, void *data, ...)
case VOCTRL_QUERY_FORMAT:
return query_format(*((uint32_t*)data));
}
+
+#ifdef CONFIG_VIDIX
+ if (vidix_name) {
+ switch (request) {
+ case VOCTRL_SET_EQUALIZER:
+ {
+ va_list ap;
+ int value;
+
+ va_start(ap, data);
+ value = va_arg(ap, int);
+ va_end(ap);
+
+ return vidix_control(request, data, (int *)value);
+ }
+ case VOCTRL_GET_EQUALIZER:
+ {
+ va_list ap;
+ int *value;
+
+ va_start(ap, data);
+ value = va_arg(ap, int*);
+ va_end(ap);
+
+ return vidix_control(request, data, value);
+ }
+ }
+ return vidix_control(request, data);
+ }
+#endif
+
return VO_NOTIMPL;
}