Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Install wireplumber and gst-plugin-pipewire by default (to enable Pipewire cameras) #537

Open
rmader opened this issue Mar 26, 2023 · 7 comments
Labels
device: pinephone PINE64 PinePhone device: pinephone-pro PINE64 PinePhone Pro device: pinetab PINE64 PineTab enhancement New feature or request

Comments

@rmader
Copy link

rmader commented Mar 26, 2023

  • Device: PinePhonePro
  • Kernel Version : 6.1.12 6.2.7
  • UI: Phosh

The future/modern camera stack on Linux, consisting of libcamera and pipewire (similar to alsa + pulseaudio/pipewire) provides apps with a clean API to access cameras without needing device specific knowledge.

As of today (Mar. 26) with the libcamera 0.0.4-3 upgrade this almost works on the Pinephone Pro on a vanilla installation of the archlinux-pinephone-pro-phosh-20230203.img.xz image.

The only changes needed to make applications like Cheese be able to use the cameras now are:

  1. install wireplumber (needed to make Pipewire actually expose cameras - requires a restart)
  2. install gst-plugin-pipewire (implies 1.)
  3. the pending kernel update to 6.2.7 ✔️

These packages get installed by default on most distros nowadays - it would be nice if the image here would do so as well.

@Danct12 Danct12 added enhancement New feature or request device: pinetab PINE64 PineTab device: pinephone PINE64 PinePhone device: pinephone-pro PINE64 PinePhone Pro labels Mar 26, 2023
@Danct12
Copy link
Member

Danct12 commented Mar 26, 2023

Kernel 6.2.7 is in the testing repository for days now, I'll move it to main later as there's not yet a problem reported on the kernel.

@rmader
Copy link
Author

rmader commented Mar 26, 2023

Kernel 6.2.7 is in the testing repository for days now, I'll move it to main later as there's not yet a problem reported on the kernel.

Thanks, just updated and confirmed again that it works.

@grinceur
Copy link

grinceur commented Mar 27, 2023

https://discord.com/channels/370595587097362454/726875989401141268/1087526169685000442
megapixel is broken for me with this kernel…

@UltraBlackLinux
Copy link

@grinceur bruh which discord server -_-

@rmader
Copy link
Author

rmader commented Mar 28, 2023

megapixel is broken for me with this kernel…

Note: this discussion here is not about Megapixels. It's about the proper libcamera + pipewire (+ gstreamer + xdg-camera-portal) stack, which AFAIK Megapixels currently does not plan to support.

Apps that use this stack include Cheese, the upcoming, mobile friendly, new Gnome camera app and soon also Chromium, Firefox and OBS-Studio.

@rmader
Copy link
Author

rmader commented Jul 13, 2023

@Danct12 gentle ping here :)

With the recent linux 6.4 update there's finally proper rotation and location support, plus the number of apps making use of Pipewire cameras is increasing (Firefox just got experimental support, https://flathub.org/apps/org.gnome.Snapshot is getting stable), so having this work out-of-the-box becomes increasingly useful.

@AgentSmith0
Copy link

AgentSmith0 commented Aug 23, 2023

wireplumber conflicts pipewire-media-session, is it safe to remove pipewire-media-session?
EDIT:
Yes it is, pipewire-media-session seems to be deprecated.

Snapshot flatpak works fine now, thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
device: pinephone PINE64 PinePhone device: pinephone-pro PINE64 PinePhone Pro device: pinetab PINE64 PineTab enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

5 participants