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

[macOS] OBS crash on startup when system volume is running low on free space #10596

Open
HyggeLagom opened this issue Apr 25, 2024 · 3 comments

Comments

@HyggeLagom
Copy link

Operating System Info

macOS 14

Other OS

No response

OBS Studio Version

30.1.2

OBS Studio Version (Other)

No response

OBS Studio Log URL

https://obsproject.com/logs/FKVlHTxYAoYb7GNW

OBS Studio Crash Log URL

No response

Expected Behavior

OBS Studio starts up correctly without the crash and pixels are visible on macOS Screen Capture source.

Current Behavior

OBS Studio app crashes on startup when disk is almost full.

Steps to Reproduce

Set up simple scene in OBS Studio.

  1. Open the OBS Studio app
  2. Add new Scene
  3. Add macOS Screen Capture source with default option to capture Built-In Retina Display
  4. On mac menu bar screen sharing picker is visible

Next part is to limit free disk space on macOS. Easiest approach is to create new volume.

  1. Open Disk Utility app
  2. Select System Volume
  3. Add an APFS volume to the selected container system container
  4. Select "Size Options..." and reserve ~ 95% of free space on system volume (leave ~ 1 GB free)
  5. Add new volume
  6. Restart OBS Studio

After creating new volume screen picker is gone and OBS Studio source preview is frozen with static frame and does not update. Restarting the OBS Studio app results in immediate crash on startup.

Anything else we should know?

This bug will trigger during normal use of mac and it does not require to have 5% of free space on machine. It may happen even when there is more than 15 GB free on system volume, but its occurrence is random.

After the crash, OBS Studio suggests to run in Safe Mode, but running in safe mode also results in crash of the app.

Screenshot 2024-04-22 at 12 58 15

Quick investigation showed that similar issue with disk space was mentioned on other project: sessionprojector.app crashes when disk running out of space. macOS Screen Capture Content source is relaying on new API for screen capturing content called ScreenCaptureKit. I believe it may be correlated and I was able to stop picker on apps like Zoom or DisplayLink Manager, which makes me think that they also use this new API.

I believe there are other open-source projects that uses that API and this issue may be reproducible e.q. WebKit link

Issue is reproducible on latest macOS Sonoma 14.4.1 and macOS Sonoma 14.5 beta 3 with OBS Studio 30.1.2 on M2 Pro.

Attaching ips crashes and system profile.
MacBook Pro.spx.zip
OBS crashes.zip

@gxalpha
Copy link
Member

gxalpha commented May 3, 2024

Can reproduce the part where it stops capturing but can't get it to crash.
Your crash logs suggest that you have a Video Capture Device source, but the log doesn't show one. Can you confirm that the log link and the crashes are from the same session or at least with the same setup?

@HyggeLagom
Copy link
Author

This log link is from the same setup, but not from the same session. Crashes are from the same setup.

I had problems uploading the logs as the app was crashing on the start and was not able to upload the link in the GUI, so I restarted the OBS and sent it another day. Attaching the logs from the exact timestamps and same setup where the OBS app crash occurred.
OBS logs.zip

@HyggeLagom
Copy link
Author

I’ve downloaded the macOS Sequoia 15.0 Beta 1 for developers (24A5264n) and checked if bug is visible on new OS. Seems that issue has been resolved as I am no longer able to reproduce it. However, I would like to monitor it as this is the first beta of macOS 15.0 and the behaviour of the OS under low disk space may change in the next OS Beta release.

In the meantime, small investigation showed that ScreenCaptureKit developers team updated API for macOS 15.0 with new behaviour. One interesting point is the flag systemStoppedStream, which further reading in the Xcode SDK docs states that it will be raised when OS stops the stream (https://developer.apple.com/documentation/screencapturekit/scstreamerror/4370006-systemstoppedstream?changes=latest_minor). I believe it may be correlated with the low disk space issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants