linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] Documentation: media: *_DEFAULT targets for subdevs
@ 2019-10-24 12:35 Ricardo Ribalda Delgado
  2019-10-24 12:35 ` [PATCH v2] v4l2-compliance: Allow all the selection " Ricardo Ribalda Delgado
  2019-10-24 13:33 ` [PATCH v2] Documentation: media: *_DEFAULT " Sakari Ailus
  0 siblings, 2 replies; 5+ messages in thread
From: Ricardo Ribalda Delgado @ 2019-10-24 12:35 UTC (permalink / raw)
  To: hverkuil-cisco, sakari.ailus, linux-media, linux-kernel
  Cc: Ricardo Ribalda Delgado

Some sensors have optical blanking areas, this is, pixels that are
painted and do not account for light, only noise.

These special pixels are very useful for calibrating the sensor, but
should not be displayed on a DEFAULT target.

Signed-off-by: Ricardo Ribalda Delgado <ribalda@kernel.org>
---

v2: Changes by Sakari Ailus <sakari.ailus@linux.intel.com>

Only change CROP_DEFAULT

 Documentation/media/uapi/v4l/v4l2-selection-targets.rst | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/Documentation/media/uapi/v4l/v4l2-selection-targets.rst b/Documentation/media/uapi/v4l/v4l2-selection-targets.rst
index f74f239b0510..41c6674ec283 100644
--- a/Documentation/media/uapi/v4l/v4l2-selection-targets.rst
+++ b/Documentation/media/uapi/v4l/v4l2-selection-targets.rst
@@ -38,8 +38,10 @@ of the two interfaces they are used.
     * - ``V4L2_SEL_TGT_CROP_DEFAULT``
       - 0x0001
       - Suggested cropping rectangle that covers the "whole picture".
+        This includes only active pixels and excludes other non-active
+        pixels such as black pixels.
+      - Yes
       - Yes
-      - No
     * - ``V4L2_SEL_TGT_CROP_BOUNDS``
       - 0x0002
       - Bounds of the crop rectangle. All valid crop rectangles fit inside
@@ -61,7 +63,7 @@ of the two interfaces they are used.
       - 0x0101
       - Suggested composition rectangle that covers the "whole picture".
       - Yes
-      - No
+      - Yes
     * - ``V4L2_SEL_TGT_COMPOSE_BOUNDS``
       - 0x0102
       - Bounds of the compose rectangle. All valid compose rectangles fit
-- 
2.23.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH v2] v4l2-compliance: Allow all the selection targets for subdevs
  2019-10-24 12:35 [PATCH v2] Documentation: media: *_DEFAULT targets for subdevs Ricardo Ribalda Delgado
@ 2019-10-24 12:35 ` Ricardo Ribalda Delgado
  2019-10-24 13:33 ` [PATCH v2] Documentation: media: *_DEFAULT " Sakari Ailus
  1 sibling, 0 replies; 5+ messages in thread
From: Ricardo Ribalda Delgado @ 2019-10-24 12:35 UTC (permalink / raw)
  To: hverkuil-cisco, sakari.ailus, linux-media, linux-kernel
  Cc: Ricardo Ribalda Delgado

Subdev can also have non-active pixels, and using the _DEFAULT targets
we can capture only the active pixels.

Signed-off-by: Ricardo Ribalda Delgado <ribalda@kernel.org>
---
 utils/v4l2-compliance/v4l2-test-subdevs.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/utils/v4l2-compliance/v4l2-test-subdevs.cpp b/utils/v4l2-compliance/v4l2-test-subdevs.cpp
