public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Hans Verkuil <hverkuil@xs4all.nl>
Cc: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>,
	linux-media@vger.kernel.org, linux-renesas-soc@vger.kernel.org
Subject: Re: [PATCH v2 01/54] media: Add video processing entity functions
Date: Fri, 25 Mar 2016 15:57:59 +0200	[thread overview]
Message-ID: <2937847.V0nXsyfMKG@avalon> (raw)
In-Reply-To: <56F532AB.3000107@xs4all.nl>

Hi Hans,

On Friday 25 Mar 2016 13:44:27 Hans Verkuil wrote:
> On 03/25/2016 11:43 AM, Laurent Pinchart wrote:
> > Add composer, format converter and scaler functions, as well as generic
> > video processing to be used when no other processing function is
> > applicable.
> > 
> > Signed-off-by: Laurent Pinchart
> > <laurent.pinchart+renesas@ideasonboard.com>
> > ---
> > 
> >  Documentation/DocBook/media/v4l/media-types.xml | 34 ++++++++++++++++++++
> >  include/uapi/linux/media.h                      |  8 ++++++
> >  2 files changed, 42 insertions(+)
> > 
> > diff --git a/Documentation/DocBook/media/v4l/media-types.xml
> > b/Documentation/DocBook/media/v4l/media-types.xml index
> > 5e3f20fdcf17..a6e171e80bce 100644
> > --- a/Documentation/DocBook/media/v4l/media-types.xml
> > +++ b/Documentation/DocBook/media/v4l/media-types.xml
> > @@ -121,6 +121,40 @@
> > 
> >  	    <entry><constant>MEDIA_ENT_F_AUDIO_MIXER</constant></entry>
> >  	    <entry>Audio Mixer Function Entity.</entry>
> >  	  
> >  	  </row>
> > 
> > +	  <row>
> > +	    
<entry><constant>MEDIA_ENT_F_PROC_VIDEO_GENERIC</constant></entry>
> > +	    <entry>Generic video processing, when no other processing 
function
> > +		   is applicable.
> > +	    </entry>
> 
> Does someone in this patch series use this one? If not, then just drop it.
> And if there is one, which patch is it?

Yes, I have three entities using this, two look up tables (1D and 3D) and an 
entity handling the interface between the VSP and the display device.

> > +	  <row>
> > +	    
<entry><constant>MEDIA_ENT_F_PROC_VIDEO_COMPOSER</constant></entry>
> > +	    <entry>Video composer (blender). An entity capable of video
> > +		   composing must have at least two sink pads and one source
> > +		   pad, and composes input video frames onto output video
> > +		   frames. Composition can be performed using alpha blending,
> > +		   color keying, raster operations (ROP), stitching or any other
> > +		   mean.
> 
> s/mean/means/

Will fix, thanks.

> > +	    </entry>
> > +	  </row>
> > +	  </row>
> > +	    
<entry><constant>MEDIA_ENT_F_PROC_VIDEO_CONVERTER</constant></entry>
> > +	    <entry>Video format converter. An entity capable of video format
> > +		   conversion must have at least one sink pad and one source
> > +		   pad, and convert the format of pixels received on its sink
> > +		   pad(s) to a different format output on its source pad(s).
> > +	    </entry>
> 
> Does this cover a de-interlacer?

Deinterlacing and pixel format conversion seem to be different concepts to me, 
I wouldn't include deinterlacers here.

