5033 Commits
Author SHA1 Message Date
Ryan Foster 3a9cf4adb1 obs-websocket: Update version to 5.7.3
Fix a build issue with Clang 21.
2026-04-01 14:56:27 -04:00
Hoshino LinaandRyan Foster 5533a277e4 linux-v4l2: Fix spurious fd closing
Make sure to use the invalid fd -1 when the output is not opened, and
only close valid fds. If fd 0 is closed, then this closes stdin. The
second time this happens, some other important fd will have become fd 0,
breaking something.

This causes random things to break (browser/CEF in reports, but really
it could be anything) as the wrong fds get closed.
2026-03-08 12:12:44 -04:00
Barnabás PőczeandRyan Foster 5d04d51011 linux-pipewire: Fix uninitialized camera resolution access
The use of `SPA_POD_OPT_Rectangle()` means that if the rectangle cannot be
parsed, then no error will be returned. In that case uninitialized variables
will be used. This can happen if the pod object contains e.g. a list of
resolutions (`SPA_CHOICE_Enum`).

Fix that by using `SPA_POD_Rectangle()`, which enforces successful parsing.
2026-03-08 00:09:24 -05:00
Ryan Foster 68984b4a9d obs-websocket: Update version to 5.7.2
Fixed an issue where some sources (inputs) could not be updated.
2026-03-03 22:45:56 -05:00
Warchamp7andRyan Foster 36d1dd8fdb obs-websocket: Update version to 5.7.1
New Features:
- Added Canvas support [exeldro]
- `GetCanvasList` request
- `CanvasCreated` event
- `CanvasRemoved` event
- `CanvasNameChanged` event

Bug Fixes:
- Fixed a possible crash on OBS shutdown [exeldro]

Changes:
- Updated translations [WizardCM]
- Various fixes and improvements to Canvas support [tt2468/Warchamp7]
2026-02-27 16:28:14 -05:00
Ryan Foster 9f1423f20e obs-browser: Update version to 2.26.8
obsproject/obs-browser@cda4f1f - Revert custom scheme handler protocol
obsproject/obs-browser@ea04212 - Update version to 2.26.8
2026-02-13 15:19:39 -05:00
Ryan Foster 9a4666e284 obs-filters: Remove unnecessary nvafx-load.h header
This was left behind from 50b0943cec.
2026-02-12 18:13:00 -05:00
Tristan MatthewsandRyan Foster c75d7f4095 rtmp-services: Remove defunct STAGE TEN 2026-02-10 14:08:01 -05:00
trilkkandRyan Foster 57c37e4adc plugins: Use exact types to avoid clang-19 errors 2026-02-05 16:54:16 -05:00
Ryan Foster 7a75dbe7dc obs-browser: Update version to 2.26.7
obsproject/obs-browser@f93477b - Fix local filepath on POSIX
obsproject/obs-browser@b59127a - Update version to 2.26.7
2026-02-04 17:33:12 -05:00
sravanth simhadriandRyan Foster 17d5b3c5fd rtmp-services: Add Sportify 2026-02-03 14:13:43 -05:00
Ryan Foster 3590b1d0d5 obs-browser: Update version to 2.26.6
obsproject/obs-browser@8a45650 - Update local file scheme handler
obsproject/obs-browser@df0330f - Update version to 2.26.5
obsproject/obs-browser@1738605 - Fix cmake includes on Linux and macOS
obsproject/obs-browser@8725f07 - Update version to 2.26.6
2026-01-24 13:46:17 -05:00
tytan652andRyan Foster 0d1f61b04b linux-pipewire: Fix camera framerate listing
The SPA format (pixelformat) was compared with a libobs video format
value.

Also removes the SPA format support check since at this point it already
has been done while listing formats.
2026-01-23 10:57:10 -05:00
katahtonicandRyan Foster d3dfadfbf5 rtmp-services: Remove legacy SharePlay.tv servers 2026-01-20 13:39:14 -05:00
Warchamp7andRyan Foster e6b52f2e9b libobs, frontend: Signal transition_stop for cancelled transitions 2026-01-16 15:57:36 -05:00
Dimitris PapaioannouandRyan Foster 9251ea5374 linux-pulseaudio: Fix bad channels message format 2026-01-16 15:16:57 -05:00
Barnabás PőczeandRyan Foster c13c7c0c3f linux-pipewire: Fix format description
The resolution and aspect ration should be added to the description of
the format even if there are no available frame rates.

