Giter VIP home page Giter VIP logo

obs-pipewire-audio-capture's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

obs-pipewire-audio-capture's Issues

Virtual duplex devices are not detected

I use Audio/Duplex devices for routing a bunch of inputs (e.g. microphone -> REAPER -> Duplex In; Duplex Out -> Discord), described here. These are not currently detected by this plugin.

I suspect the change would just be adding another condition to this bit of code: || strcmp(media_class, "Audio/Duplex") == 0

Missing applications

I tried to add some Applications but the plugins shows me only kwin_wayland, obs, wireplumber or xdg-desktop-portal.
I have several application opened as Firefox, Brave and Discord but I can't see any of them.
Am I doing something wrong?

pipewire --version  
pipewire
Compiled with libpipewire 1.0.3
Linked with libpipewire 1.0.3
wireplumber --version
wireplumber
Compiled with libwireplumber 0.4.17
Linked with libwireplumber 0.4.17

obs-plugin

REQ: Allow multiple apps to be excluded from Application Audio Capture (PipeWire)

Thank you very much for obs-pipewire-audio-capture 🙇 It has resolved several audio-related issues in my OBS Studio setup and helped simplify my scene/source composition.

Feature Request

When adding an Application Audio Capture (PipeWire) source, include the capability to Capture all apps but exclude multiple apps.

Rationale

With this capability added it would be possible to:

  • Add an Application Audio Capture (PipeWire) and exclude Spotify and Discord.
  • Spotify and Discord can then be added as discrete Application Audio Capture (PipeWire) sources and managed via OBS independently of all other audio output.

Window Titles for Applications

Hello!

Since you fixed my last issue so quickly, I can now use the plugin!

It works well, except, I can't really tell what I'm recording without trial-and-error.

See the following input lists for Application Capture:

image

Feature and UI parity with win-capture-audio?

https://github.com/bozbez/win-capture-audio
I found the UI and features of the latest beta build for this to be incredibly useful, and I was wondering if you would be able to add something similar? It basically had a list of programs you could specify, and you could set them all to either exclude, or include. I recommend firing up a windows 10/11 vm just to understand how it works in full.

FEATURE REQUEST: Hide PulseAudio audio selectors when the plugin is in use

When using the plugin, it works beautifully, although it's a bit cluttered to see PulseAudio and then PipeWIre audio selectors rather than just PipeWire.
My suggestion is to hide the PulseAudio options when the plugin is in use.

Unrelated suggestion: add a note to put the plugin inside of ~/.var/app/com.obsproject.Studio/config/obs-studio/plugins/ if using the flatpak of OBS Studio.

CMake not locating PipeWire

-- The C compiler identification is GNU 10.3.0
-- The CXX compiler identification is GNU 10.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /nix/store/j0lglxsmvrd3zyv9dlabffc0n0xnxbia-gcc-wrapper-10.3.0/bin/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /nix/store/j0lglxsmvrd3zyv9dlabffc0n0xnxbia-gcc-wrapper-10.3.0/bin/g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Error at CMakeLists.txt:8 (message):
  PipeWire library not found! Please install PipeWire or set
  ENABLE_PIPEWIRE=OFF


-- Configuring incomplete, errors occurred!
See also "/build/source/build/CMakeFiles/CMakeOutput.log".
$ pkg-config --list-all
libspa-0.2      libspa - Simple Plugin API
libpipewire-0.3 libpipewire - PipeWire Interface

Audio on "Application Audio Capture (PipeWire) is cutting in and out and crackling

The audio on "Application Audio Capture (PipeWire)" is cutting in and out and crackling. The desktop audio track on that same recording is perfectly fine. The issue occurs with other applications/games including native games through non-flatpak steam.

PopOS 22.04 LTS
OBS (30.0.2, Flatpak)
pipewire-audio-capture (1.1.2)
Halo Infinite (Proton-GE 8, Steam Flatpak)

