[HN Gopher] Firefox 116 Should Have Experimental PipeWire Camera...
___________________________________________________________________
Firefox 116 Should Have Experimental PipeWire Camera Support
Author : LinuxBender
Score : 91 points
Date : 2023-06-17 15:59 UTC (7 hours ago)
(HTM) web link (www.phoronix.com)
(TXT) w3m dump (www.phoronix.com)
| [deleted]
| aorth wrote:
| To try, make sure you are running Nightly and toggle
| `media.webrtc.camera.allow-pipewire` in about:config, then
| restart Firefox.
|
| After restarting Firefox, visit the Mozilla GUM test page
| https://mozilla.github.io/webrtc-landing/gum_test.html and you
| should see a different popup asking for permission.
| 8K832d7tNmiQ wrote:
| This is huge news for people who runs Linux on Surface devices as
| they need to compile a custom v4l module for the custom kernel,
| and also need to run a hacky v4loopback workaround to use it on
| vidcalls.
| Johnny555 wrote:
| If you don't know what PipeWire is (I didn't), it's an audio-
| video handler - it replaces things like PulseAudio.
|
| https://pipewire.org/
| tgv wrote:
| And it's for Linux.
| Lapha wrote:
| >it replaces things like PulseAudio
|
| More specifically, it's fully compatible with
| PulseAudio/JACK/ALSA and is capable of completely replacing
| them while still providing the benefits of what it's replacing.
| It's a complete joy to work with too, especially if you've ever
| experienced the nightmare that is getting your pro-audio JACK
| setup working nicely with pulse.
| dmw_ng wrote:
| Video capture is something that's "just worked" for me for as
| long as I can remember (unlike audio). What's the value gained
| from the added latency of an intermediary? Is it only to ease
| containerization?
| predictabl3 wrote:
| For one, without this two applications can't use your camera
| simultaneously.
|
| I think this is also key for getting libcamera in the mix.
|
| And pipewire is phenomenal, I assume this opens the door for
| video transformations, a+v effects, etc. I'm quite excited
| about it.
| fulafel wrote:
| With audio, accessing kernel interfaces directly in olden days
| lead to problems with multiple apps using the device &
| inability to provide inputs/sinks from userspace (eg
| post/preprocessing or hw driver implemented in userspace). It's
| still that way with video.
|
| People have been using a out of tree loopback video kernel
| driver for these things which is hard to use and hacky and
| slow.
| tadfisher wrote:
| That still is the case, it's just that nobody runs hardware
| DSPs so nobody needs to deal with anything but a single
| userspace sound server. Video just has order-of-magnitude
| higher processing requirements, so dumping raw buffers into
| userspace and letting a "video server" do the work isn't
| usable for use cases that care about latency, throughput or
| resource usage (e.g. game streaming).
|
| So you end up with a bunch of kernel interfaces for hardware-
| accelerated video transforms (many driver-specific), a few
| competing userspace APIs (gstreamer, vulkan extensions,
| vaapi, vdpau, etc), zero-copy kernel buffer APIs, the list
| goes on. You end up with something like Pipewire just to
| abstract over the complexity.
| butz wrote:
| And I'm still waiting for the day when Firefox will finally fully
| support MS Teams and FaceTime.
| BaseballPhysics wrote:
| I use it with Teams every day. The only thing that doesn't work
| is notifications (and I blame Microsoft for that). What else do
| you find isn't working?
| pentagrama wrote:
| I was waiting for support to download YouTube videos with YT
| Premium on FF desktop and the other day the button just
| appeared! Not sure if was something missing on FF end or YT
| just didn't want to support it before, but yeah, no more
| waiting.
| f272529 wrote:
| This seems like a Microsoft problem.
| shultays wrote:
| It is a firefox problem if it is ending up people switching
| to other browsers because of that
| StrangeATractor wrote:
| I have to say re: pipewire that it's one of the few (redhat?)
| projects of the past 15-20 years that doesn't seem to have
| generated a ton of hate from users so it must be pretty good all
| around.
| howinteresting wrote:
| Pipewire has made Linux the best audio stack in the world by
| some margin.
| snvzz wrote:
| It's barely usable when paired with the Realtime patchset.
|
| An actual OS that constitutes a "good audio stack" would be
| able to provide hard realtime (i.e. formally guaranteed
| maximum latencies), like seL4 does.
|
| Linux-rt is just probabilistic. It behaves much better than
| mainline, but latency could spike anytime.
| George83728 wrote:
| I love Pipewire, Pipewire fixed bluetooth headphone
| reliability. For years I had frequent trouble where the
| bluetooth headphones and bluetoothctl would both say they were
| connected, but there was no audio sink for pulseaudio.
| Sometimes there would be audio, but it would be crappy mono
| audio in "headset mode". For three or four years I had this
| problem several times a week. I believed this was an issue with
| the linux bluetooth drivers until one day, after several
| unsuccessful cycles of reloading, restarting and rebooting
| everything I got fed up enough to install Pipewire (which was
| unexpectedly painless.) From that moment on, not once have my
| headphones failed to connect on the first attempt. I've
| concluded that there's something fundamentally wrong with the
| way Pulseaudio recognizes and responds to a bluetooth speaker
| being connected, and Pipewire obviously doesn't have this flaw.
|
| There's a popular narrative of "linux enthusiasts hate anything
| that's new"; you hear this a lot from people defending
| Pulseaudio and SystemD from "the trolls". It was never true.
| People love new things when the new thing solves their
| problems, and hate the new thing when it introduces new
| problems. The haters narrative is little more than cope; a way
| for the authors of buggy software to rationalize the negative
| response to their software.
| dijit wrote:
| This is me learning that pipewire is a RH project.
|
| For context as to why it's not getting hate: the alternative is
| Pulseaudio (another RH project, headed by Poettering who is now
| at Microsoft incidentally) which was eggergiously difficult to
| configure, heavy and seemed to dominate any system that tried
| to interface with it even slightly.
|
| The same exact concerns that people levy towards systemd and
| GNOME.
|
| Pipewire is light, interfaces with programs on their terms and
| seems to follow the philosophy that "it's just a tool" meaning
| that it should not be something you have to care about as an
| application developer or as a user.
|
| I have a lot of respect for that.
| isolatedsystem wrote:
| Pipewire also worked out of the box for me, and abstracts
| away ALSA and PulseAudio. It can even handle JACK. It's very
| nice.
| thomastjeffery wrote:
| I didn't even know it existed until the other day when I
| found out I was already using it.
|
| I can't imagine giving better praise for a piece of
| software.
| andrewaylett wrote:
| Pulseaudio was adopted too early, and I think distros have
| learned their lesson this time around.
|
| Honestly, it fell under "just worked" for me. One time I had
| been reading about PA using too much CPU, so I checked and
| indeed it was using a reasonable amount of processing power
| "just" to feed data from the media player to ALSA. So I tried
| turning it off, and the media player used more CPU to play
| audio direct to ALSA without PA than both the media player
| _and_ PA running together.
| bayindirh wrote:
| I had tons of problems with PA. Jitter, noise, insensible
| defaults. i.e. Why upmix stereo to 5.1 just because I have
| the speakers, and why make disabling it an override?
|
| I never used onboard audio, always had some higher end card
| with more resolution than a bog standard on board audio
| chip, and PA struggled to deal with them for a long time.
|
| Also if the daemon crashed or needed a restart, it was a
| dance of restarting with exacting order and other details.
|
| Pipewire is just invisible. It works the way it should and
| doesn't bend the system to fit in.
___________________________________________________________________
(page generated 2023-06-17 23:01 UTC)