From: Jarkko Sakkinen <jarkko@kernel.org>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: linux-media@vger.kernel.org, jani.nikula@linux.intel.com,
anisse@astier.eu, oleksandr@natalenko.name,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Hans Verkuil <hverkuil@kernel.org>,
Sakari Ailus <sakari.ailus@linux.intel.com>,
Jacopo Mondi <jacopo.mondi@ideasonboard.com>,
Ricardo Ribalda <ribalda@chromium.org>,
open list <linux-kernel@vger.kernel.org>
Subject: Re: [RFC PATCH] media: Virtual camera driver
Date: Mon, 2 Feb 2026 00:03:33 +0200 [thread overview]
Message-ID: <aX_NtZJGtMTn-55H@kernel.org> (raw)
In-Reply-To: <20260201210144.GZ3374091@killaraus>
On Sun, Feb 01, 2026 at 11:01:44PM +0200, Laurent Pinchart wrote:
> On Sun, Feb 01, 2026 at 10:35:06PM +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@kernel.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.
>
> Do you mean tainted by the out-of-tree v4l2loopback module ? Won't those
> systems be equally tainted by out-of-tree camera drivers then ? With
> libcamera and the soft ISP you can run a 100% mainline stack.
A camera driver could also manage a network stream, not necessarily
some piece of proprietary hardware.
That said I don't have enough knowledge of the industry to say anything
about how properietary risk would change i.e., not really arguing against
that.
Just want to emphasis that while disagreeing in some level I'm not
downplaying totally legit arguments :-)
BR, Jarkko
next prev parent reply other threads:[~2026-02-01 22:03 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-01 13:33 [RFC PATCH] media: Virtual camera driver Jarkko Sakkinen
2026-02-01 18:20 ` Laurent Pinchart
2026-02-01 19:04 ` Jarkko Sakkinen
2026-02-01 20:06 ` Laurent Pinchart
2026-02-01 20:14 ` Oleksandr Natalenko
2026-02-01 20:21 ` Mauro Carvalho Chehab
2026-02-01 20:26 ` Oleksandr Natalenko
2026-02-01 23:17 ` Mauro Carvalho Chehab
2026-02-01 23:17 ` Mauro Carvalho Chehab
2026-02-01 23:25 ` Oleksandr Natalenko
2026-02-02 1:02 ` Mauro Carvalho Chehab
2026-02-02 7:16 ` Oleksandr Natalenko
2026-02-02 11:41 ` Laurent Pinchart
2026-02-02 9:05 ` Jarkko Sakkinen
2026-02-02 9:19 ` Jarkko Sakkinen
2026-02-02 11:43 ` Laurent Pinchart
2026-02-02 11:36 ` Gergo Koteles
2026-02-02 11:40 ` Laurent Pinchart
2026-02-02 11:45 ` Oleksandr Natalenko
2026-02-03 1:23 ` Laurent Pinchart
2026-02-03 14:38 ` Oleksandr Natalenko
2026-02-03 14:53 ` Laurent Pinchart
2026-02-03 20:36 ` Laurent Pinchart
2026-02-03 21:39 ` Oleksandr Natalenko
2026-02-03 21:49 ` Laurent Pinchart
2026-02-03 20:49 ` Laurent Pinchart
2026-02-01 20:22 ` Laurent Pinchart
2026-02-01 20:27 ` Oleksandr Natalenko
2026-02-01 20:41 ` Laurent Pinchart
2026-02-01 20:35 ` Jarkko Sakkinen
2026-02-01 20:54 ` Jarkko Sakkinen
2026-02-01 21:09 ` Laurent Pinchart
2026-02-02 1:44 ` Jarkko Sakkinen
2026-02-01 21:01 ` Laurent Pinchart
2026-02-01 22:03 ` Jarkko Sakkinen [this message]
2026-02-03 9:50 ` Jani Nikula
2026-02-03 15:06 ` 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=aX_NtZJGtMTn-55H@kernel.org \
--to=jarkko@kernel.org \
--cc=anisse@astier.eu \
--cc=hverkuil@kernel.org \
--cc=jacopo.mondi@ideasonboard.com \
--cc=jani.nikula@linux.intel.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=oleksandr@natalenko.name \
--cc=ribalda@chromium.org \
--cc=sakari.ailus@linux.intel.com \
/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