Changelog
Spout/Sink
The minimum size of a Sink is now 1x1 in order to work around crashes in built-in and third-party filters.
It is no longer possible to freeze/crash OBS Studio by intentionally making a Spout/Sink recursive while also having the properties of the Sink open.
Duplicating Sinks now properly acquires the Spouts without requiring an update to their properties.
Spout (Video Texture) and Spout (Video Frame) now provide the following additional replacement tokens for the name field: ${width}, ${height}, ${base_width}, ${base_height}.
A 5.1 Audio layout is no longer incorrectly called 5.0 by the ${layout} token by Spout (Audio).
Fixed several visible/active state issues by replacing it with our own code.
Duplicating Sinks no longer causes the visible and active state to be inverted.
Moving Sinks from one Scene to another should now properly update the visible and active state of any referenced source.
Your RAM is no longer slowly being drained by the Spout/Sink recursion check leaking memory. It may have only been 20-30 bytes each frame, but at 60fps that does add up rapidly.
The stored frame queue is now properly cleared when changing which Spout you're targeting in a Sink.
Spouts can no longer publish thin air and get away with it.
Spouts now only update their list name when a Sink wants to know it, significantly reducing the overhead of updating their settings.
Scene Groups should now properly update and render instead of requiring the user to open a Scene with said group in it. This fixes a several year old issue that Source Mirror could never address due to the way it worked.
Source Mirror
This feature has now been removed and will automatically migrate you to Spout/Sink. If the target Source already has Spouts on it, they will be reused. Welcome to the future!
NVIDIA Broadcast/Maxine
Updated code to support the Blackwell generation. Note that you will need to update the NVIDIA Broadcast Redistributables as well, otherwise the effects will stop working with this update!
Added OpenGL support on Windows. NVIDIA has yet to released the necessary Linux redistributables without the proprietary license agreement.
Core
Added the necessary flags to hide proxy source/encoder registrations from you. These proxy registrations are only used to migrate you to newer versions of the plugin. You probably didn't even notice that this was happening behind the scenes!
Downloads:
System Requirements:
OBS Studio: 31.0.0 or 31.0.1
Operating System:
Windows 10 (21H2) or newer
Ubuntu 24.04 or newer
MacOS 12.0 or newer
CPU:
Any x86-64-v3 compatible, like AMD Excavator or newer, Intel Haswell or newer
Any ARM64-v8.5-A compatible, like Apple M1 Series or newer
RAM: 8 GB (or more)
GPU: DirectX 11 / OpenGL 4 compatible
VRAM: 4GB or 12 GB for NVIDIA Broadcast/Maxine
Notes:
The NVIDIA Maxine/Broadcast features require an NVIDIA Tensor capable GPU in addition to the matching NVIDIA Broadcast SDK Redistributables.
Known Issues/Quirks:
We do not handle sRGB and HDR in all situations yet. It's still unclear how to even handle sRGB and HDR in libOBS.
The following Features still need their Texture inputs migrated to Spout/Sink: Blur, Shader, Dynamic Mask.