index 29987b31..c3979404 100644
--- a/utils/v4l2-compliance/v4l2-test-subdevs.cpp
+++ b/utils/v4l2-compliance/v4l2-test-subdevs.cpp
@@ -395,11 +395,11 @@ struct target_info {
 
 static target_info targets[] = {
 	{ V4L2_SEL_TGT_CROP, true },
-	{ V4L2_SEL_TGT_CROP_DEFAULT, false, true },
+	{ V4L2_SEL_TGT_CROP_DEFAULT, true, true },
 	{ V4L2_SEL_TGT_CROP_BOUNDS, true, true },
 	{ V4L2_SEL_TGT_NATIVE_SIZE, true },
 	{ V4L2_SEL_TGT_COMPOSE, true },
-	{ V4L2_SEL_TGT_COMPOSE_DEFAULT, false, true },
+	{ V4L2_SEL_TGT_COMPOSE_DEFAULT, true, true },
 	{ V4L2_SEL_TGT_COMPOSE_BOUNDS, true, true },
 	{ V4L2_SEL_TGT_COMPOSE_PADDED, false, true },
 	{ ~0U },
-- 
2.23.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH v2] Documentation: media: *_DEFAULT targets for subdevs
  2019-10-24 12:35 [PATCH v2] Documentation: media: *_DEFAULT targets for subdevs Ricardo Ribalda Delgado
  2019-10-24 12:35 ` [PATCH v2] v4l2-compliance: Allow all the selection " Ricardo Ribalda Delgado
@ 2019-10-24 13:33 ` Sakari Ailus
  2019-10-24 13:43   ` Ricardo Ribalda Delgado
  1 sibling, 1 reply; 5+ messages in thread
From: Sakari Ailus @ 2019-10-24 13:33 UTC (permalink / raw)
  To: Ricardo Ribalda Delgado; +Cc: hverkuil-cisco, linux-media, linux-kernel

Hi Ricardo,

On Thu, Oct 24, 2019 at 02:35:25PM +0200, Ricardo Ribalda Delgado wrote:
> Some sensors have optical blanking areas, this is, pixels that are
> painted and do not account for light, only noise.
> 
> These special pixels are very useful for calibrating the sensor, but
> should not be displayed on a DEFAULT target.
> 
> Signed-off-by: Ricardo Ribalda Delgado <ribalda@kernel.org>
> ---
> 
> v2: Changes by Sakari Ailus <sakari.ailus@linux.intel.com>
> 
> Only change CROP_DEFAULT
> 
>  Documentation/media/uapi/v4l/v4l2-selection-targets.rst | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/Documentation/media/uapi/v4l/v4l2-selection-targets.rst b/Documentation/media/uapi/v4l/v4l2-selection-targets.rst
> index f74f239b0510..41c6674ec283 100644
> --- a/Documentation/media/uapi/v4l/v4l2-selection-targets.rst
> +++ b/Documentation/media/uapi/v4l/v4l2-selection-targets.rst
> @@ -38,8 +38,10 @@ of the two interfaces they are used.
>      * - ``V4L2_SEL_TGT_CROP_DEFAULT``
>        - 0x0001
>        - Suggested cropping rectangle that covers the "whole picture".
> +        This includes only active pixels and excludes other non-active
> +        pixels such as black pixels.
> +      - Yes
>        - Yes
> -      - No
>      * - ``V4L2_SEL_TGT_CROP_BOUNDS``
>        - 0x0002
>        - Bounds of the crop rectangle. All valid crop rectangles fit inside
> @@ -61,7 +63,7 @@ of the two interfaces they are used.
>        - 0x0101
>        - Suggested composition rectangle that covers the "whole picture".
>        - Yes
> -      - No
> +      - Yes

This is COMPOSE_DEFAULT that wasn't meant to be changed. So with this chunk
dropped,

Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>

>      * - ``V4L2_SEL_TGT_COMPOSE_BOUNDS``
>        - 0x0102
>        - Bounds of the compose rectangle. All valid compose rectangles fit

-- 
Sakari Ailus
sakari.ailus@linux.intel.com

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v2] Documentation: media: *_DEFAULT targets for subdevs
  2019-10-24 13:33 ` [PATCH v2] Documentation: media: *_DEFAULT " Sakari Ailus
@ 2019-10-24 13:43   ` Ricardo Ribalda Delgado
  2019-10-24 14:04     ` Sakari Ailus
  0 siblings, 1 reply; 5+ messages in thread
From: Ricardo Ribalda Delgado @ 2019-10-24 13:43 UTC (permalink / raw)
  To: Sakari Ailus; +Cc: Hans Verkuil, linux-media, LKML

Hi Sakari

Lets say the user wants to select the active pixels. He needs to set
the crop and the compose.

1) he gets V4L2_SEL_TGT_CROP_DEFAULT

2) he sets V4L2_SEL_TGT_CROP

How does he knows which compose to use? What if the compose starts at
(0,0) instead of (32,32)....?

I think it is easier if

3) he gets V4L2_SEL_TGT_COMPOSE_DEFAULT

4) he sets V4L2_SEL_TGT_COMPOSE

This is similar as how we do it today with a v4l2_device. What if we
simply replicate that behaviour?


Best regards

