obsproject / obsproject/obs-studio
fails to reestablish audio after losing & regaining sound device permission (linux)
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 76.4k
- Forks
- 10.2k
- Avg merge
- 4d 23h
- Merged PRs (30d)
- 12
Description
Operating System Info
Other
Other OS
Debian Bookworm
OBS Studio Version
Other
OBS Studio Version (Other)
29.0.2
OBS Studio Log URL
https://obsproject.com/logs/M6bCbSlbM3AMHSI5
OBS Studio Crash Log URL
No response
Expected Behavior
When using Control+Alt+F3 to to switch to another virtual console, OBS temporarily loses permission to the audio device from which it was recording. When returning to the desktop virtual console and given permission to the device again, OBS Studio should resume collecting audio from the device.
Current Behavior
OBS Studio fails to resume ingesting from the audio source.
Steps to Reproduce
- Install a reasonably recent version of PipeWire and PipeWire-Pulse.
- Remove all users from the "audio" group. (To make sure access control works correctly when switching virtual consoles in this test.)
- Start a program that produces audio through PipeWire.
- Select that audio source in OBS Studio.
- Note that OBS is receiving audio.
- Switch to a different virtual console using Control+Alt+F3 or similar.
- Wait a couple seconds.
- Switch back to the original virtual console.
- Note that OBS is no longer receiving audio.
Anything else we should know?
I don't know whether OBS Studio loses the audio stream directly in reaction to the device permission change, or in reaction to an audio source state change when PipeWire reacts to the permission change. (I suspect the latter.)
Audio ingestion can be restored by selecting a different source in OBS and then selecting the original source again, or by restarting OBS. Of course, these workarounds are less than ideal.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the permission change with PipeWire and PipeWire-Pulse using the listed virtual-console steps, then inspect the OBS log at https://obsproject.com/logs/M6bCbSlbM3AMHSI5. Compare the audio source state before and after permission is regained; done means audio resumes without switching sources or restarting OBS.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, debian, linux
- Domain
- audio-video-rtc, desktop, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100