vlc | branch: master | Rémi Denis-Courmont <[email protected]> | Sun Oct  2 
13:55:32 2011 +0300| [bc40d784e47045eae1530090e07c007503ce2e4b] | committer: 
Rémi Denis-Courmont

Retrieve current value of V4L2 64-bits control

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=bc40d784e47045eae1530090e07c007503ce2e4b
---

 modules/access/v4l2/controls.c |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)

diff --git a/modules/access/v4l2/controls.c b/modules/access/v4l2/controls.c
index 49db111..6c56e9a 100644
--- a/modules/access/v4l2/controls.c
+++ b/modules/access/v4l2/controls.c
@@ -494,6 +494,22 @@ static vlc_v4l2_ctrl_t *ControlAddInteger64 (vlc_object_t 
*obj, int fd,
         return NULL;
     }
 
+    struct v4l2_ext_control ext_ctrl = { .id = c->id, .size = 0, };
+    struct v4l2_ext_controls ext_ctrls = {
+        .ctrl_class = V4L2_CTRL_ID2CLASS(c->id),
+        .count = 1,
+        .error_idx = 0,
+        .controls = &ext_ctrl,
+    };
+
+    if (v4l2_ioctl (c->fd, VIDIOC_G_EXT_CTRLS, &ext_ctrls) >= 0)
+    {
+        vlc_value_t val = { .i_int = ext_ctrl.value64 };
+
+        msg_Dbg (obj, "  current: %"PRId64, val.i_int);
+        var_Change (obj, c->name, VLC_VAR_SETVALUE, &val, NULL);
+    }
+
     return c;
 }
 

_______________________________________________
vlc-commits mailing list
[email protected]
http://mailman.videolan.org/listinfo/vlc-commits

Reply via email to