v4l2-ctrls: document the changes about auto focus mode
Subsystems (2)
RFC PATCH v2 3/3 v4l2-ctrls: document the changes about auto focus mode
Document about the type changes and the enumeration of the auto focus control.
--- Documentation/DocBook/v4l/controls.xml | 31 +++++++++++++++++++++++++--- Documentation/DocBook/v4l/videodev2.h.xml | 6 +++++ 2 files changed, 33 insertions(+), 4 deletions(-)
Documentation/DocBook/v4l/controls.xml +27 -4
@@ -1801,12 +1801,35 @@ negative values towards infinity. This is a write-only control.</entry> </row> <row><entry></entry></row> - <row> + <row id="v4l2-focus-auto-type"> <entry spanname="id"><constant>V4L2_CID_FOCUS_AUTO</constant> </entry> - <entry>boolean</entry> + <entry>enum v4l2_focus_auto_type</entry> </row><row><entry spanname="descr">Enables automatic focus -adjustments. The effect of manual focus adjustments while this feature -is enabled is undefined, drivers should ignore such requests.</entry> +adjustments of the normal or macro or continuous(CAF) mode. The effect of +manual focus adjustments while this feature is enabled is undefined, +drivers should ignore such requests. Possible values are:</entry> + </row> + <row> + <entrytbl spanname="descr" cols="2"> + <tbody valign="top"> + <row> + <entry><constant>V4L2_FOCUS_MANUAL</constant> </entry> + <entry>Manual focus mode.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_AUTO</constant> </entry> + <entry>Auto focus mode with normal operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_MACRO</constant> </entry> + <entry>Auto focus mode with macro operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_CONTINUOUS</constant> </entry> + <entry>Auto focus mode with continuous(CAF) operation.</entry> + </row> + </tbody> + </entrytbl> </row> <row><entry></entry></row>
Documentation/DocBook/v4l/videodev2.h.xml +6 -0
@@ -1291,6 +1291,12 @@ enum <link linkend="v4l2-exposure-auto-type">v4l2_exposure_auto_type</link> { #define V4L2_CID_FOCUS_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+10) #define V4L2_CID_FOCUS_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE+11) #define V4L2_CID_FOCUS_AUTO (V4L2_CID_CAMERA_CLASS_BASE+12) +enum <link linkend="v4l2-focus-auto-type">v4l2_exposure_auto_type</link> { + V4L2_FOCUS_MANUAL = 0, + V4L2_FOCUS_AUTO = 1, + V4L2_FOCUS_MACRO = 2, + V4L2_FOCUS_CONTINUOUS = 3 +}; #define V4L2_CID_ZOOM_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+13) #define V4L2_CID_ZOOM_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE+14)
Signature · 1 line
1.7.0.4
Hi,
Quoted 40 lines · HeungJun
Document about the type changes and the enumeration of the auto focus control.
Signed-off-by Heungjun Kim <[email protected]>Signed-off-by Kyungmin Park <[email protected]>--- Documentation/DocBook/v4l/controls.xml | 31 +++++++++++++++++++++++++--- Documentation/DocBook/v4l/videodev2.h.xml | 6 +++++ 2 files changed, 33 insertions(+), 4 deletions(-)(quoted diff) +0
-0
b/Documentation/DocBook/v4l/controls.xmlindex 2fae3e8..889fa84 100644Documentation/DocBook/v4l/controls.xml +0
-0@@ -1801,12 +1801,35 @@ negative values towards infinity. This is awrite-only control.</entry> </row>
Documentation/DocBook/v4l/controls.xml +1
-1<row><entry></entry></row> - <row> + <row id="v4l2-focus-auto-type"> <entryspanname="id"><constant>V4L2_CID_FOCUS_AUTO</constant> </entry> - <entry>boolean</entry>
Documentation/DocBook/v4l/controls.xml +13
-2+ <entry>enum v4l2_focus_auto_type</entry> </row><row><entry spanname="descr">Enables automatic focus -adjustments. The effect of manual focus adjustments while this feature -is enabled is undefined, drivers should ignore such requests.</entry> +adjustments of the normal or macro or continuous(CAF) mode. The effect of +manual focus adjustments while this feature is enabled is undefined, +drivers should ignore such requests. Possible values are:</entry> + </row> + <row> + <entrytbl spanname="descr" cols="2"> + <tbody valign="top"> + <row> + <entry><constant>V4L2_FOCUS_MANUAL</constant> </entry> + <entry>Manual focus mode.</entry> + </row> + <row>
Documentation/DocBook/v4l/controls.xml negative values towards infinity. This is a write-only control.</entry> · line 1829
Quoted 10 lines
Documentation/DocBook/v4l/controls.xml +10
-0+ <entry><constant>V4L2_FOCUS_AUTO</constant> </entry> + <entry>Auto focus mode with normal operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_MACRO</constant> </entry> + <entry>Auto focus mode with macro operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_CONTINUOUS</constant> </entry> + <entry>Auto focus mode with continuous(CAF) operation.</entry>
I should have asked this sooner, but what's the difference between normal AF and continuous AF ?
Quoted 26 lines
Documentation/DocBook/v4l/controls.xml +3
-0+ </row> + </tbody> + </entrytbl> </row> <row><entry></entry></row>(quoted diff) +0
-0
b/Documentation/DocBook/v4l/videodev2.h.xmlindex 325b23b..ccf6c2b 100644Documentation/DocBook/v4l/videodev2.h.xml +0
-0@@ -1291,6 +1291,12 @@ enum <linklinkend="v4l2-exposure-auto-type">v4l2_exposure_auto_type</link> { #define
V4L2_CID_FOCUS_ABSOLUTE(V4L2_CID_CAMERA_CLASS_BASE+10)
#defineV4L2_CID_FOCUS_RELATIVE(V4L2_CID_CAMERA_CLASS_BASE+11) #defineV4L2_CID_FOCUS_AUTO(V4L2_CID_CAMERA_CLASS_BASE+12) +enum <linklinkend="v4l2-focus-auto-type">v4l2_exposure_auto_type</link> {
Documentation/DocBook/v4l/videodev2.h.xml +5
-0+ V4L2_FOCUS_MANUAL = 0, + V4L2_FOCUS_AUTO = 1, + V4L2_FOCUS_MACRO = 2, + V4L2_FOCUS_CONTINUOUS = 3 +}; #define V4L2_CID_ZOOM_ABSOLUTE(V4L2_CID_CAMERA_CLASS_BASE+13) #define
V4L2_CID_ZOOM_RELATIVE(V4L2_CID_CAMERA_CLASS_BASE+14)
Signature · 3 lines
Regards, Laurent Pinchart
Hi,
2011. 3. 3., 오후 7:08, Laurent Pinchart 작성:
Quoted 48 lines
Hi,
Quoted 45 lines · HeungJun
Document about the type changes and the enumeration of the auto focus control.
Signed-off-by Heungjun Kim <[email protected]>Signed-off-by Kyungmin Park <[email protected]>---
Documentation/DocBook/v4l/controls.xml| 31
+++++++++++++++++++++++++---Documentation/DocBook/v4l/videodev2.h.xml| 6 +++++2 files changed, 33 insertions(+), 4 deletions(-)(quoted diff) +0
-0
b/Documentation/DocBook/v4l/controls.xmlindex 2fae3e8..889fa84 100644Documentation/DocBook/v4l/controls.xml +0
-0@@ -1801,12 +1801,35 @@ negative values towards infinity. This is awrite-only control.</entry> </row>
<row><entry></entry></row>Documentation/DocBook/v4l/controls.xml +1
-1- <row> + <row id="v4l2-focus-auto-type"><entry
spanname="id"><constant>V4L2_CID_FOCUS_AUTO</constant> </entry> - <entry>boolean</entry>Documentation/DocBook/v4l/controls.xml +1
-0+ <entry>enum v4l2_focus_auto_type</entry></row><row><entry spanname="descr">Enables automatic focus
Documentation/DocBook/v4l/controls.xml +17
-2-adjustments. The effect of manual focus adjustments while this feature -is enabled is undefined, drivers should ignore such requests.</entry> +adjustments of the normal or macro or continuous(CAF) mode. The effect of +manual focus adjustments while this feature is enabled is undefined, +drivers should ignore such requests. Possible values are:</entry> + </row> + <row> + <entrytbl spanname="descr" cols="2"> + <tbody valign="top"> + <row> + <entry><constant>V4L2_FOCUS_MANUAL</constant> </entry> + <entry>Manual focus mode.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_AUTO</constant> </entry> + <entry>Auto focus mode with normal operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_MACRO</constant> </entry>
Quoted 8 lines
Documentation/DocBook/v4l/controls.xml negative values towards infinity. This is a write-only control.</entry> · line 1829
Quoted 5 lines
Documentation/DocBook/v4l/controls.xml +5
-0+ <entry>Auto focus mode with macro operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_CONTINUOUS</constant> </entry> + <entry>Auto focus mode with continuous(CAF) operation.</entry>I should have asked this sooner, but what's the difference between normal AF and continuous AF ?
Let's assume that the whole focus process(of course the sensor-internal process automatically) is below :
1) pointing the object focussed
: mostly this is possible to be a middle spot, or pre-given orient x & y set from register. (The mode using given orient x & y, may be defined V4L2_FOCUS_TOUCH or whatever,
but I know touch auto focus suggestion is determined nothing so far,
because of that, after this I will suggest to discuss about it one more.)
2) starting and completing the move of the motor to control lens, using the focusing internal algorithm
3) check whether the lens position is proper or not, using the focusing internal algorithm, too. (If the position is not proper, the image may looks defocused)
In the Normal AF mode, the sensor do the whole focusing process once, and after completing to move lens, even though the sensor failed focusing process. On the other hand, the sensor repeats 1~3 in the Continuous AF mode periodically, regardless of success of failure.
Regards,
Heungjun Kim
Hi,
Quoted 75 lines · On Thursday 03 March 2011 14:17:10 Kim HeungJun wrote:
2011. 3. 3., 오후 7:08, Laurent Pinchart 작성:
Quoted 51 lines · HeungJun
Quoted 50 lines
Document about the type changes and the enumeration of the auto focus control.
Signed-off-by Heungjun Kim <[email protected]>Signed-off-by Kyungmin Park <[email protected]>---
Documentation/DocBook/v4l/controls.xml| 31
+++++++++++++++++++++++++---Documentation/DocBook/v4l/videodev2.h.xml| 6 +++++2 files changed, 33 insertions(+), 4 deletions(-)(quoted diff) +0
-0
b/Documentation/DocBook/v4l/controls.xmlindex 2fae3e8..889fa84 100644Documentation/DocBook/v4l/controls.xml +0
-0@@ -1801,12 +1801,35 @@ negative values towards infinity. This is awrite-only control.</entry> </row>
<row><entry></entry></row>Documentation/DocBook/v4l/controls.xml +1
-1- <row> + <row id="v4l2-focus-auto-type"><entry
spanname="id"><constant>V4L2_CID_FOCUS_AUTO</constant> </entry> - <entry>boolean</entry>
Documentation/DocBook/v4l/controls.xml +1
-0+ <entry>enum v4l2_focus_auto_type</entry></row><row><entry spanname="descr">Enables automatic focus
Documentation/DocBook/v4l/controls.xml +1
-2-adjustments. The effect of manual focus adjustments while this feature -is enabled is undefined, drivers should ignore such requests.</entry> +adjustments of the normal or macro or continuous(CAF) mode. The effectof +manual focus adjustments while this feature is enabled is undefined, +drivers should ignore such requests. Possible values
are:</entry> + </row>Documentation/DocBook/v4l/controls.xml +13
-0+ <row> + <entrytbl spanname="descr" cols="2"> + <tbody valign="top"> + <row> + <entry><constant>V4L2_FOCUS_MANUAL</constant> </entry> + <entry>Manual focus mode.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_AUTO</constant> </entry> + <entry>Auto focus mode with normal operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_MACRO</constant> </entry>Quoted 8 lines
Documentation/DocBook/v4l/controls.xml negative values towards infinity. This is a write-only control.</entry> · line 1829
Quoted 5 lines
Documentation/DocBook/v4l/controls.xml +5
-0+ <entry>Auto focus mode with macro operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_CONTINUOUS</constant> </entry> + <entry>Auto focus mode with continuous(CAF) operation.</entry>I should have asked this sooner, but what's the difference between normal AF and continuous AF ?
Let's assume that the whole focus process(of course the sensor-internal process automatically) is below : 1) pointing the object focussed
: mostly this is possible to be a middle spot, or pre-given orient x & : y set from register.
(The mode using given orient x & y, may be defined
V4L2_FOCUS_TOUCHor
whatever, but I know touch auto focus suggestion is determined nothing so far, because of that, after this I will suggest to discuss about it one more.) 2) starting and completing the move of the motor to control lens, using the focusing internal algorithm 3) check whether the lens position is proper or not, using the focusing internal algorithm, too. (If the position is not proper, the image may looks defocused)
Quoted 4 lines
In the Normal AF mode, the sensor do the whole focusing process once, and after completing to move lens, even though the sensor failed focusing process. On the other hand, the sensor repeats 1~3 in the Continuous AF mode periodically, regardless of success of failure.
OK, that was my understanding as well. How will that work with the proposed focus menu control ? Don't you need a button control for normal auto-focus ?
Signature · 3 lines
Regards, Laurent Pinchart
Hi,
2011. 3. 3., 오후 10:24, Laurent Pinchart 작성:
Quoted 78 lines
Hi,
Quoted 75 lines · On Thursday 03 March 2011 14:17:10 Kim HeungJun wrote:
2011. 3. 3., 오후 7:08, Laurent Pinchart 작성:
Quoted 51 lines · HeungJun
Quoted 50 lines
Document about the type changes and the enumeration of the auto focus control.
Signed-off-by Heungjun Kim <[email protected]>Signed-off-by Kyungmin Park <[email protected]>---
Documentation/DocBook/v4l/controls.xml| 31
+++++++++++++++++++++++++---Documentation/DocBook/v4l/videodev2.h.xml| 6 +++++2 files changed, 33 insertions(+), 4 deletions(-)(quoted diff) +0
-0
b/Documentation/DocBook/v4l/controls.xmlindex 2fae3e8..889fa84 100644Documentation/DocBook/v4l/controls.xml +0
-0@@ -1801,12 +1801,35 @@ negative values towards infinity. This is awrite-only control.</entry> </row>
<row><entry></entry></row>Documentation/DocBook/v4l/controls.xml +1
-1- <row> + <row id="v4l2-focus-auto-type"><entry
spanname="id"><constant>V4L2_CID_FOCUS_AUTO</constant> </entry> - <entry>boolean</entry>
Documentation/DocBook/v4l/controls.xml +1
-0+ <entry>enum v4l2_focus_auto_type</entry></row><row><entry spanname="descr">Enables automatic focus
Documentation/DocBook/v4l/controls.xml +1
-2-adjustments. The effect of manual focus adjustments while this feature -is enabled is undefined, drivers should ignore such requests.</entry> +adjustments of the normal or macro or continuous(CAF) mode. The effectof +manual focus adjustments while this feature is enabled is undefined, +drivers should ignore such requests. Possible values
are:</entry> + </row>Documentation/DocBook/v4l/controls.xml +13
-0+ <row> + <entrytbl spanname="descr" cols="2"> + <tbody valign="top"> + <row> + <entry><constant>V4L2_FOCUS_MANUAL</constant> </entry> + <entry>Manual focus mode.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_AUTO</constant> </entry> + <entry>Auto focus mode with normal operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_MACRO</constant> </entry>Quoted 8 lines
Documentation/DocBook/v4l/controls.xml negative values towards infinity. This is a write-only control.</entry> · line 1829
Quoted 5 lines
Documentation/DocBook/v4l/controls.xml +5
-0+ <entry>Auto focus mode with macro operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_CONTINUOUS</constant> </entry> + <entry>Auto focus mode with continuous(CAF) operation.</entry>I should have asked this sooner, but what's the difference between normal AF and continuous AF ?
Let's assume that the whole focus process(of course the sensor-internal process automatically) is below : 1) pointing the object focussed
: mostly this is possible to be a middle spot, or pre-given orient x & : y set from register.
(The mode using given orient x & y, may be defined
V4L2_FOCUS_TOUCHor
whatever, but I know touch auto focus suggestion is determined nothing so far, because of that, after this I will suggest to discuss about it one more.) 2) starting and completing the move of the motor to control lens, using the focusing internal algorithm 3) check whether the lens position is proper or not, using the focusing internal algorithm, too. (If the position is not proper, the image may looks defocused)
Quoted 7 lines
Quoted 4 lines
In the Normal AF mode, the sensor do the whole focusing process once, and after completing to move lens, even though the sensor failed focusing process. On the other hand, the sensor repeats 1~3 in the Continuous AF mode periodically, regardless of success of failure.
OK, that was my understanding as well. How will that work with the proposed focus menu control ? Don't you need a button control for normal auto-focus ?
You mean that the normal auto-focus control type should be a button, right? For now, in our case the user application assumes that such modes(normal, MACRO, CAF, TOUCH or oriented mode, or something) are already ready in the driver. So, I did't need the normal auto-focus is a button type.
But, IMHO, the focus control of camera is right to follow the next procedure,
1) choosing the modes as I said upper. (because, the camera dose not have one more focus mode.)
2) adjusting the value of the mode set right before.
3) doing the action of the mode.
1) is the same call the control V4L2_AUTO_FOCUS of menu type.
2), 3) is the same call the control dedicated focus control. Currently, the focus control excepting manual is not needed another control. If touch mode are needed, we can add another enum value, e.g. V4L2_FOCUS_ORIENT. and add another dedicated control, e.g., V4L2_CID_FOCUS_ORIENT_X, V4L2_CID_FOCUS_ORIENT_Y.
I think this as I use digital camera. We normally follow such procedure, using the digital camera.
If I get your words wrongly, give me some clue :)
Thanks,
Heungjun Kim
Hi,
Quoted 106 lines · On Thursday 03 March 2011 15:34:36 Kim HeungJun wrote:
2011. 3. 3., 오후 10:24, Laurent Pinchart 작성:
Quoted 78 lines · On Thursday 03 March 2011 14:17:10 Kim HeungJun wrote:
Quoted 77 lines
2011. 3. 3., 오후 7:08, Laurent Pinchart 작성:
Quoted 51 lines · HeungJun
Quoted 50 lines
Document about the type changes and the enumeration of the auto focus control.
Signed-off-by Heungjun Kim <[email protected]>Signed-off-by Kyungmin Park <[email protected]>---
Documentation/DocBook/v4l/controls.xml| 31
+++++++++++++++++++++++++---Documentation/DocBook/v4l/videodev2.h.xml| 6 +++++2 files changed, 33 insertions(+), 4 deletions(-)(quoted diff) +0
-0
b/Documentation/DocBook/v4l/controls.xmlindex 2fae3e8..889fa84 100644Documentation/DocBook/v4l/controls.xml +0
-0@@ -1801,12 +1801,35 @@ negative values towards infinity. This is awrite-only control.</entry> </row>
<row><entry></entry></row>Documentation/DocBook/v4l/controls.xml +1
-1- <row> + <row id="v4l2-focus-auto-type"><entry
spanname="id"><constant>V4L2_CID_FOCUS_AUTO</constant> </entry> - <entry>boolean</entry>
Documentation/DocBook/v4l/controls.xml +1
-0+ <entry>enum v4l2_focus_auto_type</entry></row><row><entry spanname="descr">Enables automatic focus
-adjustments. The effect of manual focus adjustments while this feature -is enabled is undefined, drivers should ignore such requests.</entry> +adjustments of the normal or macro or continuous(CAF) mode. The effect of +manual focus adjustments while this feature is enabled is undefined, +drivers should ignore such
requests. Possible values are:</entry> + </row>Documentation/DocBook/v4l/controls.xml +13
-0+ <row> + <entrytbl spanname="descr" cols="2"> + <tbody valign="top"> + <row> + <entry><constant>V4L2_FOCUS_MANUAL</constant> </entry> + <entry>Manual focus mode.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_AUTO</constant> </entry> + <entry>Auto focus mode with normal operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_MACRO</constant> </entry>Quoted 8 lines
Documentation/DocBook/v4l/controls.xml negative values towards infinity. This is a write-only control.</entry> · line 1829
Quoted 5 lines
Documentation/DocBook/v4l/controls.xml +5
-0+ <entry>Auto focus mode with macro operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_CONTINUOUS</constant> </entry> + <entry>Auto focus mode with continuous(CAF) operation.</entry>I should have asked this sooner, but what's the difference between normal AF and continuous AF ?
Let's assume that the whole focus process(of course the sensor-internal process automatically) is below : 1) pointing the object focussed
: mostly this is possible to be a middle spot, or pre-given orient x : & y set from register.
(The mode using given orient x & y, may be defined
V4L2_FOCUS_TOUCHorwhatever, but I know touch auto focus suggestion is determined nothing so far, because of that, after this I will suggest to discuss about it one more.) 2) starting and completing the move of the motor to control lens, using the focusing internal algorithm 3) check whether the lens position is proper or not, using the focusing internal algorithm, too. (If the position is not proper, the image may looks defocused)
Quoted 8 lines
Quoted 4 lines
In the Normal AF mode, the sensor do the whole focusing process once, and after completing to move lens, even though the sensor failed focusing process. On the other hand, the sensor repeats 1~3 in the Continuous AF mode periodically, regardless of success of failure.
OK, that was my understanding as well. How will that work with the proposed focus menu control ? Don't you need a button control for normal auto-focus ?
You mean that the normal auto-focus control type should be a button, right? For now, in our case the user application assumes that such
modes(normal, MACRO, CAF, TOUCH or oriented mode, or something)are already ready in the driver. So, I did't need the normal auto-focus is a button type.But, IMHO, the focus control of camera is right to follow the next procedure, 1) choosing the modes as I said upper. (because, the camera dose not have one more focus mode.) 2) adjusting the value of the mode set right before.
3) doing the action of the mode.1) is the same call the control
V4L2_AUTO_FOCUSof menu type. 2), 3) is the same call the control dedicated focus control. Currently, the focus control excepting manual is not needed another control. If touch mode are needed, we can add another enum value, e.g.V4L2_FOCUS_ORIENT. and add another dedicated control, e.g.,V4L2_CID_FOCUS_ORIENT_X,V4L2_CID_FOCUS_ORIENT_Y.
Quoted 4 lines
I think this as I use digital camera. We normally follow such procedure, using the digital camera.
If I get your words wrongly, give me some clue :)
What happens when the user selects the V4L2_FOCUS_AUTO menu entry ? Will the camera start a one-shot auto-focus algorithm ? In that case, if the user is not happy with the result and wants to perform a new auto-focus, how will that be possible ? The V4L2_CID_FOCUS_AUTO control will already be in V4L2_FOCUS_AUTO mode.
Signature · 3 lines
Regards, Laurent Pinchart
2011. 3. 4., 오전 12:22, Laurent Pinchart 작성:
Quoted 112 lines
Hi,
Quoted 109 lines · On Thursday 03 March 2011 15:34:36 Kim HeungJun wrote:
2011. 3. 3., 오후 10:24, Laurent Pinchart 작성:
Quoted 78 lines · On Thursday 03 March 2011 14:17:10 Kim HeungJun wrote:
Quoted 77 lines
2011. 3. 3., 오후 7:08, Laurent Pinchart 작성:
Quoted 51 lines · HeungJun
Quoted 50 lines
Document about the type changes and the enumeration of the auto focus control.
Signed-off-by Heungjun Kim <[email protected]>Signed-off-by Kyungmin Park <[email protected]>---
Documentation/DocBook/v4l/controls.xml| 31
+++++++++++++++++++++++++---Documentation/DocBook/v4l/videodev2.h.xml| 6 +++++2 files changed, 33 insertions(+), 4 deletions(-)(quoted diff) +0
-0
b/Documentation/DocBook/v4l/controls.xmlindex 2fae3e8..889fa84 100644Documentation/DocBook/v4l/controls.xml +0
-0@@ -1801,12 +1801,35 @@ negative values towards infinity. This is awrite-only control.</entry> </row>
<row><entry></entry></row>Documentation/DocBook/v4l/controls.xml +1
-1- <row> + <row id="v4l2-focus-auto-type"><entry
spanname="id"><constant>V4L2_CID_FOCUS_AUTO</constant> </entry> - <entry>boolean</entry>
Documentation/DocBook/v4l/controls.xml +1
-0+ <entry>enum v4l2_focus_auto_type</entry></row><row><entry spanname="descr">Enables automatic focus
-adjustments. The effect of manual focus adjustments while this feature -is enabled is undefined, drivers should ignore such requests.</entry> +adjustments of the normal or macro or continuous(CAF) mode. The effect of +manual focus adjustments while this feature is enabled is undefined, +drivers should ignore such
requests. Possible values are:</entry> + </row>Documentation/DocBook/v4l/controls.xml +13
-0+ <row> + <entrytbl spanname="descr" cols="2"> + <tbody valign="top"> + <row> + <entry><constant>V4L2_FOCUS_MANUAL</constant> </entry> + <entry>Manual focus mode.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_AUTO</constant> </entry> + <entry>Auto focus mode with normal operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_MACRO</constant> </entry>Quoted 8 lines
Documentation/DocBook/v4l/controls.xml negative values towards infinity. This is a write-only control.</entry> · line 1829
Quoted 5 lines
Documentation/DocBook/v4l/controls.xml +5
-0+ <entry>Auto focus mode with macro operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_CONTINUOUS</constant> </entry> + <entry>Auto focus mode with continuous(CAF) operation.</entry>I should have asked this sooner, but what's the difference between normal AF and continuous AF ?
Let's assume that the whole focus process(of course the sensor-internal process automatically) is below : 1) pointing the object focussed
: mostly this is possible to be a middle spot, or pre-given orient x : & y set from register.
(The mode using given orient x & y, may be defined
V4L2_FOCUS_TOUCHorwhatever, but I know touch auto focus suggestion is determined nothing so far, because of that, after this I will suggest to discuss about it one more.) 2) starting and completing the move of the motor to control lens, using the focusing internal algorithm 3) check whether the lens position is proper or not, using the focusing internal algorithm, too. (If the position is not proper, the image may looks defocused)
Quoted 8 lines
Quoted 4 lines
In the Normal AF mode, the sensor do the whole focusing process once, and after completing to move lens, even though the sensor failed focusing process. On the other hand, the sensor repeats 1~3 in the Continuous AF mode periodically, regardless of success of failure.
OK, that was my understanding as well. How will that work with the proposed focus menu control ? Don't you need a button control for normal auto-focus ?
You mean that the normal auto-focus control type should be a button, right? For now, in our case the user application assumes that such
modes(normal, MACRO, CAF, TOUCH or oriented mode, or something)are already ready in the driver. So, I did't need the normal auto-focus is a button type.But, IMHO, the focus control of camera is right to follow the next procedure, 1) choosing the modes as I said upper. (because, the camera dose not have one more focus mode.) 2) adjusting the value of the mode set right before.
3) doing the action of the mode.1) is the same call the control
V4L2_AUTO_FOCUSof menu type. 2), 3) is the same call the control dedicated focus control. Currently, the focus control excepting manual is not needed another control. If touch mode are needed, we can add another enum value, e.g.V4L2_FOCUS_ORIENT. and add another dedicated control, e.g.,V4L2_CID_FOCUS_ORIENT_X,V4L2_CID_FOCUS_ORIENT_Y.I think this as I use digital camera. We normally follow such procedure, using the digital camera.
Quoted 7 lines
Quoted 1 line
If I get your words wrongly, give me some clue :)
What happens when the user selects the
V4L2_FOCUS_AUTOmenu entry ? Will the camera start a one-shot auto-focus algorithm ? In that case, if the user is not happy with the result and wants to perform a new auto-focus, how will that be possible ? TheV4L2_CID_FOCUS_AUTOcontrol will already be inV4L2_FOCUS_AUTOmode.
You're right. I confused the orders and contents. So, I'm going to explain my thought again.
The 1), 2), 3) is just the action unit for focus. Just ignore the order in the case of human thought. On the other hand, 2) should be done in the driver first. And 1), 3) are happened at the same time in the driver.
I intend to say, the each focus action unit is the same with human thought and driver, even though the procedure order is different between the human and driver.
Sorry to confuse you.
Regards,
Heungjun Kim
Hi HeungJun,
Quoted 112 lines · Laurent Pinchart
Hi,
Quoted 109 lines · On Thursday 03 March 2011 15:34:36 Kim HeungJun wrote:
2011. 3. 3., 오후 10:24, Laurent Pinchart 작성:
Quoted 78 lines · On Thursday 03 March 2011 14:17:10 Kim HeungJun wrote:
Quoted 77 lines
2011. 3. 3., 오후 7:08, Laurent Pinchart 작성:
Quoted 51 lines · HeungJun
Quoted 50 lines
Document about the type changes and the enumeration of the auto focus control.
Signed-off-by Heungjun Kim<[email protected]>Signed-off-by Kyungmin Park<[email protected]>---
Documentation/DocBook/v4l/controls.xml| 31
+++++++++++++++++++++++++---Documentation/DocBook/v4l/videodev2.h.xml| 6 +++++2 files changed, 33 insertions(+), 4 deletions(-)(quoted diff) +0
-0
b/Documentation/DocBook/v4l/controls.xmlindex 2fae3e8..889fa84 100644Documentation/DocBook/v4l/controls.xml +0
-0@@ -1801,12 +1801,35 @@ negative values towards infinity. This is awrite-only control.</entry> </row>
<row><entry></entry></row>Documentation/DocBook/v4l/controls.xml +1
-1- <row> + <row id="v4l2-focus-auto-type"><entry
spanname="id"><constant>V4L2_CID_FOCUS_AUTO</constant> </entry> - <entry>boolean</entry>
Documentation/DocBook/v4l/controls.xml +1
-0+ <entry>enum v4l2_focus_auto_type</entry></row><row><entry spanname="descr">Enables automatic focus
-adjustments. The effect of manual focus adjustments while this feature -is enabled is undefined, drivers should ignore such requests.</entry> +adjustments of the normal or macro or continuous(CAF) mode. The effect of +manual focus adjustments while this feature is enabled is undefined, +drivers should ignore such
requests. Possible values are:</entry> + </row>Documentation/DocBook/v4l/controls.xml +13
-0+ <row> + <entrytbl spanname="descr" cols="2"> + <tbody valign="top"> + <row> + <entry><constant>V4L2_FOCUS_MANUAL</constant> </entry> + <entry>Manual focus mode.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_AUTO</constant> </entry> + <entry>Auto focus mode with normal operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_MACRO</constant> </entry>Quoted 8 lines
Documentation/DocBook/v4l/controls.xml negative values towards infinity. This is a write-only control.</entry> · line 1829
Quoted 5 lines
Documentation/DocBook/v4l/controls.xml +5
-0+ <entry>Auto focus mode with macro operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_CONTINUOUS</constant> </entry> + <entry>Auto focus mode with continuous(CAF) operation.</entry>I should have asked this sooner, but what's the difference between normal AF and continuous AF ?
Let's assume that the whole focus process(of course the sensor-internal process automatically) is below : 1) pointing the object focussed
: mostly this is possible to be a middle spot, or pre-given orient x :& y set from register.
(The mode using given orient x& y, may be defined
V4L2_FOCUS_TOUCHorwhatever, but I know touch auto focus suggestion is determined nothing so far, because of that, after this I will suggest to discuss about it one more.) 2) starting and completing the move of the motor to control lens, using the focusing internal algorithm 3) check whether the lens position is proper or not, using the focusing internal algorithm, too. (If the position is not proper, the image may looks defocused)
Quoted 8 lines
Quoted 4 lines
In the Normal AF mode, the sensor do the whole focusing process once, and after completing to move lens, even though the sensor failed focusing process. On the other hand, the sensor repeats 1~3 in the Continuous AF mode periodically, regardless of success of failure.
OK, that was my understanding as well. How will that work with the proposed focus menu control ? Don't you need a button control for normal auto-focus ?
You mean that the normal auto-focus control type should be a button, right? For now, in our case the user application assumes that such
modes(normal, MACRO, CAF, TOUCH or oriented mode, or something)are already ready in the driver. So, I did't need the normal auto-focus is a button type.But, IMHO, the focus control of camera is right to follow the next procedure, 1) choosing the modes as I said upper. (because, the camera dose not have one more focus mode.) 2) adjusting the value of the mode set right before.
3) doing the action of the mode.1) is the same call the control
V4L2_AUTO_FOCUSof menu type. 2), 3) is the same call the control dedicated focus control. Currently, the focus control excepting manual is not needed another control. If touch mode are needed, we can add another enum value, e.g.V4L2_FOCUS_ORIENT. and add another dedicated control, e.g.,V4L2_CID_FOCUS_ORIENT_X,V4L2_CID_FOCUS_ORIENT_Y.I think this as I use digital camera. We normally follow such procedure, using the digital camera.
Quoted 8 lines
Quoted 1 line
If I get your words wrongly, give me some clue :)
What happens when the user selects the
V4L2_FOCUS_AUTOmenu entry ? Will the camera start a one-shot auto-focus algorithm ? In that case, if the user is not happy with the result and wants to perform a new auto-focus, how will that be possible ? TheV4L2_CID_FOCUS_AUTOcontrol will already be inV4L2_FOCUS_AUTOmode.
IIUC normally in digital cameras the shutter button is being pressed half way to start operation in the selected focus mode. Having only your new menu control I'm not sure how we do re-focus on a new object after V4L2_FOCUS_AUTO menu entry is selected.
Do we need to switch to V4L2_FOCUS_MANUAL and then back to V4L2_FOCUS_AUTO to achieve this? Could you explain again please?
--
Regards,
Sylwester Nawrocki
Hi Sylwester,
2011-03-09 오전 8:08, Sylwester Nawrocki 쓴 글:
Quoted 124 lines
Hi HeungJun,
Quoted 112 lines · Laurent Pinchart
Hi,
Quoted 109 lines · On Thursday 03 March 2011 15:34:36 Kim HeungJun wrote:
2011. 3. 3., 오후 10:24, Laurent Pinchart 작성:
Quoted 78 lines · On Thursday 03 March 2011 14:17:10 Kim HeungJun wrote:
Quoted 77 lines
2011. 3. 3., 오후 7:08, Laurent Pinchart 작성:
Quoted 51 lines · HeungJun
Quoted 50 lines
Document about the type changes and the enumeration of the auto focus control.
Signed-off-by Heungjun Kim<[email protected]>Signed-off-by Kyungmin Park<[email protected]>---
Documentation/DocBook/v4l/controls.xml| 31
+++++++++++++++++++++++++---Documentation/DocBook/v4l/videodev2.h.xml| 6 +++++2 files changed, 33 insertions(+), 4 deletions(-)(quoted diff) +0
-0
b/Documentation/DocBook/v4l/controls.xmlindex 2fae3e8..889fa84 100644Documentation/DocBook/v4l/controls.xml +0
-0@@ -1801,12 +1801,35 @@ negative values towards infinity. This is awrite-only control.</entry> </row>
<row><entry></entry></row>Documentation/DocBook/v4l/controls.xml +1
-1- <row> + <row id="v4l2-focus-auto-type"><entry
spanname="id"><constant>V4L2_CID_FOCUS_AUTO</constant> </entry> - <entry>boolean</entry>
Documentation/DocBook/v4l/controls.xml +1
-0+ <entry>enum v4l2_focus_auto_type</entry></row><row><entry spanname="descr">Enables automatic focus
-adjustments. The effect of manual focus adjustments while this feature -is enabled is undefined, drivers should ignore such requests.</entry> +adjustments of the normal or macro or continuous(CAF) mode. The effect of +manual focus adjustments while this feature is enabled is undefined, +drivers should ignore such
requests. Possible values are:</entry> + </row>Documentation/DocBook/v4l/controls.xml +13
-0+ <row> + <entrytbl spanname="descr" cols="2"> + <tbody valign="top"> + <row> + <entry><constant>V4L2_FOCUS_MANUAL</constant> </entry> + <entry>Manual focus mode.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_AUTO</constant> </entry> + <entry>Auto focus mode with normal operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_MACRO</constant> </entry>Quoted 8 lines
Documentation/DocBook/v4l/controls.xml
Quoted 5 lines
Documentation/DocBook/v4l/controls.xml +5
-0+ <entry>Auto focus mode with macro operation.</entry> + </row> + <row> + <entry><constant>V4L2_FOCUS_CONTINUOUS</constant> </entry> + <entry>Auto focus mode with continuous(CAF) operation.</entry>I should have asked this sooner, but what's the difference between normal AF and continuous AF ?
Let's assume that the whole focus process(of course the sensor-internal process automatically) is below : 1) pointing the object focussed
: mostly this is possible to be a middle spot, or pre-given orient x :& y set from register.
(The mode using given orient x& y, may be defined
V4L2_FOCUS_TOUCHorwhatever, but I know touch auto focus suggestion is determined nothing so far, because of that, after this I will suggest to discuss about it one more.) 2) starting and completing the move of the motor to control lens, using the focusing internal algorithm 3) check whether the lens position is proper or not, using the focusing internal algorithm, too. (If the position is not proper, the image may looks defocused)
Quoted 8 lines
Quoted 4 lines
In the Normal AF mode, the sensor do the whole focusing process once, and after completing to move lens, even though the sensor failed focusing process. On the other hand, the sensor repeats 1~3 in the Continuous AF mode periodically, regardless of success of failure.
OK, that was my understanding as well. How will that work with the proposed focus menu control ? Don't you need a button control for normal auto-focus ?
You mean that the normal auto-focus control type should be a button, right? For now, in our case the user application assumes that such
modes(normal, MACRO, CAF, TOUCH or oriented mode, or something)are already ready in the driver. So, I did't need the normal auto-focus is a button type.But, IMHO, the focus control of camera is right to follow the next procedure, 1) choosing the modes as I said upper. (because, the camera dose not have one more focus mode.) 2) adjusting the value of the mode set right before.
3) doing the action of the mode.1) is the same call the control
V4L2_AUTO_FOCUSof menu type. 2), 3) is the same call the control dedicated focus control. Currently, the focus control excepting manual is not needed another control. If touch mode are needed, we can add another enum value, e.g.V4L2_FOCUS_ORIENT. and add another dedicated control, e.g.,V4L2_CID_FOCUS_ORIENT_X,V4L2_CID_FOCUS_ORIENT_Y.I think this as I use digital camera. We normally follow such procedure, using the digital camera.
Quoted 8 lines
Quoted 1 line
If I get your words wrongly, give me some clue :)
What happens when the user selects the
V4L2_FOCUS_AUTOmenu entry ? Will the camera start a one-shot auto-focus algorithm ? In that case, if the user is not happy with the result and wants to perform a new auto-focus, how will that be possible ? TheV4L2_CID_FOCUS_AUTOcontrol will already be inV4L2_FOCUS_AUTOmode.
Quoted 6 lines
IIUC normally in digital cameras the shutter button is being pressed half way to start operation in the selected focus mode. Having only your new menu control I'm not sure how we do re-focus on a new object after
V4L2_FOCUS_AUTOmenu entry is selected.
Do we need to switch toV4L2_FOCUS_MANUALand then back toV4L2_FOCUS_AUTOto achieve this? Could you explain again please?
There is a gap using the type of GUI button on screen or real button, especially when we're discussing about digital camera. The managing real button implies more having possibility than dealing with GUI button. The real button makes the cpu recognize event using interrupt or polling whatever, and then, if it's ok, the userapplication let the v4l2-framework handle this event how to control camera. But, it can be changed. Another input methods exist possibly.
In other words, the real user press/re-press the *real* button is input event side, not v4l2 side, I think.
If the users(real camera user, not user application) press the button, and then the camera do the focus. When the users see unfocused images, they press the butten one more time for another re-focusing, at that time they must detach the button, and the camera(device) can check this event.
If detaching recognized, digital camera userland can do V4L2_FOCUS_MANUAL or some stuff as the camera needed.
For doing this more precisely, the userapp can get the feedback of the focus status, because the full focusing time goes about 3~4 seconds, and the focus status depends on how to determine the next control and preparing for user application. But, I have not find proper things yet, and IMHO, for doing as your words, we can get the feedback first. For now, we can call control just twice to do the focus, although it's not a perfect focusing job.
If we start to think the focus feedback, we must check more thing we expected. For examples, preventing the stop or being slow while focusing in the preview, and the methods getting the status for generic API, and when the sensor notifies the status of focus, etc. But, sooner, this will be need I think.
Let me know another opinions. :)
Quoted 6 lines
--
Regards,
Sylwester Nawrocki
Thanks,
Heungjun Kim