[RFC 0/5] Introduce drm sharpening property
Garg, Nemesa
nemesa.garg at intel.com
Mon Mar 4 14:04:27 UTC 2024
This is generic as sharpness effect is applied post blending. Depending on the color gamut, pixel format and other inputs the image gets blended and once we get blended output it can be sharpened based on strength value provided by the user.
On intel platform it is implemented through pipe scaler. Pipe scaler can be used as either scaler or sharpness filter. As mentioned earlier the client can provide any strength value between 0-255 or any other scale based on discussions. Perhaps userspace can have provide options like low-med-high sharpness or in percentage form or steps which is mapped to 0-255.
I will add the documentation regarding property.
> -----Original Message-----
> From: dri-devel <dri-devel-bounces at lists.freedesktop.org> On Behalf Of Pekka
> Paalanen
> Sent: Friday, February 16, 2024 2:06 PM
> To: Garg, Nemesa <nemesa.garg at intel.com>
> Cc: Simon Ser <contact at emersion.fr>; intel-gfx at lists.freedesktop.org; dri-
> devel at lists.freedesktop.org; G M, Adarsh <adarsh.g.m at intel.com>
> Subject: Re: [RFC 0/5] Introduce drm sharpening property
>
> On Fri, 16 Feb 2024 04:28:41 +0000
> "Garg, Nemesa" <nemesa.garg at intel.com> wrote:
>
> > It is not intel specific and the goal is to have a generic API for
> > configuring Sharpness, accessible to various vendors. Intel currently
> > offers sharpness support through the Display Engine, while other
> > vendors seem to support Sharpness through the GPU using GL shaders
> > (Vulcan/Open GL based).
>
> Do you mean that all vendors use the exact same mathematical algorithm (with
> only differences in operation precision at most)?
>
> If yes, good.
>
> If not, then we need to know where exactly in the virtual KMS color pipeline the
> operation happens, whether this can be generic or not.
>
> Does this also work the same regardless of pixel formats, dynamic range, color
> gamut, transfer functions etc. on both plane input and connector output
> configurations?
>
> > In terms of sharpness intensity adjustment, the plan is to provide
> > users with the ability to customize and regulate sharpness levels. We
> > suggest setting a minimum and maximum strength range from 1 to 255,
> > where a value of 0 signifies that the sharpness feature is disabled,
> > indicated by a u8 data type. For now we have mapped the strength value
> > 0.0 to 14.9375 to 0-239 but as the datatype is u8 user can give value
> > upto 255 which is gets clamped to 239.
>
> Naturally you will need to document all that, so that all drivers and vendors do the
> exact same thing.
>
> I did not see any actual documentation in the patch series yet, e.g. a reference to
> a specific algorithm.
>
> As Ville pointed out, there was also no specification at which point of the virtual
> color pipeline this operation will apply. Before/after
> DEGAMMA/CTM/GAMMA/scaling in plane/blending/CRTC?
>
> Is the property being added to the list in
> https://dri.freedesktop.org/docs/drm/gpu/drm-kms.html#standard-crtc-
> properties
> or where-ever it belongs?
>
>
> Thanks,
> pq
>
> > We are also open to have alternative scales, such as 1-100 or 1-10, as
> > long as a general consensus is reached within the community comprising
> > OEMs and vendors.
> >
> > > -----Original Message-----
> > > From: Simon Ser <contact at emersion.fr>
> > > Sent: Thursday, February 15, 2024 2:03 PM
> > > To: Garg, Nemesa <nemesa.garg at intel.com>
> > > Cc: intel-gfx at lists.freedesktop.org; dri-devel at lists.freedesktop.org
> > > Subject: Re: [RFC 0/5] Introduce drm sharpening property
> > >
> > > How much of this is Intel-specific? Are there any hardware vendors
> > > with a similar feature? How much is the "sharpness" knob tied to
> > > Intel hardware?
More information about the Intel-gfx
mailing list