> > +	  </row>
> > +	  <row>
> > +	    <entry><constant>MEDIA_ENT_F_PROC_VIDEO_SCALER</constant></entry>
> > +	    <entry>Video scaler. An entity capable of video scaling must have
> > +		   at least one sink pad and one source pad, and scaling the
> > +		   video frame(s) received on its sink pad(s) to a different
> > +		   resolution output on its source pad(s). The range of
> > +		   supported scaling ratios is entity-specific and can differ
> > +		   between the horizontal and vertical directions. In particular
> > +		   scaling can be supported in one direction only.
> > +	    </entry>
> > +	  </row>
> > 
> >  	</tbody>
> >  	
> >        </tgroup>
> >      
> >      </table>
> 
> Regards,
> 
> 	Hans
> 
> > diff --git a/include/uapi/linux/media.h b/include/uapi/linux/media.h
> > index df59edee25d1..884ec1cae09d 100644
> > --- a/include/uapi/linux/media.h
> > +++ b/include/uapi/linux/media.h
> > @@ -95,6 +95,14 @@ struct media_device_info {
> > 
> >  #define MEDIA_ENT_F_AUDIO_MIXER		(MEDIA_ENT_F_BASE + 0x03003)
> >  
> >  /*
> > 
> > + * Processing entities
> > + */
> > +#define MEDIA_ENT_F_PROC_VIDEO_GENERIC		(MEDIA_ENT_F_BASE + 0x4001)
> > +#define MEDIA_ENT_F_PROC_VIDEO_COMPOSER		(MEDIA_ENT_F_BASE + 0x4002)
> > +#define MEDIA_ENT_F_PROC_VIDEO_CONVERTER	(MEDIA_ENT_F_BASE + 0x4003)
> > +#define MEDIA_ENT_F_PROC_VIDEO_SCALER		(MEDIA_ENT_F_BASE + 0x4004)
> > +
> > +/*
> > 
> >   * Connectors
> >   */
> >  
> >  /* It is a responsibility of the entity drivers to add connectors and
> >  links */

-- 
Regards,

Laurent Pinchart


  reply	other threads:[~2016-03-25 13:57 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-25 10:43 [PATCH v2 00/54] R-Car VSP improvements for v4.7 Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 01/54] media: Add video processing entity functions Laurent Pinchart
2016-03-25 12:44   ` Hans Verkuil
2016-03-25 13:57     ` Laurent Pinchart [this message]
2016-03-25 14:19     ` [PATCH v3] " Laurent Pinchart
2016-03-25 15:14       ` Hans Verkuil
2016-03-25 15:23         ` Laurent Pinchart
2016-04-10  0:03           ` Laurent Pinchart
2016-03-28 23:01   ` [PATCH v2 01/54] " Sakari Ailus
2016-03-29  7:40     ` Laurent Pinchart
2016-04-10  0:00       ` Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 02/54] v4l: subdev: Add pad config allocator and init Laurent Pinchart
2016-03-25 15:27   ` [PATCH v3] " Laurent Pinchart
2016-03-28 23:11     ` Sakari Ailus
2016-03-25 10:43 ` [PATCH v2 03/54] v4l: subdev: Call pad init_cfg operation when opening subdevs Laurent Pinchart
2016-03-25 12:40   ` Hans Verkuil
2016-03-25 14:17     ` Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 04/54] v4l: vsp1: Fix vsp1_du_atomic_(begin|flush) declarations Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 05/54] v4l: vsp1: drm: Include correct header file Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 06/54] v4l: vsp1: video: Fix coding style Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 07/54] v4l: vsp1: Set entities functions Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 08/54] v4l: vsp1: VSPD instances have no LUT on Gen3 Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 09/54] v4l: vsp1: Use pipeline display list to decide how to write to modules Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 10/54] v4l: vsp1: Always setup the display list Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 11/54] v4l: vsp1: Simplify frame end processing Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 12/54] v4l: vsp1: Split display list manager from display list Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 13/54] v4l: vsp1: Store the display list manager in the WPF Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 14/54] v4l: vsp1: bru: Don't program background color in control set handler Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 15/54] v4l: vsp1: rwpf: Don't program alpha value " Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 16/54] v4l: vsp1: sru: Don't program intensity " Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 17/54] v4l: vsp1: Don't setup control handler when starting streaming Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 18/54] v4l: vsp1: Enable display list support for the HS[IT], LUT, SRU and UDS Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 19/54] v4l: vsp1: Don't configure RPF memory buffers before calculating offsets Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 20/54] v4l: vsp1: Remove unneeded entity streaming flag Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 21/54] v4l: vsp1: Document calling context of vsp1_pipeline_propagate_alpha() Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 22/54] v4l: vsp1: Fix 80 characters per line violations Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 23/54] v4l: vsp1: Add header display list support Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 24/54] v4l: vsp1: Use display lists with the userspace API Laurent Pinchart
2016-03-25 10:43 ` [PATCH v2 25/54] v4l: vsp1: Move subdev initialization code to vsp1_entity_init() Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 26/54] v4l: vsp1: Consolidate entity ops in a struct vsp1_entity_operations Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 27/54] v4l: vsp1: Fix BRU try compose rectangle storage Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 28/54] v4l: vsp1: Add race condition FIXME comment Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 29/54] v4l: vsp1: Implement and use the subdev pad::init_cfg configuration Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 30/54] v4l: vsp1: Store active formats in a pad config structure Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 31/54] v4l: vsp1: Store active selection rectangles " Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 32/54] v4l: vsp1: Create a new configure operation to setup modules Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 33/54] v4l: vsp1: Merge RPF and WPF pad ops structures Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 34/54] v4l: vsp1: Use __vsp1_video_try_format to initialize format at init time Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 35/54] v4l: vsp1: Pass display list explicitly to configure functions Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 36/54] v4l: vsp1: Rename pipeline validate functions to pipeline build Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 37/54] v4l: vsp1: Pass pipe pointer to entity configure functions Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 38/54] v4l: vsp1: Store pipeline pointer in rwpf Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 39/54] v4l: vsp1: video: Reorder functions Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 40/54] v4l: vsp1: Allocate pipelines on demand Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 41/54] v4l: vsp1: RPF entities can't be target nodes Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 42/54] v4l: vsp1: Factorize get pad format code Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 43/54] v4l: vsp1: Factorize media bus codes enumeration code Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 44/54] v4l: vsp1: Factorize frame size " Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 45/54] v4l: vsp1: Fix LUT format setting Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 46/54] v4l: vsp1: dl: Make reg_count field unsigned Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 47/54] v4l: vsp1: dl: Fix race conditions Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 48/54] v4l: vsp1: dl: Add support for multi-body display lists Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 49/54] v4l: vsp1: lut: Use display list fragments to fill LUT Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 50/54] v4l: vsp1: Add support for the RPF alpha multiplier on Gen3 Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 51/54] v4l: vsp1: Add Z-order support for DRM pipeline Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 52/54] v4l: vsp1: Add global alpha " Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 53/54] v4l: vsp1: Fix V4L2_PIX_FMT_XRGB444 format definition Laurent Pinchart
2016-03-25 10:44 ` [PATCH v2 54/54] v4l: vsp1: Update WPF and LIF maximum sizes for Gen3 Laurent Pinchart

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=2937847.V0nXsyfMKG@avalon \
    --to=laurent.pinchart@ideasonboard.com \
    --cc=hverkuil@xs4all.nl \
    --cc=laurent.pinchart+renesas@ideasonboard.com \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-renesas-soc@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox