Bug 1724900 Comment 0 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

Accessing webcams through the portal[1] and pipewire has several advantages:
 - tighter permission control for flatpaks (unsandboxed clients will get permission to use the camera without user feedback)
 - multiplexing / multiple applications can use the webcam at the same time
 - potentially simplifications in the code as it works more similarly to screen sharing
 - dmabuf import for easier hardware encoding (?)

Context: at the recent GUADEC 2021 there was a BoF about this topic (with members of the wlroots community around as well) and it was agreed to push for making the webcam portal the default. FF should be on board, as for many users it's the main webcam user. There is a gstreamer demo client[2], but I haven't come across an example for a ffmpeg user yet.

1: https://github.com/flatpak/xdg-desktop-portal/blob/master/data/org.freedesktop.portal.Camera.xml
2: https://gitlab.gnome.org/-/snippets/762
Accessing webcams through the portal[1] and pipewire has several advantages:
 - tighter permission control for flatpaks (unsandboxed clients will get permission to use the camera without user feedback)
 - multiplexing / multiple applications can use the webcam at the same time
 - potentially simplifications in the code as it works more similarly to screen sharing
 - dmabuf import for easier hardware encoding (?)

Context: at the recent GUADEC 2021 there was a BoF about this topic (with members of the wlroots community around as well) and it was agreed to push for making the webcam portal the default. FF should be on board, as for many users it's the main webcam user. There is a gstreamer demo client[2], but I haven't come across an example for a ffmpeg user yet.

As of today (Aug. 10. 2021), there's no upstream pipewire support for video capturing in WebRTC, so any work here should be upstreamed if possible.

1: https://github.com/flatpak/xdg-desktop-portal/blob/master/data/org.freedesktop.portal.Camera.xml
2: https://gitlab.gnome.org/-/snippets/762
3: https://webrtc.googlesource.com/src/+/refs/heads/main/modules/video_capture/linux/
Accessing webcams through the portal[1] and pipewire has several advantages:
 - tighter permission control for flatpaks (unsandboxed clients will get permission to use the camera without user feedback)
 - multiplexing / multiple applications can use the webcam at the same time
 - potentially simplifications in the code as it works more similarly to screen sharing
 - dmabuf import for easier hardware encoding (?)

Context: at the recent GUADEC 2021 there was a BoF about this topic (with members of the wlroots community around as well) and it was agreed to push for making the webcam portal the default. FF should be on board, as for many users it's the main webcam user. There is a gstreamer demo client[2], but I haven't come across an example for a ffmpeg user yet. (edit: a GTK4 demo using the camera portal[4]).

As of today (Aug. 10. 2021), there's no upstream pipewire support for video capturing in WebRTC, so any work here should be upstreamed if possible.

1: https://github.com/flatpak/xdg-desktop-portal/blob/master/data/org.freedesktop.portal.Camera.xml
2: https://gitlab.gnome.org/-/snippets/762
3: https://webrtc.googlesource.com/src/+/refs/heads/main/modules/video_capture/linux/
4: https://gitlab.gnome.org/matthiasc/video-play
Accessing webcams through the portal[1] and pipewire has several advantages:
 - tighter permission control for flatpaks (unsandboxed clients will get permission to use the camera without user feedback)
 - multiplexing / multiple applications can use the webcam at the same time
 - potentially simplifications in the code as it works more similarly to screen sharing
 - dmabuf import for easier hardware encoding (?)

Context: at the recent GUADEC 2021 there was a BoF about this topic (with members of the wlroots community around as well) and it was agreed to push for making the webcam portal the default. FF should be on board, as for many users it's the main webcam user. There is a gstreamer demo client[2], but I haven't come across an example for a ffmpeg user yet. (edit: a GTK4 demo using the camera portal[4]).

As of today (Aug. 10. 2021), there's no upstream pipewire support for video capturing in WebRTC, so any work here should be upstreamed if possible.

1: https://github.com/flatpak/xdg-desktop-portal/blob/master/data/org.freedesktop.portal.Camera.xml
2: https://gitlab.gnome.org/-/snippets/762
3: https://webrtc.googlesource.com/src/+/refs/heads/main/modules/video_capture/linux/
4: https://gitlab.gnome.org/matthiasc/video-play

---

Development happens in https://github.com/rmader/gecko-dev/tree/bug1724900

Back to Bug 1724900 Comment 0