Re: [PATCH 1/2] [media] V4L: Add camera pan/tilt speed controls
On Wed, Aug 6, 2014 at 7:18 PM, Pawel Osciak posc...@chromium.org wrote: On Thu, Aug 7, 2014 at 12:10 AM, Vincent Palatin vpala...@chromium.org wrote: On Sun, Aug 3, 2014 at 10:52 PM, Pawel Osciak posc...@chromium.org wrote: This looks good to me in general (with one comment below). I don't think we can easily implement current V4L2 pan and tilt controls that are for movement by a specified amount in terms of UVC pan/tilt speed controls, which only let us set speed and direction... On Wed, Jul 9, 2014 at 8:49 AM, Vincent Palatin vpala...@chromium.org wrote: The V4L2_CID_PAN_SPEED and V4L2_CID_TILT_SPEED controls allow to move the camera by setting its rotation speed around its axis. Signed-off-by: Vincent Palatin vpala...@chromium.org --- Documentation/DocBook/media/v4l/compat.xml | 10 ++ Documentation/DocBook/media/v4l/controls.xml | 21 + drivers/media/v4l2-core/v4l2-ctrls.c | 2 ++ include/uapi/linux/v4l2-controls.h | 2 ++ 4 files changed, 35 insertions(+) diff --git a/Documentation/DocBook/media/v4l/compat.xml b/Documentation/DocBook/media/v4l/compat.xml index eee6f0f..21910e9 100644 --- a/Documentation/DocBook/media/v4l/compat.xml +++ b/Documentation/DocBook/media/v4l/compat.xml @@ -2545,6 +2545,16 @@ fields changed from _s32 to _u32. /orderedlist /section +section + titleV4L2 in Linux 3.17/title + orderedlist + listitem + paraAdded constantV4L2_CID_PAN_SPEED/constant and + constantV4L2_CID_TILT_SPEED/constant camera controls./para + /listitem + /orderedlist +/section + section id=other titleRelation of V4L2 to other Linux multimedia APIs/title diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml index 47198ee..cdf97f0 100644 --- a/Documentation/DocBook/media/v4l/controls.xml +++ b/Documentation/DocBook/media/v4l/controls.xml @@ -3914,6 +3914,27 @@ by exposure, white balance or focus controls./entry /row rowentry/entry/row + row + entry spanname=idconstantV4L2_CID_PAN_SPEED/constantnbsp;/entry + entryinteger/entry + /rowrowentry spanname=descrThis control turns the +camera horizontally at the specific speed. The unit is undefined. A +positive value moves the camera to the right (clockwise when viewed +from above), a negative value to the left. A value of zero does not +cause or stop the motion./entry How do we stop/start? As mentioned in the last sentence of the paragraph above, setting 0 stops the movement. setting non-zero value starts it if needed. The sentence says A value of zero does *not* cause or stop the motion.. Perhaps not is a typo then? maybe my phrasing is really bad but the not isn't a typo. The developed version would be : A value of zero does *not* cause [any motion if the camera is already stopped] or stop the motion [if it is currently moving with a non-zero speed] -- Vincent -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/2] [media] V4L: Add camera pan/tilt speed controls
On Sun, Aug 3, 2014 at 10:52 PM, Pawel Osciak posc...@chromium.org wrote: This looks good to me in general (with one comment below). I don't think we can easily implement current V4L2 pan and tilt controls that are for movement by a specified amount in terms of UVC pan/tilt speed controls, which only let us set speed and direction... On Wed, Jul 9, 2014 at 8:49 AM, Vincent Palatin vpala...@chromium.org wrote: The V4L2_CID_PAN_SPEED and V4L2_CID_TILT_SPEED controls allow to move the camera by setting its rotation speed around its axis. Signed-off-by: Vincent Palatin vpala...@chromium.org --- Documentation/DocBook/media/v4l/compat.xml | 10 ++ Documentation/DocBook/media/v4l/controls.xml | 21 + drivers/media/v4l2-core/v4l2-ctrls.c | 2 ++ include/uapi/linux/v4l2-controls.h | 2 ++ 4 files changed, 35 insertions(+) diff --git a/Documentation/DocBook/media/v4l/compat.xml b/Documentation/DocBook/media/v4l/compat.xml index eee6f0f..21910e9 100644 --- a/Documentation/DocBook/media/v4l/compat.xml +++ b/Documentation/DocBook/media/v4l/compat.xml @@ -2545,6 +2545,16 @@ fields changed from _s32 to _u32. /orderedlist /section +section + titleV4L2 in Linux 3.17/title + orderedlist + listitem + paraAdded constantV4L2_CID_PAN_SPEED/constant and + constantV4L2_CID_TILT_SPEED/constant camera controls./para + /listitem + /orderedlist +/section + section id=other titleRelation of V4L2 to other Linux multimedia APIs/title diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml index 47198ee..cdf97f0 100644 --- a/Documentation/DocBook/media/v4l/controls.xml +++ b/Documentation/DocBook/media/v4l/controls.xml @@ -3914,6 +3914,27 @@ by exposure, white balance or focus controls./entry /row rowentry/entry/row + row + entry spanname=idconstantV4L2_CID_PAN_SPEED/constantnbsp;/entry + entryinteger/entry + /rowrowentry spanname=descrThis control turns the +camera horizontally at the specific speed. The unit is undefined. A +positive value moves the camera to the right (clockwise when viewed +from above), a negative value to the left. A value of zero does not +cause or stop the motion./entry How do we stop/start? As mentioned in the last sentence of the paragraph above, setting 0 stops the movement. setting non-zero value starts it if needed. + /row + rowentry/entry/row + + row + entry spanname=idconstantV4L2_CID_TILT_SPEED/constantnbsp;/entry + entryinteger/entry + /rowrowentry spanname=descrThis control turns the +camera vertically at the specified speed. The unit is undefined. A +positive value moves the camera up, a negative value down. A value of +zero does not cause or stop the motion./entry + /row + rowentry/entry/row + /tbody /tgroup /table diff --git a/drivers/media/v4l2-core/v4l2-ctrls.c b/drivers/media/v4l2-core/v4l2-ctrls.c index 55c6832..57ddaf4 100644 --- a/drivers/media/v4l2-core/v4l2-ctrls.c +++ b/drivers/media/v4l2-core/v4l2-ctrls.c @@ -787,6 +787,8 @@ const char *v4l2_ctrl_get_name(u32 id) case V4L2_CID_AUTO_FOCUS_STOP: return Auto Focus, Stop; case V4L2_CID_AUTO_FOCUS_STATUS:return Auto Focus, Status; case V4L2_CID_AUTO_FOCUS_RANGE: return Auto Focus, Range; + case V4L2_CID_PAN_SPEED:return Pan, Speed; + case V4L2_CID_TILT_SPEED: return Tilt, Speed; /* FM Radio Modulator control */ /* Keep the order of the 'case's the same as in videodev2.h! */ diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h index 2ac5597..5576044 100644 --- a/include/uapi/linux/v4l2-controls.h +++ b/include/uapi/linux/v4l2-controls.h @@ -745,6 +745,8 @@ enum v4l2_auto_focus_range { V4L2_AUTO_FOCUS_RANGE_INFINITY = 3, }; +#define V4L2_CID_PAN_SPEED (V4L2_CID_CAMERA_CLASS_BASE+32) +#define V4L2_CID_TILT_SPEED (V4L2_CID_CAMERA_CLASS_BASE+33) /* FM Modulator class control IDs */ -- 2.0.0.526.g5318336 -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/2] [media] V4L: Add camera pan/tilt speed controls
On Thu, Aug 7, 2014 at 12:10 AM, Vincent Palatin vpala...@chromium.org wrote: On Sun, Aug 3, 2014 at 10:52 PM, Pawel Osciak posc...@chromium.org wrote: This looks good to me in general (with one comment below). I don't think we can easily implement current V4L2 pan and tilt controls that are for movement by a specified amount in terms of UVC pan/tilt speed controls, which only let us set speed and direction... On Wed, Jul 9, 2014 at 8:49 AM, Vincent Palatin vpala...@chromium.org wrote: The V4L2_CID_PAN_SPEED and V4L2_CID_TILT_SPEED controls allow to move the camera by setting its rotation speed around its axis. Signed-off-by: Vincent Palatin vpala...@chromium.org --- Documentation/DocBook/media/v4l/compat.xml | 10 ++ Documentation/DocBook/media/v4l/controls.xml | 21 + drivers/media/v4l2-core/v4l2-ctrls.c | 2 ++ include/uapi/linux/v4l2-controls.h | 2 ++ 4 files changed, 35 insertions(+) diff --git a/Documentation/DocBook/media/v4l/compat.xml b/Documentation/DocBook/media/v4l/compat.xml index eee6f0f..21910e9 100644 --- a/Documentation/DocBook/media/v4l/compat.xml +++ b/Documentation/DocBook/media/v4l/compat.xml @@ -2545,6 +2545,16 @@ fields changed from _s32 to _u32. /orderedlist /section +section + titleV4L2 in Linux 3.17/title + orderedlist + listitem + paraAdded constantV4L2_CID_PAN_SPEED/constant and + constantV4L2_CID_TILT_SPEED/constant camera controls./para + /listitem + /orderedlist +/section + section id=other titleRelation of V4L2 to other Linux multimedia APIs/title diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml index 47198ee..cdf97f0 100644 --- a/Documentation/DocBook/media/v4l/controls.xml +++ b/Documentation/DocBook/media/v4l/controls.xml @@ -3914,6 +3914,27 @@ by exposure, white balance or focus controls./entry /row rowentry/entry/row + row + entry spanname=idconstantV4L2_CID_PAN_SPEED/constantnbsp;/entry + entryinteger/entry + /rowrowentry spanname=descrThis control turns the +camera horizontally at the specific speed. The unit is undefined. A +positive value moves the camera to the right (clockwise when viewed +from above), a negative value to the left. A value of zero does not +cause or stop the motion./entry How do we stop/start? As mentioned in the last sentence of the paragraph above, setting 0 stops the movement. setting non-zero value starts it if needed. The sentence says A value of zero does *not* cause or stop the motion.. Perhaps not is a typo then? -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 1/2] [media] V4L: Add camera pan/tilt speed controls
ping ... Any opinion on adding those new controls ? since re-using the existing relative ones was seen as too twisted. Thanks, -- Vincent On Tue, Jul 8, 2014 at 4:49 PM, Vincent Palatin vpala...@chromium.org wrote: The V4L2_CID_PAN_SPEED and V4L2_CID_TILT_SPEED controls allow to move the camera by setting its rotation speed around its axis. Signed-off-by: Vincent Palatin vpala...@chromium.org --- Documentation/DocBook/media/v4l/compat.xml | 10 ++ Documentation/DocBook/media/v4l/controls.xml | 21 + drivers/media/v4l2-core/v4l2-ctrls.c | 2 ++ include/uapi/linux/v4l2-controls.h | 2 ++ 4 files changed, 35 insertions(+) diff --git a/Documentation/DocBook/media/v4l/compat.xml b/Documentation/DocBook/media/v4l/compat.xml index eee6f0f..21910e9 100644 --- a/Documentation/DocBook/media/v4l/compat.xml +++ b/Documentation/DocBook/media/v4l/compat.xml @@ -2545,6 +2545,16 @@ fields changed from _s32 to _u32. /orderedlist /section +section + titleV4L2 in Linux 3.17/title + orderedlist + listitem + paraAdded constantV4L2_CID_PAN_SPEED/constant and + constantV4L2_CID_TILT_SPEED/constant camera controls./para + /listitem + /orderedlist +/section + section id=other titleRelation of V4L2 to other Linux multimedia APIs/title diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml index 47198ee..cdf97f0 100644 --- a/Documentation/DocBook/media/v4l/controls.xml +++ b/Documentation/DocBook/media/v4l/controls.xml @@ -3914,6 +3914,27 @@ by exposure, white balance or focus controls./entry /row rowentry/entry/row + row + entry spanname=idconstantV4L2_CID_PAN_SPEED/constantnbsp;/entry + entryinteger/entry + /rowrowentry spanname=descrThis control turns the +camera horizontally at the specific speed. The unit is undefined. A +positive value moves the camera to the right (clockwise when viewed +from above), a negative value to the left. A value of zero does not +cause or stop the motion./entry + /row + rowentry/entry/row + + row + entry spanname=idconstantV4L2_CID_TILT_SPEED/constantnbsp;/entry + entryinteger/entry + /rowrowentry spanname=descrThis control turns the +camera vertically at the specified speed. The unit is undefined. A +positive value moves the camera up, a negative value down. A value of +zero does not cause or stop the motion./entry + /row + rowentry/entry/row + /tbody /tgroup /table diff --git a/drivers/media/v4l2-core/v4l2-ctrls.c b/drivers/media/v4l2-core/v4l2-ctrls.c index 55c6832..57ddaf4 100644 --- a/drivers/media/v4l2-core/v4l2-ctrls.c +++ b/drivers/media/v4l2-core/v4l2-ctrls.c @@ -787,6 +787,8 @@ const char *v4l2_ctrl_get_name(u32 id) case V4L2_CID_AUTO_FOCUS_STOP: return Auto Focus, Stop; case V4L2_CID_AUTO_FOCUS_STATUS:return Auto Focus, Status; case V4L2_CID_AUTO_FOCUS_RANGE: return Auto Focus, Range; + case V4L2_CID_PAN_SPEED:return Pan, Speed; + case V4L2_CID_TILT_SPEED: return Tilt, Speed; /* FM Radio Modulator control */ /* Keep the order of the 'case's the same as in videodev2.h! */ diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h index 2ac5597..5576044 100644 --- a/include/uapi/linux/v4l2-controls.h +++ b/include/uapi/linux/v4l2-controls.h @@ -745,6 +745,8 @@ enum v4l2_auto_focus_range { V4L2_AUTO_FOCUS_RANGE_INFINITY = 3, }; +#define V4L2_CID_PAN_SPEED (V4L2_CID_CAMERA_CLASS_BASE+32) +#define V4L2_CID_TILT_SPEED (V4L2_CID_CAMERA_CLASS_BASE+33) /* FM Modulator class control IDs */ -- 2.0.0.526.g5318336 -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 1/2] [media] V4L: Add camera pan/tilt speed controls
The V4L2_CID_PAN_SPEED and V4L2_CID_TILT_SPEED controls allow to move the camera by setting its rotation speed around its axis. Signed-off-by: Vincent Palatin vpala...@chromium.org --- Documentation/DocBook/media/v4l/compat.xml | 10 ++ Documentation/DocBook/media/v4l/controls.xml | 21 + drivers/media/v4l2-core/v4l2-ctrls.c | 2 ++ include/uapi/linux/v4l2-controls.h | 2 ++ 4 files changed, 35 insertions(+) diff --git a/Documentation/DocBook/media/v4l/compat.xml b/Documentation/DocBook/media/v4l/compat.xml index eee6f0f..21910e9 100644 --- a/Documentation/DocBook/media/v4l/compat.xml +++ b/Documentation/DocBook/media/v4l/compat.xml @@ -2545,6 +2545,16 @@ fields changed from _s32 to _u32. /orderedlist /section +section + titleV4L2 in Linux 3.17/title + orderedlist + listitem + paraAdded constantV4L2_CID_PAN_SPEED/constant and + constantV4L2_CID_TILT_SPEED/constant camera controls./para + /listitem + /orderedlist +/section + section id=other titleRelation of V4L2 to other Linux multimedia APIs/title diff --git a/Documentation/DocBook/media/v4l/controls.xml b/Documentation/DocBook/media/v4l/controls.xml index 47198ee..cdf97f0 100644 --- a/Documentation/DocBook/media/v4l/controls.xml +++ b/Documentation/DocBook/media/v4l/controls.xml @@ -3914,6 +3914,27 @@ by exposure, white balance or focus controls./entry /row rowentry/entry/row + row + entry spanname=idconstantV4L2_CID_PAN_SPEED/constantnbsp;/entry + entryinteger/entry + /rowrowentry spanname=descrThis control turns the +camera horizontally at the specific speed. The unit is undefined. A +positive value moves the camera to the right (clockwise when viewed +from above), a negative value to the left. A value of zero does not +cause or stop the motion./entry + /row + rowentry/entry/row + + row + entry spanname=idconstantV4L2_CID_TILT_SPEED/constantnbsp;/entry + entryinteger/entry + /rowrowentry spanname=descrThis control turns the +camera vertically at the specified speed. The unit is undefined. A +positive value moves the camera up, a negative value down. A value of +zero does not cause or stop the motion./entry + /row + rowentry/entry/row + /tbody /tgroup /table diff --git a/drivers/media/v4l2-core/v4l2-ctrls.c b/drivers/media/v4l2-core/v4l2-ctrls.c index 55c6832..57ddaf4 100644 --- a/drivers/media/v4l2-core/v4l2-ctrls.c +++ b/drivers/media/v4l2-core/v4l2-ctrls.c @@ -787,6 +787,8 @@ const char *v4l2_ctrl_get_name(u32 id) case V4L2_CID_AUTO_FOCUS_STOP: return Auto Focus, Stop; case V4L2_CID_AUTO_FOCUS_STATUS:return Auto Focus, Status; case V4L2_CID_AUTO_FOCUS_RANGE: return Auto Focus, Range; + case V4L2_CID_PAN_SPEED:return Pan, Speed; + case V4L2_CID_TILT_SPEED: return Tilt, Speed; /* FM Radio Modulator control */ /* Keep the order of the 'case's the same as in videodev2.h! */ diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-controls.h index 2ac5597..5576044 100644 --- a/include/uapi/linux/v4l2-controls.h +++ b/include/uapi/linux/v4l2-controls.h @@ -745,6 +745,8 @@ enum v4l2_auto_focus_range { V4L2_AUTO_FOCUS_RANGE_INFINITY = 3, }; +#define V4L2_CID_PAN_SPEED (V4L2_CID_CAMERA_CLASS_BASE+32) +#define V4L2_CID_TILT_SPEED(V4L2_CID_CAMERA_CLASS_BASE+33) /* FM Modulator class control IDs */ -- 2.0.0.526.g5318336 -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html