The code is restructured a bit to avoid having to call `dstr_free()`
before each `continue`.

Fixes: 4cfcfc8c35 ("linux-pipewire: Make camera framerate non-mandatory")
2026-01-16 14:50:27 -05:00
tytan652andRyan Foster 4cfcfc8c35 linux-pipewire: Make camera framerate non-mandatory
Formats can be without any framerate options.
2026-01-14 14:25:27 -05:00
Anton KesyandRyan Foster 526c8928af plugins: Fix typos 2026-01-14 13:47:30 -05:00
jcmandRyan Foster 4021c97619 mac-capture: Avoid inadvertent capture of screen content 2026-01-14 12:22:41 -05:00
pkvandRyan Foster 65afc7ae36 nv-filters: Skip Blur filter for HDR
The HDR support is removed from the full blur FX but kept for Background
Blur and Greenscreen FX.
The Blur FX is SDR only but for Background Blur it can be tolerated
since the foreground is not touched.

Signed-off-by: pkv <pkv@obsproject.com>
2026-01-14 12:01:46 -05:00
pkvandRyan Foster 1c24881f07 nv-filters: Remove stage image for Video FX
When transferring images within the GPU, there is no requirement to
create stage images.

Signed-off-by: pkv <pkv@obsproject.com>
2026-01-14 12:01:46 -05:00
pkvandRyan Foster 616098543e nv-filters: Fix banding issues with Blur effects
We were giving images to the Blur effect in linear color space.
This caused a darkening of colors with banding effects.
This fixes the issue.
For Background Blur FX, we composite the original texture with the
blurred one using the mask provided by AI Greenscreen.
This means the non blurred area will look the same whether the filter is
applied or not, irrespective of OBS settings and the nature of the
source. For both HDR & SDR this preserves the colours in non blurred
zones.

Signed-off-by: pkv <pkv@obsproject.com>
2026-01-14 12:01:46 -05:00
derrodandRyan Foster dd89ae7432 obs-ffmpeg: Set initial_padding in FFmpeg muxer 2026-01-14 10:48:04 -05:00
derrodandRyan Foster 6ea43da29d obs-libfdk: Implement priming samples API 2026-01-14 10:48:04 -05:00
derrodandRyan Foster 40a08490d0 obs-ffmpeg: Implement priming samples API 2026-01-14 10:48:04 -05:00
derrodandRyan Foster 8216b73045 coreaudio-encoder: Implement priming samples API 2026-01-14 10:48:04 -05:00
Matt GajownikandRyan Foster cf733a6002 obs-browser: Update version to 2.26.4
obsproject/obs-browser@f5f64b1 - Update version to 2.26.4
obsproject/obs-browser@a710c96 - Update translations from Crowdin
2026-01-10 01:02:43 -05:00
Matt GajownikandRyan Foster a5f0988933 Update translations from Crowdin 2026-01-10 01:02:43 -05:00
Gary HolmesandRyan Foster 6076ada562 obs-outputs: Fix chapter ts when using file splitting
Chapters take their timestamp from the total video frame time. With
file splitting enabled in recording settings, the time offset since
the start of the current split was made needs to be considered before
submitting chapters to the muxer.
Change to subtract start_time of the current output from the chapter
timestamp.
2026-01-09 15:26:05 -05:00
Service CheckerandRyan Foster f4aaa5f041 rtmp-services: Remove defunct servers/services 2026-01-06 11:36:55 -05:00
Sebastian BeckmannandRyan Foster 4ad3df3af8 coreaudio-encoder: Use canonical format enum instead of bitwise or
The enum members being getting the bitwise or here are from different
enums, and bitwise operations on members from different enums are
deprecated in C++20. kAudioFormatFlagsNativeFloatPacked is the
equivalent value (see its defintion), but removes the manual bitwise or.
2025-12-18 17:30:42 -05:00
Sebastian BeckmannandRyan Foster 2c7afd36ef mac-avcapture/legacy: Move comparison operator up
std::find is used in enumerate_frame_rates already, so the equality
operator is needed there. Until C++17 this is defined implicitly, but
since C++20 it's needed explicitly.
2025-12-18 17:30:42 -05:00
TaruliaandRyan Foster 1290898c74 plugins: Set missed default bitrates to 6000 kbps
efca325 already increased the default bitrate for various encoders.
However, some were missed and this commit fills the gap:

* Mac-VT
* OpenH264
* Texture AMF
* VAAPI
2025-12-17 21:12:59 -05:00
Warchamp7andRyan Foster cea2d6938a frontend: Remove Source from source names 2025-12-17 20:34:05 -05:00
Sean DuBoisandRyan Foster cd4d624ec3 obs-webrtc: Add Simulcast Support 2025-12-17 13:41:59 -05:00
pkvandRyan Foster f86861cc8d linux-pulseaudio: Add monitoring deduplication calls
For 'pulse_output_capture', calls are added when devices are either
changed, started or removed.

The calls trigger a check against the monitoring device.

Signed-off-by: pkv <pkv@obsproject.com>
2025-12-12 15:21:42 -05:00
pkvandRyan Foster d4ef5ef2d7 mac-capture: Add monitoring deduplication calls
For 'coreaudio_output_capture', calls are added when devices are either
changed, started or removed.

The calls trigger a check against the monitoring device.

Signed-off-by: pkv <pkv@obsproject.com>
2025-12-12 15:21:42 -05:00
pkvandRyan Foster d9b5addf72 win-wasapi: Add monitoring deduplication calls
For 'wasapi output capture', calls are added when devices are either
changed, started or removed.

The calls trigger checks against the monitoring device.

Signed-off-by: pkv <pkv@obsproject.com>
2025-12-12 15:21:42 -05:00
katahtonicandRyan Foster e448c0a963 rtmp-services: Add additional SharePlay.tv servers 2025-11-04 15:37:44 -05:00
Dan CoffeyandRyan Foster 335357a562 rtmp-services: Rename Dolby Millicast to Dolby OptiView Real-time
Additionally, update info links.
2025-11-04 15:27:03 -05:00
태스키_박태연andRyan Foster c835bc57f1 rtmp-services: Change the server URL of AfreecaTV to SOOP Korea
Request a code modification due to the change of AfreecaTV name.

Effective October 15 2024, AfreecaTV has been rebranded to SOOP Korea.
2025-11-04 15:18:37 -05:00
Fortune-SOOPandRyan Foster 32ba0c3897 rtmp-services: Add SOOP Global 2025-10-31 13:47:41 -04:00
Service CheckerandRyan Foster ea7078b493 rtmp-services: Remove defunct servers/services 2025-10-29 13:35:26 -04:00
Sebastian BeckmannandRyan Foster 5984faefe4 mac-syphon: Use opaque effect on non-OpenGL renderer
"DrawOpaque" only exists in the default_rect effect, in the normal cases
it's just "Draw" in the opaque default shader.
2025-10-23 08:35:52 -04:00
PatTheMav 5ec3af3f6d obs-browser: Update version to 2.26.3 2025-10-17 14:31:38 +02:00
Ryan Foster a75fdd297b obs-browser: Update version to 2.26.2
obsproject/obs-browser@2bf7e77 - Restore source visibility code
obsproject/obs-browser@4056a31 - Update version to 2.26.2
2025-09-25 18:16:53 -04:00
Richard StanwayandRyan Foster efca325c2c frontend, plugins: Set default bitrate to 6000 kbps
The default of 2500 kbps was chosen 10 years ago and times have changed.
Logs and forums posts show that many users of OBS for recording don't
change their bitrate and end up with a 2.5 mbps recording which looks
terrible.

Now that service bitrate enforcement exists, this will be automatically
capped to the maximum bitrate for streaming services, so the only time
this should result in a problem is if the user's upload speed is the
limiting factor, hopefully rarer these days with increasing internet
speeds.
2025-09-17 19:56:04 -04:00
Ryan Foster fd17570221 obs-websocket: Update version to 5.6.3
Changes:
- Updated translations

Bug Fixes:
- Fixed obs_frontend_get_global_config() deprecation warning
2025-09-17 15:56:59 -04:00
Ryan Foster 134289ca9e obs-browser: Update version to 2.26.1
Updated translations.
2025-09-17 15:56:59 -04:00