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

Feature: Pipewire support #56

Open
ids1024 opened this issue Nov 9, 2020 · 4 comments
Open

Feature: Pipewire support #56

ids1024 opened this issue Nov 9, 2020 · 4 comments

Comments

@ids1024
Copy link

ids1024 commented Nov 9, 2020

As I understand, Pipewire is (going to be) the modern way to support this kind of thing on Linux, which seems nicer than a special kernel module.

I haven't looked enough into how akvirtualcamera or pipewire work to see what that would involved, but perhaps it could/should be supported here.

@hipersayanX
Copy link
Member

Yes this is on my radar actually, I was looking about Pipewire the last week and it seems possible, but more projects needs to adopt it, otherwise it won't work in old software.

@ids1024
Copy link
Author

ids1024 commented Nov 12, 2020

but more projects needs to adopt it, otherwise it won't work in old software.

Right. As some of the posts I've seen about Pipewire's development, Cheese supports it automatically by virtue of using gstreamer. Not sure how much other software supports it yet.

Having good virtual camera support with Webcamoid could be a nice thing to point to for why programs/libraries should include a pipewire backend for webcams. But a kernel driver like akvcam will still be necessary for at least old software, for some time.

@hipersayanX
Copy link
Member

hipersayanX commented Nov 12, 2020

Right. As some of the posts I've seen about Pipewire's development, Cheese supports it automatically by virtue of using gstreamer. Not sure how much other software supports it yet.

I'm interested in the webcam and desktop sharing feature, and the user space driver rater than kernel space, that's a real big improvement over V4L2 😄
I'm busy working with other things, but definitively I'll add support for Pipewire before next Webcamoid release, for capturing at least, the virtual camera will come much later.

Having good virtual camera support with Webcamoid could be a nice thing to point to for why programs/libraries should include a pipewire backend for webcams. But a kernel driver like akvcam will still be necessary for at least old software, for some time.

There is another option for supporting classic V4l2 programs that I was researching which is using fuse for creating the V4L2 devices but I was stuck with mmap implementation and there are some ioctls that can't be implemented, I was searching here and there and I think I've found some way to implement mmap and in the last case I can discard extended controls implementation.
Also if I can implement it, I'll have support for FreeBSD and other operating systems for free 😄

@ids1024
Copy link
Author

ids1024 commented Nov 12, 2020

Running into issues with ioctls is pretty much what I would expect, but it would definitely be great to have a fuse-based solution, if it can work!

@hipersayanX hipersayanX transferred this issue from webcamoid/akvirtualcamera Oct 29, 2023
@hipersayanX hipersayanX transferred this issue from another repository Dec 15, 2023
@hipersayanX hipersayanX transferred this issue from webcamoid/webcamoid Dec 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants