[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <aYABe58YpHd5JUjZ@kernel.org>
Date: Mon, 2 Feb 2026 03:44:27 +0200
From: Jarkko Sakkinen <jarkko@...nel.org>
To: Laurent Pinchart <laurent.pinchart@...asonboard.com>
Cc: linux-media@...r.kernel.org, jani.nikula@...ux.intel.com,
anisse@...ier.eu, oleksandr@...alenko.name,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Hans Verkuil <hverkuil@...nel.org>,
Sakari Ailus <sakari.ailus@...ux.intel.com>,
Jacopo Mondi <jacopo.mondi@...asonboard.com>,
Ricardo Ribalda <ribalda@...omium.org>,
open list <linux-kernel@...r.kernel.org>
Subject: Re: [RFC PATCH] media: Virtual camera driver
On Sun, Feb 01, 2026 at 11:09:52PM +0200, Laurent Pinchart wrote:
> On Sun, Feb 01, 2026 at 10:54:34PM +0200, Jarkko Sakkinen wrote:
> > On Sun, Feb 01, 2026 at 10:35:12PM +0200, Jarkko Sakkinen wrote:
> > > On Sun, Feb 01, 2026 at 10:06:49PM +0200, Laurent Pinchart wrote:
> > > > On Sun, Feb 01, 2026 at 09:04:00PM +0200, Jarkko Sakkinen wrote:
> > > > > On Sun, Feb 01, 2026 at 08:20:11PM +0200, Laurent Pinchart wrote:
> > > > > > On Sun, Feb 01, 2026 at 03:33:38PM +0200, Jarkko Sakkinen wrote:
> > > > > > > vcam is a DMA-BUF backed virtual camera driver capable of creating video
> > > > > > > capture devices to which data can be streamed through /dev/vcam after
> > > > > > > calling VCAM_IOC_CREATE. Frames are pushed with VCAM_IOC_QUEUE and recycled
> > > > > > > with VCAM_IOC_DEQUEUE.
> > > > > > >
> > > > > > > Zero-copy semantics are supported for shared DMA-BUF between capture and
> > > > > > > output.
> > > > > > >
> > > > > > > Signed-off-by: Jarkko Sakkinen <jarkko@...nel.org>
> > > > > > > ---
> > > > > > > Early feedback e.g., is this completely in wrong direction? V4L2 world
> > > > > > > is relatively alien world, and thus I need a sanity check ;-)
> > > > > >
> > > > > > We already have multiple virtual drivers, including vivid and vimc.
> > > > > > Could you please explain the rationale for yet another one, and why the
> > > > > > new features it provides (if any) can't be added to existing drivers ?
> > > > >
> > > > > There is a notable user base for v4l2-loopback. It is the defacto choice
> > > > > for streaming phone cams.
> > > >
> > > > This will then likely face the same hurdles as v4l2-loopback, the main
> > > > one being that camera support should be upstreamed with proper drivers
> > > > instead of a closed-source userspace daemon.
> > > >
> > > > For phone cameras, the way forward upstream is libcamera. Until kernel
> > > > drivers for ISPs are available, the soft ISP is a stop-gap solution. It
> > > > recently gained GPU acceleration support (with work to improve image
> > > > quality with additional algorithms ongoing).
> > >
> > > That might have some weight as a pro but the unarguable con is that at
> > > the same time this policy retains a base of tainted kernels in the wild.
> > >
> > > Not saying that this weight more but it is important to remark this
> > > fact.
> >
> > It's widely packaged for different distributions and even embedded build
> > systems forming across the board tained ecosystem. And this has been
> > ongoing for years. Suggesting PipeWire as "a fix" for all possible
> > situations is not "a solution".
>
> PipeWire may not solve all of the world's problems, but it's part of a
> clean solution for this particular issue. The fact that everybody relied
> on an out-of-tree kernel module instead of designing a better stack is
> not a reason to merge v4l2loopback upstream now that we have a better
> option that is actively developed.
Nobody (at least not in this thread) requested to merge v4l2-loopback
upstream. Let's use correct terminology in order not convolute the
discussion further, thank you.
>
> --
> Regards,
>
> Laurent Pinchart
BR, Jarkko
Powered by blists - more mailing lists