diff options
author | alex <alex@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-11-16 22:59:07 +0000 |
---|---|---|
committer | alex <alex@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-11-16 22:59:07 +0000 |
commit | c451b1fe262fe39515f14ce82f2a590004e96d34 (patch) | |
tree | d58328865d1561891e51749c705e1ebd816c6674 /libmpdemux/tvi_v4l.c | |
parent | 1e50777fb8e235375783868c223b466ca9e39e1b (diff) | |
download | mpv-c451b1fe262fe39515f14ce82f2a590004e96d34.tar.bz2 mpv-c451b1fe262fe39515f14ce82f2a590004e96d34.tar.xz |
added support for setting color values
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@2938 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/tvi_v4l.c')
-rw-r--r-- | libmpdemux/tvi_v4l.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/libmpdemux/tvi_v4l.c b/libmpdemux/tvi_v4l.c index 05a950ec38..0e6491a1a7 100644 --- a/libmpdemux/tvi_v4l.c +++ b/libmpdemux/tvi_v4l.c @@ -552,6 +552,36 @@ static int control(priv_t *priv, int cmd, void *arg) case TVI_CONTROL_VID_SET_HEIGHT: priv->height = (int)*(void **)arg; return(TVI_CONTROL_TRUE); + case TVI_CONTROL_VID_GET_PICTURE: + if (ioctl(priv->fd, VIDIOCGPICT, &priv->picture) == -1) + { + mp_msg(MSGT_TV, MSGL_ERR, "ioctl get picture failed: %s\n", strerror(errno)); + return(TVI_CONTROL_FALSE); + } + return(TVI_CONTROL_TRUE); + case TVI_CONTROL_VID_SET_PICTURE: + if (ioctl(priv->fd, VIDIOCSPICT, &priv->picture) == -1) + { + mp_msg(MSGT_TV, MSGL_ERR, "ioctl get picture failed: %s\n", strerror(errno)); + return(TVI_CONTROL_FALSE); + } + return(TVI_CONTROL_TRUE); + case TVI_CONTROL_VID_SET_BRIGHTNESS: + priv->picture.brightness = (int)*(void **)arg; + control(priv, TVI_CONTROL_VID_SET_PICTURE, 0); + return(TVI_CONTROL_TRUE); + case TVI_CONTROL_VID_SET_HUE: + priv->picture.hue = (int)*(void **)arg; + control(priv, TVI_CONTROL_VID_SET_PICTURE, 0); + return(TVI_CONTROL_TRUE); + case TVI_CONTROL_VID_SET_SATURATION: + priv->picture.colour = (int)*(void **)arg; + control(priv, TVI_CONTROL_VID_SET_PICTURE, 0); + return(TVI_CONTROL_TRUE); + case TVI_CONTROL_VID_SET_CONTRAST: + priv->picture.contrast = (int)*(void **)arg; + control(priv, TVI_CONTROL_VID_SET_PICTURE, 0); + return(TVI_CONTROL_TRUE); /* ========== TUNER controls =========== */ case TVI_CONTROL_TUN_GET_FREQ: |