On Thu, Oct 24, 2019 at 3:32 PM Sakari Ailus
<sakari.ailus@linux.intel.com> wrote:
>
> Hi Ricardo,
>
> On Thu, Oct 24, 2019 at 02:35:25PM +0200, Ricardo Ribalda Delgado wrote:
> > Some sensors have optical blanking areas, this is, pixels that are
> > painted and do not account for light, only noise.
> >
> > These special pixels are very useful for calibrating the sensor, but
> > should not be displayed on a DEFAULT target.
> >
> > Signed-off-by: Ricardo Ribalda Delgado <ribalda@kernel.org>
> > ---
> >
> > v2: Changes by Sakari Ailus <sakari.ailus@linux.intel.com>
> >
> > Only change CROP_DEFAULT
> >
> >  Documentation/media/uapi/v4l/v4l2-selection-targets.rst | 6 ++++--
> >  1 file changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/Documentation/media/uapi/v4l/v4l2-selection-targets.rst b/Documentation/media/uapi/v4l/v4l2-selection-targets.rst
> > index f74f239b0510..41c6674ec283 100644
> > --- a/Documentation/media/uapi/v4l/v4l2-selection-targets.rst
> > +++ b/Documentation/media/uapi/v4l/v4l2-selection-targets.rst
> > @@ -38,8 +38,10 @@ of the two interfaces they are used.
> >      * - ``V4L2_SEL_TGT_CROP_DEFAULT``
> >        - 0x0001
> >        - Suggested cropping rectangle that covers the "whole picture".
> > +        This includes only active pixels and excludes other non-active
> > +        pixels such as black pixels.
> > +      - Yes
> >        - Yes
> > -      - No
> >      * - ``V4L2_SEL_TGT_CROP_BOUNDS``
> >        - 0x0002
> >        - Bounds of the crop rectangle. All valid crop rectangles fit inside
> > @@ -61,7 +63,7 @@ of the two interfaces they are used.
> >        - 0x0101
> >        - Suggested composition rectangle that covers the "whole picture".
> >        - Yes
> > -      - No
> > +      - Yes
>
> This is COMPOSE_DEFAULT that wasn't meant to be changed. So with this chunk
> dropped,
>
> Acked-by: Sakari Ailus <sakari.ailus@linux.intel.com>
>
> >      * - ``V4L2_SEL_TGT_COMPOSE_BOUNDS``
> >        - 0x0102
> >        - Bounds of the compose rectangle. All valid compose rectangles fit
>
> --
> Sakari Ailus
> sakari.ailus@linux.intel.com

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH v2] Documentation: media: *_DEFAULT targets for subdevs
  2019-10-24 13:43   ` Ricardo Ribalda Delgado
@ 2019-10-24 14:04     ` Sakari Ailus
  0 siblings, 0 replies; 5+ messages in thread
From: Sakari Ailus @ 2019-10-24 14:04 UTC (permalink / raw)
  To: Ricardo Ribalda Delgado; +Cc: Hans Verkuil, linux-media, LKML

Hi Ricardo,

On Thu, Oct 24, 2019 at 03:43:36PM +0200, Ricardo Ribalda Delgado wrote:
> Hi Sakari
> 
> Lets say the user wants to select the active pixels. He needs to set
> the crop and the compose.
> 
> 1) he gets V4L2_SEL_TGT_CROP_DEFAULT
> 
> 2) he sets V4L2_SEL_TGT_CROP
> 
> How does he knows which compose to use? What if the compose starts at
> (0,0) instead of (32,32)....?
> 
> I think it is easier if
> 
> 3) he gets V4L2_SEL_TGT_COMPOSE_DEFAULT
> 
> 4) he sets V4L2_SEL_TGT_COMPOSE
> 
> This is similar as how we do it today with a v4l2_device. What if we
> simply replicate that behaviour?

The compose rectangle is relative to the crop rectangle (if there's a crop
rectangle), and always starts at 0,0.

See:

<URL:https://hverkuil.home.xs4all.nl/spec/uapi/v4l/dev-subdev.html#selections-cropping-scaling-and-composition>

-- 
Sakari Ailus
sakari.ailus@linux.intel.com

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-10-24 14:03 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-24 12:35 [PATCH v2] Documentation: media: *_DEFAULT targets for subdevs Ricardo Ribalda Delgado
2019-10-24 12:35 ` [PATCH v2] v4l2-compliance: Allow all the selection " Ricardo Ribalda Delgado
2019-10-24 13:33 ` [PATCH v2] Documentation: media: *_DEFAULT " Sakari Ailus
2019-10-24 13:43   ` Ricardo Ribalda Delgado
2019-10-24 14:04     ` Sakari Ailus

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).