(Youtube seems to be editing the audio in some way because most of the crackling is gone but the gaps in the audio are still clear.)
Example: https://youtu.be/kXzIXV-Cfgc

Not showing up in the sources list

Using Linux Mint 21.2 (Ubuntu 22.04).
PipeWire is installed using pipewire-debian PPA.
изображение

PipeWire is working as a PulseAudio server

imdanix@GladOS-Nitro:~$ LC_ALL=C pactl info | grep "Server"
Server String: /run/user/1000/pulse/native
Server Protocol Version: 35
Server Name: PulseAudio (on PipeWire 1.0.0)
Server Version: 15.0.0

WirePlumber server is working, but has a few, likely unrelated, warnings

imdanix@GladOS-Nitro:~$ LC_ALL=C systemctl --user status wireplumber
* wireplumber.service - Multimedia Service Session Manager
     Loaded: loaded (/usr/lib/systemd/user/wireplumber.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2023-12-15 18:01:34 MSK; 24min ago
   Main PID: 1281 (wireplumber)
      Tasks: 8 (limit: 37996)
     Memory: 8.5M
        CPU: 739ms
     CGroup: /user.slice/user-1000.slice/[email protected]/session.slice/wireplumber.service
             `-1281 /usr/bin/wireplumber

Dec 15 18:01:34 GladOS-Nitro systemd[1272]: Started Multimedia Service Session Manager.
Dec 15 18:01:34 GladOS-Nitro wireplumber[1281]: Failed to set scheduler settings: <D0><9E><D0><BF><D0><B5><D1><80><D0><B0><D1><86><D0><B8><D1><8F> <D0><BD><D0><B5> <D0><BF><D0><BE><D0><B7><D0><B2><D0><BE><D0><BB>
Dec 15 18:01:34 GladOS-Nitro wireplumber[1281]: [0:00:15.380856446] [1281]  WARN IPAManager ipa_manager.cpp:154 No IPA found in '/usr/lib/x86_64-linux-gnu/libcamera'
Dec 15 18:01:34 GladOS-Nitro wireplumber[1281]: [0:00:15.380885470] [1281]  INFO Camera camera_manager.cpp:284 libcamera v0.1.0
Dec 15 18:01:35 GladOS-Nitro wireplumber[1281]: Path Capture is not a volume or mute control
Dec 15 18:01:35 GladOS-Nitro wireplumber[1281]: <WpPortalPermissionStorePlugin:0x55c306d00760> Failed to call Lookup: GDBus.Error:org.freedesktop.portal.Error.NotFound: No entry for camera
Dec 15 18:01:35 GladOS-Nitro wireplumber[1281]: <WpPortalPermissionStorePlugin:0x55c306d00760> Failed to call Lookup: GDBus.Error:org.freedesktop.portal.Error.NotFound: No entry for camera

Both PipeWire-Alsa and PipeWire-Jack are installed

imdanix@GladOS-Nitro:~$ LC_ALL=C sudo apt install pipewire-alsa pipewire-jack 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
pipewire-alsa is already the newest version (1.0.0-1~ubuntu22.04).
pipewire-jack is already the newest version (1.0.0-1~ubuntu22.04).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

linux-pipewire-audio.so shows up in OBS loaded modules log

info: ---------------------------------
info:   Loaded Modules:
info:     linux-pipewire-audio.so
info:     vlc-video.so
info:     text-freetype2.so
info:     rtmp-services.so
info:     obs-x264.so
info:     obs-transitions.so
info:     obs-outputs.so
info:     obs-filters.so
info:     obs-ffmpeg.so
info:     linux-v4l2.so
info:     linux-pulseaudio.so
info:     linux-jack.so
info:     linux-decklink.so
info:     linux-capture.so
info:     linux-alsa.so
info:     image-source.so
info:     frontend-tools.so
info:     decklink-ouput-ui.so
info:     decklink-captions.so
info: ---------------------------------
info: ==== Startup complete ===============================================
info: All scene data cleared
info: ------------------------------------------------
info: pulse-input: Server name: 'PulseAudio (on PipeWire 1.0.0) 15.0.0'
info: pulse-input: Audio format: s24-32le, 48000 Hz, 2 channels
info: pulse-input: Sample format s24-32le not supported by OBS,using float32le instead for recording
info: pulse-input: Started recording from 'alsa_output.pci-0000_00_1f.3-platform-skl_hda_dsp_generic.HiFi__hw_sofhdadsp__sink.monitor'
info: [Loaded global audio device]: 'Desktop'
info: pulse-input: Server name: 'PulseAudio (on PipeWire 1.0.0) 15.0.0'
info: pulse-input: Audio format: float32le, 48000 Hz, 1 channels
info: pulse-input: Started recording from 'NoiseTorch Microphone for Tiger Lake-LP Smart Sound Technology Audio Controller'
info: [Loaded global audio device]: 'Mic/Aux'
info: Switched to scene 'Scene'
info: ------------------------------------------------
info: Loaded scenes:
info: - scene 'Scene':
info: ------------------------------------------------
Attempted path: share/obs/obs-studio/images/overflow.png
Attempted path: /usr/share/obs/obs-studio/images/overflow.png
info: adding 21 milliseconds of audio buffering, total audio buffering is now 21 milliseconds (source: Desktop)

info: adding 21 milliseconds of audio buffering, total audio buffering is now 42 milliseconds (source: Mic/Aux)

"pw_stream_set_active" Errors appearing in log, unable to select filter chain again.

Using PipeWire 0.3.77 and OBS 29.1.3

I can't select my filter chain anymore. The plugin instead grabs the raw microphone device and the following shows in the terminal:

info: User added source 'Microphone' (pipewire_audio_input_capture) to scene 'Main'
*** pw_stream_set_active called from wrong context, check thread and locking: Operation not permitted
info: [pipewire] 0x562987edcec0 Got format: rate 48000 - channels 1 - format 8
*** pw_stream_set_active called from wrong context, check thread and locking: Device or resource busy
*** pw_stream_set_active called from wrong context, check thread and locking: Operation not permitted
info: adding 21 milliseconds of audio buffering, total audio buffering is now 21 milliseconds (source: Microphone)

info: [pipewire] 0x562987edcec0 streaming from 59
*** pw_stream_set_active called from wrong context, check thread and locking: Operation not permitted
*** pw_stream_set_active called from wrong context, check thread and locking: Operation not permitted
info: [pipewire] 0x562987edcec0 Got format: rate 48000 - channels 1 - format 8
*** pw_stream_set_active called from wrong context, check thread and locking: Operation not permitted
*** pw_stream_set_active called from wrong context, check thread and locking: Operation not permitted
*** pw_stream_set_active called from wrong context, check thread and locking: Operation not permitted
info: User Removed source 'Microphone' (pipewire_audio_input_capture) from scene 'Main'

My filter chain conf:
voicemod.conf.gz

Additionally; the plugin doesn't load if placed in ~/.config/obs-studio/plugins/ and only seems to load if placed in /usr/lib/obs-plugins/ but I can't find any reasoning for why this is occurring anywhere in the official documentation.

Can't seem to capture module-filter-chain as audio input.

When I try to setup my microphone through this plugin, the "Default" and "Blue Snowball" works, but when I try to select "Voice Modulation Source", I still hear the regular unaltered microphone.

When I close OBS and restart it after tying to select "Voice Modulation Source", I hear absolutely nothing until I go into the options and manually pick "Default" or "Blue Snowball" again.

Attempting to re-select "Voice Modulation Source" afterwards does not properly start capturing the proper audio.
Screenshot_2022-07-18_11-54-19
Screenshot_2022-07-18_11-54-43

OBS's default PulseAudio handling (as well as PulseAudio itself in every other program), JACK (tested in Audacity), etc work fine.

pavucontrol:
Screenshot_2022-07-18_11-45-16
Audacity with JACK:
Screenshot_2022-07-18_11-44-52

I have a log of the PipeWire instance hosting the Filter Chain if it'll be of any use: filterchaindebug.log.gz

cant choose program unless audio is playing

As the title says, Application Audio will not detect a program unless audio is playing, meaning that if a game mutes its audio while not the active window, it will not be detected

Application Audio Capture not working?

Hello! I'm really new to Linux (Manjaro) so please bear with my stupidity. Installed via binary to ~/.config/obs-studio/plugins/ only other plugin is StreamFX, Input/Output capture works, application capture shows no activity in OBS. Tried recording anyway with clementine, firefox (youtube), and a random game, sadly no sound. Is there an additional package I need? All pipewire packages installed at the moment https://imgur.com/a/OhMrT5P , or am I simply doing something wrong?

No application found

I installed the plugin in OBS but when I try to add a source if I press the arrow no application appear.
Do I need something that I'm missing?

pipewire --version  
pipewire
Compiled with libpipewire 1.0.3
Linked with libpipewire 1.0.3
wireplumber --version
wireplumber
Compiled with libwireplumber 0.4.17
Linked with libwireplumber 0.4.17

obsplugin

obs-pipewire-audio-capture not outputting audio

I am using the obs-pipewire-audio-capture plugin in OBS Studio, but it is not outputting any audio. I have selected it as an audio input source, but no audio is being captured or outputted.

OBS Studio - 28.1.2-2 (linux)
Linux 6.0.11-arch1-1 SMP PREEMPT_DYNAMIC x86_64 GNU/Linux

latest version of obs-pipewire-audio-capture

Robotic Audio in Stream and Recording

Here is a clip of my most recent stream:
https://youtu.be/dJd_FcjqK6Y

I'm capturing the audio of Discord while being in a call to add the audio of the other participants to the stream. The sound very frequently sounds robotic from this one source. This is the case in both the stream and in the recording.

System info: running Pipewire and Wireplumber on Linux Mint

Audio cutout after 20 minutes, and again about 40 minutes

Hi Team,

Pipewire 1.0.0
Focusrite 2i2 3rd Gen
2x Elgato Wave XLR
OBS 30.0.1
Ubuntu 22.04.3
6.2.0-1018-lowlatency

So This is on a new fresh install of the OS, I had this on my previous install and did a new install to see if I could recreate it. So, within 21 minutes of recording I get this audio cut out, it also happens later on around 40 minutes. and wanted to see if anyone has experienced this before?

https://obsproject.com/tools/analyzer?log_url=https%3A%2F%2Fobsproject.com%2Flogs%2FDoBGdIdaHcqvLTMr

qpwgraph:

Screenshot from 2023-12-20 15-19-22

recording sample:

Audio.Cutout.OBS.mp4

Source Audio cuts out

While having 2 separate Application Audio Capture sources (one for game audio and another for Firefox) one or both will cut out entirely forcing me to have to reset OBS mid stream.

OBS 29.0.2
OS Pop!_OS 22.04

Application not in dropdown if no audio is played (during alt tab) - offer optional setting as workaround?

Scenario 1: start game 1 (https://store.steampowered.com/app/1611910/Warhammer_40000_Chaos_Gate__Daemonhunters/) via Steam Proton, start obs, select application source, game is not listed in dropdown as game pauses everything including audio when not focused.

Scenario 2: start game 2 (https://store.steampowered.com/app/1604030/V_Rising/) via Steam Proton, start obs, select application source, game is listed in dropdown as does not pause, audio playback (music) continues when not focused.

Workaround: offer optional setting in plugin that allows selection of applications currently not playing audio?

Crash on add source

Hello,

OBS crashes to desktop (Fedora 36) whenever I try to add one of these pipewire sources.

Here's the error (only shown when OBS run from terminal):

[E] pw.context [pipewire.c:256 load_spa_handle()] load lib: plugin directory undefined, set SPA_PLUGIN_DIR
[E] pw.loop [loop.c:83 pw_loop_new()] 0x560b08944810: can't make support.system handle: No such file or directory
'obs' terminated by signal SIGSEGV (Address boundary error)

Can't select any applications

Downloaded the plugin and it opens just fine, using PipeWire.

When loading the games: Tropico 6, Grandia 2 and booting up obs, no programs show up in the application field, and pressing the drop down arrow doesn't show anything.

image

Build on openSUSE Tumbleweed installs to wrong location

I built this plugin yesterday for my OBS build on openSUSE Tumbleweed, and the results of sudo make install copied linux-pipewire-audio.so to /usr/lib/obs-plugins/ instead of to /usr/lib64/obs-plugins/, resulting it the plugin not showing up in obs. Moving it manually to the proper location resolved the issue for me, but the build script probably needs to be updated to place this in the proper directory (or the instructions need to be updated to explain how to tell it the proper location).

No Audio capture from support.null-audio-sink

So i have setup a few virtual devices but none of them can be captured (virt. speakers and mics)
So i use this config for virt. speakers in pipewire.conf.d:

context.objects = [
    {   factory = adapter
        args = {
            factory.name     = support.null-audio-sink
            node.name        = "phone"
            media.class      = Audio/Sink
            audio.position   = [ FL FR ]
            adapter.auto-port-config = {
                mode = dsp
                monitor = true
                position = preserve
            }
        }
    }
]

for virt. mics i use the config:

context.objects = [
    {   factory = adapter
        args = {
            factory.name     = support.null-audio-sink
            node.name        = "micmirror"
            media.class      = Audio/Source/Virtual
            audio.position   = [ FL FR ]
            adapter.auto-port-config = {
                mode = dsp
                monitor = true
                position = preserve
            }
        }
    }
]

Here is my obs log:
2024-01-13 10-28-03.txt
And here is my pipewire setup, but its a bit messy and complex because i use a gaming and streaming pc and send the audio from the gaming pc to the streaming pc:
Screenshot_20240113_103122
As it says in the Title i seams that none of the virtual devices get selected, i can select alsa devices just fine.
Well to be exact selecting one of these virtual devices works in the obs plugin gui but it wont spawn anything in the pw graph.
Also when i then close the obs plugin gui it reverts to the last setting if a virtual device was selected.
There seemed to to a similar issue but I am on ne newest version of this plugin (1.1.2-2; build with the aur package) i also tryed the version 1.1.2 from github. Im on OBS version 30.0.2 (from the aur obs-studio-tytan652). If you need any more logs just say so. Any help is welcome.

Aplication Audio Capture (Pipewire) not working with Mumble

I am trying to add Mumble as a source but is not working, it add the track on the audio mixer but the track is dead, others apps are working fine. I tried in Artix Linux and Pop OS 20.04, pipewire versión 0.3.56 and wirepumbler 0.4.11 in both cases. Mumble on Pop OS is 1.4.230 (flatpak) and 1.4.230 on Artix.

Audio of captured apps stop playing on SIGSTOP

When I attach a debugger to obs, for as long as I don't resume execution, I can no longer hear the audio of captured apps through my speakers/headphones.
This can also be replicated by sending SIGSTOP to obs (i.e pkill -e obs -STOP and pkill -e obs -CONT).

System info

distro: Arch Linux (x86-64)
kernel: Linux 6.6.1-arch1
obs: 30.0.0
pipewire: 0.3.85
obs-pipewire-audio-capture: 1.1.2

Audio capture doesn't work with non-default sink

Hello! I have noticed that when a non-default sink is selected, or if the sink is changed after OBS is opened, audio isn't recorded at all (and I noticed the hard way: I recorded a whole interview with no audio...). This is reproducible 100% of the time and with any sink. Sometimes the issue is seen when changing the sink after OBS is started, sometimes even if it is changed before OBS is started, which makes understanding what's going on really difficult.

I am using PipeWire 1.0 with WirePlumber (no difference is seen when using pipewire-media-session) from the PipeWire PPA related to this project on KDE Neon (based on Ubuntu 22.04).

Here are the OBS logs:
2023-12-05 11-29-09.txt

Here is the output of pw-dump:
pw-dump.json

Here is a screen recording that showcases the issue:

untitled.mp4

Any idea what might be going on?

1.0.5 release doesn't work with obs 27

Not sure if intentional but should be documented somewhere because it is confusing. The current newest release 1.0.5 loads as a plugin according to the obs log but doesn't add any new sources. With the 1.0.4 release I see the new sources. This is probably related to the obs version I am on which is 27.2.4-2 from the arch linux package which isn't updated to 28 yet.

Workaround for Window Titles Missing

Hello!

Since Fedora 36 updated to a WirePlumber combination that hides window titles (for security, supposedly) -- this leads to a lot of usability dysfunction for audio applications which only use the Window Title.

Could you consider adding either the process ID or sink/source ID to the dropdown?

This would then make them uniquely selectable, and fix the lacking window title issue.

For example:

List with Process IDs

10390: firefox
10513: firefox
10543: firefox
10618: firefox
11552: firefox
11577: firefox
21722: firefox
23761: firefox
23984: firefox
54638: firefox
54978: firefox
59980: firefox
140376: firefox
197235: firefox
287802: firefox
315014: firefox
315089: firefox
315117: firefox
315199: firefox
505970: firefox
509860: firefox
510132: firefox
519859: firefox
520027: firefox
520110: firefox

List with Source IDs

This solution is less useful to end-users, who are often not aware of source IDs in Wireplumber, but this would still allow the selection of unique processes. I prefer the Process ID solution above, but maybe only SourceIDs are available within the API context... which would still be an acceptable workaround.

04: firefox
07: firefox
09: firefox
10: firefox
12: firefox
13: firefox
17: firefox
18: firefox
19: firefox
22: firefox
25: firefox
36: firefox
38: firefox
43: firefox
52: firefox
61: firefox
77: firefox
78: firefox
80: firefox
82: firefox
84: firefox
89: firefox
90: firefox

Feature Request: Add app to visible Allow and Block list

Thinking it be neat if there was a list box in this plugin and you could allow or block apps via button that adds it to a list which has Application/processname with allowed or blocked to the right of it depending on which button you pressed (Allow/Block buttons).

Maybe this would also be good for being able to include apps/processes into the list that are not present in the auto detect system?

Application Capture doesn't work with EasyEffects

Hello!

So, I have both Pipewire and Wireplumber (a standard Fedora 36 workstation).

It doesn't seem to matter what application source I put in OBS, it records all of my system audio.

image

Regardless of the comment in #8, this also happens with multiple applications.

Application Audio Capture: Capture all apps except this one does not persist across OBS restarts

Thank you very much for obs-pipewire-audio-capture 🙇 It has resolved several audio-related issues in my OBS Studio setup and helped simplify my scene/source composition.

Expected behaviour

When adding an Application Audio Capture (PipeWire) source and checking Capture all apps except this one, the option will persist across restarts of OBS Studio.

Actual behaviour

When adding an Application Audio Capture (PipeWire) source and checking Capture all apps except this one, it is only effective for the current OBS Studio session. Upon restarting OBS Studio Capture all apps except this one is unchecked and needs to be re-enabled.

Configuration

  • OBS Studio 28.0.1
  • obs-pipewire-audio-capture 1.0.4
  • Ubuntu MATE 22.04.1
    • pipewire 0.3.48
    • wireplumber 0.4.8

PipeWire was manually installed as follows:

apt-get install gstreamer1.0-pipewire pipewire-audio-client-libraries wireplumber

Feature request: filter source

Hello and thank you for this plugin.

Is it possible to make it in the source filters, in case of I want to output the sound of a source before or after other plugin in the filters list? And make this output persistent (not disappearing when the media/source is not played).

I'm using OBS 27.2.4.

OBS Apllication Audio Capture

I use the application audio capture but it is reading from my desktop audio instead. as in i select it to only take audio from discord. it will take audio from discord but also spotify and any other application i have open.

Update claimed OBS version reqirement

Forum and Readme claims OBS minimum verseion required is 28, but 29.1.3 fails with the error

warning: obs_register_source: Tried to register obs_source_info with size 408 which is more than libobs currently supports (400)

while no such issue exists in 30.0.2.

Render VUs in Source Selection Dialog

I don't know if this is even possible, so feel free to close if it's not.

Could you render volume (such as shown in the mixer), in the source select dialog?

This would help users identify which process is making sound, such as for #11 .

"Change source until meters start responding" is a very simple user workflow.

Audio Capture does not work with Pro Audio configurations.

@dimtpap

Are you using a Pro Audio profile?

Yes.

Currently it doesn't work with that so if possible switch to another one. If you are using such profile please open another issue about it

Here we are:

info: [pipewire] Created stream 0x5596e87baca0
info: User added source 'Application Audio Capture (PipeWire)' (pipewire_audio_application_capture) to scene 'Scene'
info: [pipewire] Created app capture sink 142 with 2 channels and position AUX0,AUX1
info: [pipewire] 0x5596e87baca0 Got format: rate 192000 - channels 2 - format 4 - frame size 8
warning: [pipewire] Could not connect port 168 of node 67 to app capture sink. No port of app capture sink has channel FL
warning: [pipewire] Could not connect port 179 of node 67 to app capture sink. No port of app capture sink has channel FR
warning: [pipewire] Could not connect port 168 of node 67 to app capture sink. No port of app capture sink has channel FL
warning: [pipewire] Could not connect port 179 of node 67 to app capture sink. No port of app capture sink has channel FR

PipeWire + Wireplumber + EasyEffects on Artix Linux with a Focusrite Scarlett 2i2 set to Pro Audio.

Plug-in does not hook application audio

Used this plug-in as an attempt to have something such as "win audio" but no audio was being played back. Note, I use easyeffects and helvum.

Operating System is Fedora Workstation 36
Pipewire version is 0.3.49
System uses x86_64 architecture

How to replicate:

  1. Boot up obs
  2. Add application audio input

Plugin fails to initialize in flatpak OBS

In the flatpak version of OBS unless its given --filesystem=xdg-run/pipewire-0 permission the plugin will fail when adding a new audio capture with the following error:

warning: [pipewire] Error creating PipeWire core
error: Failed to create source 'Application Audio Capture (PipeWire)'!

I'm not an expert on the Linux audio stack, and I don't know if there is some limitation regarding pipewire audio access through xdg-portal (i checked that easyeffects flatpak also has this permission granted) but in that case it would be good to include this workaround on the README until this gets merged on the main OBS repository.

Changing output device breaks the capture

Issue

When a PipeWire source pointing to an application is added and there's audio playing, the incoming sink is fine. But if I change the output device using a control app like pavucontrol, your PipeWire plugin loses the feed.

Workaround

Removing the audio source and adding it again forces your plugin to "refresh" the source, and it comes back

Why did you write this

I actually wanted a per-app plugin for the longest time. THANK YOU for making it!

(edited to clarify)

NixOS straight up not working

So, using the provided package for this, it doesn't work at all, the plugin doesn't even load, OBS doesn't even acknowledge its existence in the console. When loading it the binary way, absolutely no audio what so ever gets recorded or streamed. Not sure what to do for it, I am using wireplumber.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.