From: Jarkko Sakkinen <jarkko@kernel.org>
To: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: Sakari Ailus <sakari.ailus@linux.intel.com>,
linux-media@vger.kernel.org, jani.nikula@linux.intel.com,
anisse@astier.eu, oleksandr@natalenko.name,
linux-integrity@vger.kernel.org,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Hans Verkuil <hverkuil@kernel.org>,
Jacopo Mondi <jacopo.mondi@ideasonboard.com>,
Ricardo Ribalda <ribalda@chromium.org>,
open list <linux-kernel@vger.kernel.org>
Subject: Re: [RFC PATCH v2] media: Virtual camera driver
Date: Tue, 3 Feb 2026 23:11:19 +0200 [thread overview]
Message-ID: <aYJkZEV6mX9Kl56X@kernel.org> (raw)
In-Reply-To: <20260203205742.GB11369@killaraus>
On Tue, Feb 03, 2026 at 10:57:42PM +0200, Laurent Pinchart wrote:
> Hello Jarkko,
>
> On Tue, Feb 03, 2026 at 03:36:59AM +0200, Jarkko Sakkinen wrote:
> > On Tue, Feb 03, 2026 at 02:10:15AM +0200, Jarkko Sakkinen wrote:
> > > On Tue, Feb 03, 2026 at 12:50:06AM +0200, Sakari Ailus wrote:
> > > > On Mon, Feb 02, 2026 at 10:44:21PM +0200, Jarkko Sakkinen wrote:
> > > > > Already a quick Google survey backs strongly that OOT drivers (e.g.,
> > > > > v4l2loopback) are the defacto solution for streaming phone cameras in
> > > > > video conference calls, which puts confidential discussions at risk.
> > > >
> > > > As I think it was pointed out in review comments for v1, the reason behind
> > > > using v4l2loopback is the use of a downstream driver, which itself is a
> > > > source of a security risk. If I understand correctly, supporting this
> > > > (proprietary/downstream vendor drivers) would be the main use case this
> > > > driver serves? Should this downstream driver be upstreamed to alleviate the
> > > > security risks, the need for v4l2loopback or similar drivers presumably
> > > > disappears.
> > >
> > > My goal is not to proactively support proprietary drivers, and I don't
> > > know how to measure such incentive or risk, when it comes to video
> > > drivers.
> > >
> > > And besides there is e.g. FUSE.
> > >
> > > > Another of the downsides of such proprietary/downstream solutions is they
> > > > can never be properly integrated into the Linux ecosystem so functionality
> > > > will remain spotty (limited to specific systems and specific releases of
> > > > specific distributions) at best.
> > > >
> > > > In other words, this driver appears to be orthogonal to solving either of
> > > > the above two problems the proprietary/downstream solutions have.
> > > >
> > > > From the Open Source libcamera based camera software stack point of view
> > > > there doesn't seem to be a need for v4l2loopback or another similar driver.
> > > > The two main reasons for this is that (1) there's no need for glueing
> > > > something separate together like this and (2) V4L2 isn't a great
> > > > application interface for cameras -- use libcamera or Pipewire instead.
> > >
> > > While I get this argument isolated, it does not match the observed
> > > reality, and does not provide tools to address the core issue. I
> > > will be in my grave before I've fixed the world like you are
> > > suggesting :-)
>
> I really hope we'll provide a solution much faster than that :-)
>
> > > Like, first off, where would I use libcamera or Pipewire? There's
> > > no well-defined target other than kernel in this problem.
>
> PipeWire is becoming the de facto media server on desktop systems, for
> both audio and video. It has been shipped by distributions for a while
> for audio, and is the core component that allows screen capture (and
> therefore screen sharing in video conferencing) on Wayland-based
> systems. For video, PipeWire support has most notably been integrated in
> WebRTC, used by both Firefox and Chrome. The number of applications
> using PipeWire is growing, OBS has recently received support for
> PipeWire sources for instance. If you need to use it in an application
> that requires a V4L2 capture device, the pw-v4l2 script emulates the
> V4L2 API to provide a quick stopgap measure until applications get
> native PipeWire support.
>
> libcamera solves an orthogonal problem, which is control of raw camera
> sensors and ISPs typically found in mobile and embedded devices, and now
> increasingly in laptops as well (Intel IPU3, IPU4, IPU6 and IPU7).
> Applications typically don't use libcamera directly, but interface it
> with GStreamer (libcamerasrc element) or PipeWire (which has native
> libcamera support).
>
> While I understand that libcamera and PipeWire may be quite new for a
> large number of users, the ecosystem is moving in that direction, and
> both projects are very active.
Thanks for the information and I take this into account when/if considering
any updates. The response is so informative that I need to purge this a
bit (thank you for that) :-) This does not disregard your response but
personally I'm not have huge a fan of LD_PRELOAD style compatibility
wrappers.
BR, Jarkko
next prev parent reply other threads:[~2026-02-03 21:11 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-02 20:44 [RFC PATCH v2] media: Virtual camera driver Jarkko Sakkinen
2026-02-02 21:28 ` Jarkko Sakkinen
2026-02-02 22:50 ` Sakari Ailus
2026-02-03 0:10 ` Jarkko Sakkinen
2026-02-03 1:36 ` Jarkko Sakkinen
2026-02-03 20:57 ` Laurent Pinchart
2026-02-03 21:11 ` Jarkko Sakkinen [this message]
2026-02-03 21:21 ` Laurent Pinchart
2026-02-03 8:09 ` Jarkko Sakkinen
2026-02-03 8:32 ` Jarkko Sakkinen
2026-02-03 10:27 ` johannes.goede
2026-02-03 13:16 ` Jani Nikula
2026-02-03 21:09 ` Laurent Pinchart
2026-02-03 13:20 ` Jani Nikula
2026-02-03 14:19 ` johannes.goede
2026-02-03 15:25 ` Mauro Carvalho Chehab
2026-02-03 18:53 ` Jani Nikula
2026-02-03 19:07 ` Jarkko Sakkinen
2026-02-03 19:15 ` Jarkko Sakkinen
2026-02-03 21:22 ` Laurent Pinchart
2026-02-03 21:40 ` Jarkko Sakkinen
2026-02-03 21:18 ` Laurent Pinchart
2026-02-03 17:56 ` Jarkko Sakkinen
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=aYJkZEV6mX9Kl56X@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-integrity@vger.kernel.org \
--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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.