5002 Commits

Author SHA1 Message Date
Sebastian Beckmann
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 Beckmann
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
Tarulia
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
Warchamp7
cea2d6938a frontend: Remove Source from source names 2025-12-17 20:34:05 -05:00
Sean DuBois
cd4d624ec3 obs-webrtc: Add Simulcast Support 2025-12-17 13:41:59 -05:00
pkv
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
pkv
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
pkv
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
katahtonic
e448c0a963 rtmp-services: Add additional SharePlay.tv servers 2025-11-04 15:37:44 -05:00
Dan Coffey
335357a562 rtmp-services: Rename Dolby Millicast to Dolby OptiView Real-time
Additionally, update info links.
2025-11-04 15:27:03 -05:00
태스키_박태연
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-SOOP
32ba0c3897 rtmp-services: Add SOOP Global 2025-10-31 13:47:41 -04:00
Service Checker
ea7078b493 rtmp-services: Remove defunct servers/services 2025-10-29 13:35:26 -04:00
Sebastian Beckmann
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 Stanway
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
Service Checker
bbd97ebbcf rtmp-services: Remove defunct servers/services 2025-09-15 20:25:59 -04:00
Matt Gajownik
99c3a4b797 Update translations from Crowdin 2025-09-08 22:38:40 -04:00
Amin.MasterkinG
4d4fb003db rtmp-services: Update MasterStream.iR ingest 2025-09-08 15:55:58 -04:00
Service Checker
1eb6bdee59 rtmp-services: Remove defunct servers/services 2025-09-03 20:47:36 -04:00
pkv
e33eab7f2a nv-filters: Guard function introduced in sdk >= 1.6.0
I forgot to guard NvAFX_UninitializeLogger() called in Destroy function.

Signed-off-by: pkv <pkv@obsproject.com>
2025-09-03 16:43:18 -04:00
PatTheMav
8e79dcfc8c plugins: Ensure that graphics device type checks use graphics context 2025-09-03 13:34:51 -04:00
Sebastian Beckmann
ef93ef6950 obs-ffmpeg: Null-check url query parameters
Fixes a crash if someone streams to a URL that does not have any query
parameters.

Amends 55c4ca9e63.
2025-09-02 17:13:46 -04:00
Brahmajit Das
69162b12ec obs-ffmpeg: Fix build with FFMPEG 8 and above
With commit https://github.com/FFmpeg/FFmpeg/commit/822432769868 FFMPEG
has removed almost all of the FF_API_FF_PROFILE_LEVEL related defines.
They were deprecated since 2023-09-06. This results in build failures.

This is first found on Gentoo with FFMPEG pre-release version.

Downstream-bug: https://bugs.gentoo.org/961699
Signed-off-by: Brahmajit Das <listout@listout.xyz>
2025-08-28 16:31:37 -04:00
derrod
3f393faa3c obs-outputs: Reset start time and remove unnecessary timestamp adjustments 2025-08-25 20:04:08 -04:00
Ryan Foster
2cb17dbc04 obs-browser: Update version to 2.26.0
obsproject/obs-browser@e5f0dbf - Add check for Metal in render function
obsproject/obs-browser@0e38358 - Fix stack smash crashes on Linux
obsproject/obs-browser@a9848f6 - Remove support for CEF 3770 and older
obsproject/obs-browser@0cc2b21 - Remove support for CEF versions older than 4103
obsproject/obs-browser@e1f1cb7 - Remove support for CEF versions older than 4183
obsproject/obs-browser@d1368fb - Remove support for CEF versions older than 4430
obsproject/obs-browser@93e3d1e - Remove ENABLE_WASHIDDEN
obsproject/obs-browser@963e2eb - Remove support for CEF versions older than 4472
obsproject/obs-browser@78008fc - Remove support for CEF versions older than 4638
obsproject/obs-browser@8fe72cc - Remove support for CEF versions as old as 4638
obsproject/obs-browser@0dde9f9 - Use v2 of obs_properties_add_button
obsproject/obs-browser@53d9a09 - Update clang-format to 19.1.1
obsproject/obs-browser@5306c61 - build-aux: Update run-format script to current obs-studio state
obsproject/obs-browser@c3b1e81 - Update version to 2.26.0
2025-08-25 19:38:30 -04:00
Sebastian Beckmann
b9c25ad94c win-dshow: Temporarily tolerate deprecated autoselect functions
These usages should be removed! On Clang or GCC this would throw a
warning now, but unfortunately on MSVC (the only compiler this plugin is
built with) PRAGMA_WARN_DEPRECATION disables the warning completely.

