Finally... The CEF they used was 2 years out of date, and after RCE exploits [0] occuring in the wild getting big enough that they got picked up in the media [1], we finally have a fix 1 month later.
You can find why it was complicated [0] and why it took so long [1] on GitHub. I do wish I had been faster on it. That said, the RCE required the user to be using a vibe-coded web-based chat overlay that didn't properly sanitize chatter inputs, so has a (hopefully) limited scope.
Thanks for chiming in and linking that, that was an interesting read. As much as I understand CEF's reasoning for making this shift, it's baffling that they don't provide a universal way to implement what you now had to implement yourself.
I haven't spent much time in the video processing/streaming space, but I was delighted to discover OBS Studio this week while putting together what has turned out to be an incredibly cozy little entertainment setup by feeding the two gaming consoles and geriatric gaming desktop I've acquired over the years into an HDMI switcher and USB HDMI capture box that in turn streams the feed into an OBS Studio preview (launched from Steam) running on a dummy display.
Launching OBS Studio through Steam lets me stream that preview to my VR headset over a 6GHz WiFi dongle and play games wirelessly in what feels like my own little private theatre. OBS Studio was the puzzle piece I hadn't figured out when the headset showed up last weekend, and I've been really impressed by its performance so far... I think this setup even shaved some latency off when playing online, since consolidating the consoles next to the router let me hardwire them.
Many many thanks to the OBS Studio team for making software that's helping me live out a small part of what I remember hoping technology could be like back in the 90s. I am grateful (:
There are a handful of comments here rueing buggy behaviors. These days with nearly the same amount of effort to post a complaint you can delegate the task of reproducing the issue, diagnosing the root cause, and proposing a fix. Yes, it may incur a small to moderate cost, but it's a contribution to an open source project that apparently provides some value in return.
I think this is what the whole "AI killed software" fallacy came from.
>nearly the same amount of effort to post a complaint you can delegate the task of reproducing the issue, diagnosing the root cause, and proposing a fix.
Is the effort the same though?
And even it is the same, making a meaningful contribution to an open source project doesn't mean just fixing your problem, but you also need to stay in line with the contribution guidelines, the project's direction and many more, which takes much more effort than just vibe coding a version for yourself.
Building software for one and for a bunch are two different things. AI is good at the former and can be used for the later but not without much effort. Models will get better, true, but that doesn't mean we need less engineering, in fact we need more to stay up-to-pace with AI. Imagine everyone submitting a PR to fix a bug, how fast can you review it manually? And if you use AI to review/verify them, the cost just shift from person who submitted the PR to the open source maintainer.
That doesn't mean AI is bad but that we need new systems and rules.
Okay, I'll bite the bait. Assuming that I am a regular user (think gamer), I have a Windows PC, no dev tools, no AI subs or accounts, no GitHub. How specifically can I do the steps required to propose the fix they way you suggest?
Out of interest- what is your recommended path for this? I mean the path of least resistance where I don’t even have to check out the code locally or similar.
Officially and unofficially, the most you need to do is create an Issue report with valid reproduction steps. You'd be surprised how quickly some issues get fixed just because someone finally provided the missing link in an Issue.
Did they finally fix the bug where if you have less than ~40gb storage the recording will just randomly die for no reason with no notice, it is unimaginably annoying
Is this on macOS [0] or another platform? I don't think I've heard of this issue - if you have a log of such a session, please create a bug report [1].
I love that I can stream from my iPhone directly into OBS on my Mac. I don't love that Metal shaders aren't supported, and I have to rely on janky extensions to get them working.
OBS is much more aimed at livestreaming to platforms like Twitch and managing multiple cameras incl one of you, one of your screen etc. Well beyond what Cap is for.
But yes, use the most specialized tool for the task at hand.
Cap completely ate several recordings for me. Admittedly they were over an hour long, and I should’ve broken them up a bit, and perhaps it’s not what it’s used for. Switched back to OBS, while it’s not as easy to use it’s pretty reliable
While we're here, does anyone know a screen recording application that automatically takes into account display changes, audio device changes, camera resets, etc.?
I'm making do with OBS, but I lose more video to "plugged in external monitor and forgot to update OBS config" than I actually record.
Yes, please, that would help so much. OBS seems to be designed for static setups and a single output stream. In my case, I have a setup that changes often (for example, connect a USB video device that processes input from a microscope). I thought I would be able to record multiple video streams at once without burning them into a single output stream (e.g. to multiple files, or a multi-stream file), but this turned out to be difficult without hacks.
The Branchoutput plugin[1] is what you are looking for for multi recording/streaming. It allows you to add recording (or streaming destinations) to individual sources, scenes and outputs via the video filter settings. It is really quite powerful.
Thanks -- this does look like it would do this. But I'm wondering if this entire setup isn't completely overkill. All I need is to record multiple video streams simultaneously. I currently do this by launching multiple Quicktime Player apps and clicking "record" in each one of them...
Have you considered using GStreamer pipelines for this? And taking it one step further, if you want to use OBS generally, there's a plugin for OBS that allows you to integrate pipelines too.
The common case for the plugin is to do some preprocessing before importing the video into OBS, but you can also use the pipeline as a video filter, which is really powerful, because you can inject a filter into not only a single source, but also at any level of a nested scene. So you can scale/composite several inputs together and then the video filter can copy the source stream and encode/tee it to a file output. Might still be considered a hack of sorts.
I too frequently plug and unplug dock and external displays. It's a little painful to keep checking and sometimes re-add display source to get the default screen and voice recording working.
I wonder if the "modern" way for problems of this nature is to fork the open-source repo and ask your favourite agent to strip it down to bare essentials that you need (performance gains) and add the specific feature enhancements you want (needs to work only for your configuration -- may not pass the quality standard needed for a PR)
This could probably be automated using either an OBS plugin (if you really want deep integration and not running another program) or a standalone program (written in whatever language you want) that listens for display changes and pokes OBS using its websocket API. The hooks are definitely there to update source configs.
Surely the main function of a capture program should be to capture video, no matter what, even if that means capturing too much / uninteresting sources some of the time?
Except it's really designed to composite video from a bunch of different places and broadcast the result, whether they are windows, screens, cameras, etc. And a rather lot of people don't want every screen to be captured, just the ones that they have selected. It's not a "screen recorder" program, really. And it's explicitly designed with an API to be remote controlled if hardware changes out from under it, so you can encode exactly your own policy logic on what to do. (External display plugged in? Disable my laptop source at full resolution and enable my laptop and monitor sources, side by side, with one scaled as necessary, and in this layout. But if I'm currently recording or streaming, don't do anything. - this is user-specific logic)
The plugin-loading overhaul and improved source snapping look like useful updates. OBS continues to show how much attention to detail matters in open-source software. Excited to see how creators and plugin developers adapt to version 33.0!
Finally... The CEF they used was 2 years out of date, and after RCE exploits [0] occuring in the wild getting big enough that they got picked up in the media [1], we finally have a fix 1 month later.
[0] https://blog.scrt.ch/2026/09/22/how-one-twitch-chat-message-...
[1] https://news.ycombinator.com/item?id=49852143
[2] https://www.scworld.com/brief/vulnerable-obs-overlay-and-chr...
[0] https://github.com/obsproject/obs-studio/discussions/3853#di...
[1] https://github.com/obsproject/obs-studio/discussions/3853#di...
Launching OBS Studio through Steam lets me stream that preview to my VR headset over a 6GHz WiFi dongle and play games wirelessly in what feels like my own little private theatre. OBS Studio was the puzzle piece I hadn't figured out when the headset showed up last weekend, and I've been really impressed by its performance so far... I think this setup even shaved some latency off when playing online, since consolidating the consoles next to the router let me hardwire them.
Many many thanks to the OBS Studio team for making software that's helping me live out a small part of what I remember hoping technology could be like back in the 90s. I am grateful (:
>nearly the same amount of effort to post a complaint you can delegate the task of reproducing the issue, diagnosing the root cause, and proposing a fix.
Is the effort the same though?
And even it is the same, making a meaningful contribution to an open source project doesn't mean just fixing your problem, but you also need to stay in line with the contribution guidelines, the project's direction and many more, which takes much more effort than just vibe coding a version for yourself.
Building software for one and for a bunch are two different things. AI is good at the former and can be used for the later but not without much effort. Models will get better, true, but that doesn't mean we need less engineering, in fact we need more to stay up-to-pace with AI. Imagine everyone submitting a PR to fix a bug, how fast can you review it manually? And if you use AI to review/verify them, the cost just shift from person who submitted the PR to the open source maintainer.
That doesn't mean AI is bad but that we need new systems and rules.
* Appeal to personal responsibility;
* False equivalence.
I'll strike those off my bullshit bingo card.
[0] https://github.com/obsproject/obs-studio/issues/10596
[1] https://github.com/obsproject/obs-studio/issues
Much happier with Cap for screencast recording https://github.com/capsoftware/cap
But yes, use the most specialized tool for the task at hand.
Even if the preview player shows it correct, once it's rendered the cursor just seems to drift way off making the video useless.
I've gone back to using QuickTime.
I'm making do with OBS, but I lose more video to "plugged in external monitor and forgot to update OBS config" than I actually record.
[1] https://obsproject.com/forum/resources/branch-output-streami...
The common case for the plugin is to do some preprocessing before importing the video into OBS, but you can also use the pipeline as a video filter, which is really powerful, because you can inject a filter into not only a single source, but also at any level of a nested scene. So you can scale/composite several inputs together and then the video filter can copy the source stream and encode/tee it to a file output. Might still be considered a hack of sorts.
I wonder if the "modern" way for problems of this nature is to fork the open-source repo and ask your favourite agent to strip it down to bare essentials that you need (performance gains) and add the specific feature enhancements you want (needs to work only for your configuration -- may not pass the quality standard needed for a PR)
People streaming things mights disagree.
Answer this thread if you struggle and I can post when I get to the office