obs-studio icon indicating copy to clipboard operation
obs-studio copied to clipboard

PipeWire capture fails to compile on FreeBSD

Open yurivict opened this issue 3 years ago • 7 comments

Operating System Info

Other

Other OS

FreeBSD

OBS Studio Version

27.0.1

OBS Studio Version (Other)

13

OBS Studio Log URL

n/a

OBS Studio Crash Log URL

No response

Expected Behavior

linux-capture should compile as before.

Current Behavior

The linux-capture plugin worked on FreeBSD in 26.1.2 but in 27.0.1 it doesn't compile any more due to this linux-specific line: https://github.com/obsproject/obs-studio/blob/master/plugins/linux-capture/pipewire.c#L30

Users complain: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256862

Steps to Reproduce

Anything else we should know?

No response

yurivict avatar Jun 28 '21 09:06 yurivict

This is a new feature introduced in #4287. You're likely missing libgles2-mesa or libgles2-mesa-dev (or similar) when building, or missing it as a dependency for users.

WizardCM avatar Jun 28 '21 09:06 WizardCM

I'll admit that I don't have much knowledge of FreeBSD, so I may be asking dumb questions.

I see that you've applied a patch on the FreeBSD port that just disables PipeWire using CMake. Is Wayland/PipeWire capture something that a FreeBSD user would be using or need, and that's just a temporary measure to make sure the rest of the plugin builds? Or is that what you'd consider an acceptable solution?

VodBox avatar Jun 28 '21 10:06 VodBox

I see that you've applied a patch on the FreeBSD port that just disables PipeWire using CMake. Is Wayland/PipeWire capture something that a FreeBSD user would be using or need, and that's just a temporary measure to make sure the rest of the plugin builds? Or is that what you'd consider an acceptable solution?

I don't have much knowledge about Wayland. Particularly, I am not sure of its purpose or benefits to users. I don't think Wayland is currently used at all on FreeBSD. So this is a measure to make the capture plugin work on FreeBSD for the time being. The linux/dma-buf.h header is installed only by graphics/drm-current-kmod and graphics/drm-fbsd13-kmod when the SOURCE option is set to ON, which is OFF by default.

yurivict avatar Jun 28 '21 16:06 yurivict

Both Wayland and Pipewire are indeed used by some FreeBSD users. Wayland is the *NIX successor to X11, and Pipewire is the soon to be successor to Jack/Pulseaudio. I think what caused here was missing tests to see which subsystems your platform is using, and only including and compiling the appropriate components.

playaspec avatar Jun 30 '21 20:06 playaspec

Is this issue still present, and is this something that would need to be fixed in OBS, or is it an environment issue?

As a reminder, nobody on the OBS team uses or has any knowledge about FreeBSD, so we will be unable to submit any fixes necessary, and rely on the FreeBSD community to provide them.

Fenrirthviti avatar Nov 23 '22 21:11 Fenrirthviti

No response, closing. If this is still an issue, a PR with a fix would be welcome, but as mentioned nobody on the team is able to debug FreeBSD issues.

Fenrirthviti avatar Jan 27 '23 19:01 Fenrirthviti

Re-opened as there is a pending fix.

kkartaltepe avatar Feb 05 '23 14:02 kkartaltepe