The only reason the usages here are tolerated is that removing them is
not completely trivial and I cannot test it.
2025-08-25 19:13:25 -04:00
Sebastian Beckmann
a92464d421 mac-avcapture/legacy: Remove autoselect feedback 2025-08-25 19:13:25 -04:00
Service Checker
31574b416f rtmp-services: Remove defunct servers/services 2025-08-22 23:33:47 -04:00
Sean DuBois
e4322bac68 obs-webrtc: Add version IFDEFs for 0.23.0
SenderReports are automatically sent. Disabling them via IFDEF so they
don't fail the build.
2025-08-22 21:55:56 -04:00
pkv
55c4ca9e63 obs-ffmpeg: Fix crash when using a pkt_size != 1316
This fixes a crash when using a pkt_size which is not the UDP default of
1316 Bytes ( 7 * 188 ).

Signed-off-by: pkv <pkv@obsproject.com>
2025-08-22 19:07:21 -04:00
pkv
67b0b44fec obs-ffmpeg: Log SRT listener waiting for a connection
Signed-off-by: pkv <pkv@obsproject.com>
2025-08-22 19:07:21 -04:00
pkv
1407398e7f obs-ffmpeg: Change OBS-OUTPUT-XXX returns for RIST protocol
This updates a few OBS-OUTPUT-XXX to better reflect the output failures
for the RIST protocol.
Signed-off-by: pkv <pkv@obsproject.com>
2025-08-22 19:07:21 -04:00
pkv
467967eab6 obs-ffmpeg: Fix a crash with invalid URL
This fixes a crash when an invalid URL is used.

Signed-off-by: pkv <pkv@obsproject.com>
2025-08-22 19:07:21 -04:00
pkv
651544a487 obs-ffmpeg: Reimplement reconnection logic in mpegts muxer
This reimplements the reconnect logic in mpegts muxer.
Taking cues from the WHIP output, a start and stop thread is used,
controlled by a mutex, ensuring the start and stop pipelines can never
be run concurrently.
Fixes bugs #11885, #11721, #11620, #11062, #12133.
For better readibility, this commits also breaks the big set_config
function into smaller units.

Signed-off-by: pkv <pkv@obsproject.com>
2025-08-22 19:07:21 -04:00
pkv
8d9bd44179 obs-ffmpeg: Fix reconnection for SRT protocol
This is the first part of a fix for reconnection issues with SRT
protocol.
This part implements the logic on the side of the protocol.
The fixes are as follows:
- a cleanup of return values of the various functions used. The main
libsrt_open function returns OBS_OUTPUT_XXX enum members. But the other
functions return now only AVERROR(xxx).
- an explicit check of the socket state before returning
OBS_OUTPUT_SUCCESS. This fixes an issue due to relying on socket
non-blocking mode; in caller mode, the srt_connect function will return
a success even before a connection has succeeded since it relies on
notifications by srt_epoll_wait. This would prompt obs UI to display a
successful reconnection in spite of a failure.

Signed-off-by: pkv <pkv@obsproject.com>
2025-08-22 19:07:21 -04:00
pkv
3ae9d6a106 obs-ffmpeg: Cleanup for mpegts muxer
The do_log function defined for the muxer expects that the struct is
named stream rather than output. So rename output to stream.
This also avoids confusion with stream->output which is an obs_output_t
pointer.

Signed-off-by: pkv <pkv@obsproject.com>
2025-08-22 19:07:21 -04:00
derrod
2eabfdad55 obs-outputs: Allow enabling BPM for Hybrid MP4 output 2025-08-22 17:35:16 -04:00
tytan652
2fe0385d13 linux-pipewire: Add aspect ratio to video capture format name 2025-08-22 14:34:28 -04:00
tytan652
3cce28a1d3 linux-pipewire: Add framerates to video capture format name 2025-08-22 14:34:28 -04:00
tytan652
c11253bb08 linux-pipewire: Use list-based format selector for video capture
Negotiation is now made with the user selected format.

Also fixes a typo in the name of a structure.
2025-08-22 14:34:28 -04:00
derrod
86f98beaf1 obs-nvenc: Add SDK 13.0 features 2025-08-21 18:35:35 -04:00
derrod
c6650e212c obs-nvenc-test: Add SDK 13.0 features and Blackwell 2025-08-21 18:35:35 -04:00
derrod
fd757d6edd obs-nvenc-test: Add error message for session limit being hit 2025-08-21 18:35:35 -04:00
derrod
43e8d02117 obs-nvenc-test: Query device info even if NVENC fails 2025-08-21 18:35:35 -04:00
derrod
666b2c7141 obs-nvenc-test: Add device architecture to device info 2025-08-21 18:35:35 -04:00
derrod
5f2a4e976f obs-outputs: Add support for Hybrid MOV 2025-08-21 18:14:33 -04:00