Overview

Request 6128 (accepted)

- Update to version 31.0.0:

This is Just a draft request. it doesnt have the CEF support anymore ATM


obs-studio.changes Changed
x
 
1
@@ -1,4 +1,1992 @@
2
 -------------------------------------------------------------------
3
+Sat Dec 07 00:55:05 UTC 2024 - packman@nordisch.org
4
+
5
+- Update to version 31.0.0:
6
+  * Update translations from Crowdin
7
+  * libobs: Remove relative positioning functions
8
+  * libobs: Fix scale calculation when applying new group transform
9
+  * UI: Fix collision of existing backup files for new scene collections
10
+  * cmake: Fix build directory exclusion for real
11
+  * UI: Add unassigned icon
12
+
13
+-------------------------------------------------------------------
14
+Wed Nov 20 22:38:46 UTC 2024 - packman@nordisch.org
15
+
16
+- Update to version 31.0.0~rc1:
17
+  * obs-ffmpeg: Avoid setting negative bitrate for lossless audio codec
18
+  * UI: Fix broken module paths provided via environment on macOS
19
+  * frontend-tools: Correctly pass settings to modified cb on reload
20
+  * UI: Fix falling back to non-multitrack output after error
21
+  * UI: Fix autoconfig saving signed stream key
22
+  * UI: Forward auto rtmp/rtmps IVS preference
23
+  * UI: Ignore all auto URLs for server selection
24
+  * decklink: Fix string handling causing plugin to not function
25
+  * win-capture: Avoid NULL deref when capture not initialized
26
+  * cmake: Fix build directory exclusion
27
+  * mac-capture: Don't read channels for disconnected audio device
28
+  * obs-qsv11: Remove checks for DX11
29
+  * obs-qsv11: Remove old DX9 code
30
+  * obs-qsv11: Remove unused debug variable
31
+  * obs-qsv11: Move debug code into debug sections
32
+  * obs-qsv11: Remove old MSDK 1.6 code
33
+  * obs-filters: Move nvafx migration to queued task
34
+  * UI: Create YouTube Dock when switching profile
35
+
36
+-------------------------------------------------------------------
37
+Fri Nov  8 11:55:52 UTC 2024 - packman@nordisch.org
38
+
39
+- ok ... this split out obs-x264 needs more work. there is a few
40
+  places where it is hardcoded as a default. and there is no h264
41
+  non-hardware encoder via ffmpeg yet
42
+
43
+-------------------------------------------------------------------
44
+Fri Nov  8 11:35:58 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
45
+
46
+- Add ffmpeg-x11-linking.patch:
47
+  This one is weird ... the ffmpeg-mux plugin isn't actually using
48
+  XOpenDisplay and friends. So it could be a missing library in the
49
+  ffmpeg-7 devel packages in TW compared to packman.
50
+
51
+  I guess a bug in the ffmpeg build system which generates the
52
+  pkg-config files.
53
+
54
+-------------------------------------------------------------------
55
+Fri Nov  8 11:35:34 UTC 2024 - Marcus Rueckert <mrueckert@suse.de>
56
+
57
+- Make the build of the x264 plugin optional
58
+  adds libx264-optional.patch
59
+
60
+-------------------------------------------------------------------
61
+Fri Nov  8 11:13:05 UTC 2024 - packman@nordisch.org
62
+
63
+- split out the obs-studio libx264 support into a subpackage as a
64
+  preparation to only build it on packman 
65
+
66
+-------------------------------------------------------------------
67
+Fri Nov  8 11:12:21 UTC 2024 - packman@nordisch.org
68
+
69
+- switch buildrequires for fdk-aac to pkgconfig to make it work
70
+  with different naming of packages
71
+
72
+-------------------------------------------------------------------
73
+Sun Nov  3 02:37:15 UTC 2024 - packman@nordisch.org
74
+
75
+- bump ffnvcodec headers to at least 12.1.14.0 for
76
+  NV_ENC_ERR_NEED_MORE_OUTPUT
77
+
78
+-------------------------------------------------------------------
79
+Fri Nov 01 23:28:55 UTC 2024 - packman@nordisch.org
80
+
81
+- Update to version 31.0.0~beta3:
82
+  * obs-websocket: Update version to 5.5.4
83
+  * UI: Add trash and general icon
84
+  * UI: Add trash icon
85
+  * UI/themes: Fix missing icon in system theme
86
+  * UI/themes: Fix control button pressed color in Rachni theme
87
+  * graphics-hook: Fix null pointer dereference
88
+  * UI: Update profile encoder information after module load
89
+  * UI: Open active profile directory via File menu
90
+  * librtmp: Use /etc/ssl/certs/ path on FreeBSD
91
+  * UI/importers: Translate capture sources depending on WS
92
+  * UI: Add TikTok Live Studio Virtual Camera to DLL blocklist
93
+  * UI: Restore frontend API events being dispatched during initialization
94
+  * UI: Remove LineEditAutoResize widget
95
+  * UI: Remove SendChatMessage from YoutubeApiWrappers
96
+  * UI: Remove custom YouTube chat input
97
+  * linux-pipewire: Fix memory leaks
98
+  * cmake: Install desktop files and icons on FreeBSD
99
+  * cmake/plugins: Enable -Wswitch on GCC
100
+  * UI: Split out Whats New dialog, fix crash on shutdown
101
+  * cmake: Fix target_add_resource ARGN support on Linux
102
+  * UI: Log Twitch 403 error bodies
103
+  * UI: Don't load Restream UI before CEF is ready
104
+  * CI: Enable WebRTC on FreeBSD
105
+  * build-aux: Remove CEF stripping workaround
106
+
107
+-------------------------------------------------------------------
108
+Mon Oct 21 19:14:48 UTC 2024 - packman@nordisch.org
109
+
110
+- Update to version 31.0.0~beta2:
111
+  * obs-nvenc: Force at least 4 b-frames when using UHQ tune
112
+  * UI: Use custom property on QAction to retain profile or collection name
113
+  * UI: Update order of profiles and scene collections in their menus
114
+  * UI: Restore XDG config path update for FreeBSD
115
+  * libobs: Remove non-USE_XDG code
116
+  * obs-browser: Update version to 2.24.4
117
+  * obs-browser: Update version to 2.24.3
118
+  * UI: Remove toolButton styling
119
+  * UI: Replace toolButton property with style class
120
+  * CONTRIBUTING.rst: Update for 120 column limit
121
+  * CI: Bump FreeBSD image to 14.1
122
+  * libobs: Fix items in groups using wrong scale reference
123
+  * libobs: Fix ungrouped transfom calculation in relative mode
124
+  * obs-outputs: Add cast to fix build with Clang 19
125
+  * UI: Catch error from copy in MigrateGlobalSettings
126
+  * obs-qsv11: Update minimum VPL version to 2.9
127
+  * UI: Fix initialization bug when launching without existing profile
128
+  * UI: Set minimum version for nlohmann_json to 3.11
129
+  * UI/themes: Consistently select indicator-mute instead of MuteCheckBox
130
+  * libobs: Add source profiler to public headers
131
+  * UI: Fix crash when providing scene collection or profile via CLI
132
+  * UI: Fix deletion of scene collection backup on collection deletion
133
+  * UI: Fix activation order of profile and scene collections after delete
134
+  * UI/themes: Fix selectors in Yami Light
135
+  * UI: Correctly set Yami border radius for buttons in tables
136
+  * CI: Fix rclone env var formatting in Windows Patches action
137
+
138
+-------------------------------------------------------------------
139
+Wed Oct  9 10:15:12 UTC 2024 - packman@nordisch.org
140
+
141
+- reenable websockets
142
+
143
+-------------------------------------------------------------------
144
+Wed Oct  9 00:40:12 UTC 2024 - packman@nordisch.org
145
+
146
+- needs python 3.8 at least now. forcing 3.11 for leap
147
+- Qt6 only now
148
+- we need at least ffmpeg 6.1, lets force 7 right away 
149
+- leap 15.6 needs a compiler that supports C++ standard 17 at least
150
+  force gcc 13
151
+- pkgconfig(nlohmann_json) is also needed outside of the websocket
152
+  scope
153
+- new general BR:
154
+  rnnoise, ffnvcodec, vpl, uthash-devel
155
+- new websockets BR:
156
+  libdatachannel-devel, qrcodecgencpp
157
+- disable websockets for now until we get qrcodecgencpp
158
+- needs 2 new downgrades of errors to warnings:
159
+  -Wno-error=switch -Wno-error=catch-value=
160
+- drop 0002-Include-diverse-luajit.patch
161
+
162
+-------------------------------------------------------------------
163
+Tue Oct 08 22:41:12 UTC 2024 - packman@nordisch.org
164
+
165
+- Update to version 31.0.0~beta1:
166
+  * CI: Fix sparkle-appcast comment syntax
167
+  * shared/opts-parser: Fix crash when no options were given to the parser
168
+  * libobs/graphics: Remove unused source file graphics-magick.c
169
+  * UI: Avoid path<->string conversion when refreshing profile cache
170
+  * obs-ffmpeg: Fix deadlock on shutting down muxer
171
+  * win-update: Remove legacy CMake file
172
+  * UI: Fix locale key for rename profile text
173
+  * obs-nvenc: Add missing locale text
174
+  * UI: Fix settings mismatch
175
+  * libobs/util: Crash on bmalloc(0)
176
+  * linux-pipewire: Avoid trying to allocate 0 byte
177
+  * linux-capture: Fix potential null pointer dereference
178
+  * libobs/util: Prevent null pointer deref with dstr_cmp
179
+  * cmake: Use fixed SOVERSION everywhere
180
+  * Update translations from Crowdin
181
+  * CI: Fix translation download script bugs
182
+  * plugins: Update translations from Crowdin
183
+  * CI: Use correct commit hash for translation download
184
+  * CI: Bump Crowdin Sync to fix translation download
185
+  * libobs: Update version to 31.0.0
186
+  * .git-blame-ignore-revs: Add change from column limit increase
187
+  * clang-format: Increase column limit from 80 to 120
188
+  * shared/obs-hook-config: Update graphics hook to 1.8.4
189
+  * libobs: Update version to 30.2.3
190
+  * libobs/util: Improve inhibit functions on Linux
191
+  * UI: Enable first-party YouTube Chat features in OBS
192
+  * UI: Use shared cookie manager for YT Control Panel
193
+  * shared/bpm: Fixed crash when using Stream Delay
194
+  * UI: Replace themeID and style hints with class property
195
+  * libobs: Assure large enough buffer in dstr_from_cfstring
196
+  * plugins/test: Remove legacy CMake remnants
197
+  * libobs: Remove unused is_in_bundle() method
198
+  * UI: Set NV12 as preferred format for multitrack video encoders
199
+  * libobs: Do not attempt to reconnect if stop event is set
200
+  * UI: Fix What's New increment settings mismatch
201
+  * libobs: Deprecate obs_scene_sceneitem_from_source
202
+  * UI: Replace usage of obs_scene_sceneitem_from_source
203
+  * UI: Fix crash when creating scene collections with "unsafe" names
204
+  * UI: Fix error color at clipping is not displayed on horizontal meter
205
+  * libobs: Fix sending unclamped audio to output handler
206
+  * libobs: Fix source profiling inactive sources
207
+  * libobs: Disable transform debug logging by default
208
+  * libobs: Fix crop values for new nested scene sources being incorrect
209
+  * libobs: Do not allow reconnect if stop code is OBS_OUTPUT_INVALID_STREAM
210
+  * UI: Fix missing support for portable configuration files
211
+  * cmake: Change library discovery order in LuaJIT find module
212
+  * cmake: Disable discovery of Homebrew libraries for dependencies
213
+  * rtmp-services: Remove defunct servers/services
214
+  * CI: Update deps to 2024-09-12 release
215
+  * UI: Fix low value of std::clamp gets greater than high value
216
+  * CI: Set default values for have* outputs in macos-codesigning action
217
+  * UI: Fix config class mismatch in OBSApp class
218
+  * CI: Extend condition check for language file upload
219
+  * CI: Update build script for Ubuntu to require Ubuntu 24.04
220
+  * CI: Remove experimental aarch64 support in build script
221
+  * CI: Update build and package scripts to require Zsh 5.9
222
+  * CI: Update qt-xml-validator action to use check-changes action
223
+  * CI: Update build-project workflow to use Xcode 15.4 for macOS builds
224
+  * CI: Update wrangler-action action
225
+  * CI: Update sphinx-publish-actions action
226
+  * CI: Add documentation to XSLT files for Sparkle Appcast action
227
+  * CI: Add documentation to complex shell script constructs
228
+  * CI: Remove Ccache restoration for Windows builds
229
+  * CI: Update flatpak-builder-lint
230
+  * docs: Add obs_frontend_get_user_config
231
+  * libobs: Deselect scene item before removing
232
+  * libobs: Remove obs_output_signal_delay
233
+  * UI: Fix outdated scene collection and profile method names
234
+  * CI: Use Windows 11 SDK 10.0.22621.0
235
+  * cmake: Update use of MbedTLS to support update to version 3.6.0
236
+  * CI: Update softprops/action-gh-release to v2.0.8
237
+  * CI: Update peter-evans/create-pull-request to v7.0.2
238
+  * build-aux: Use fallback-x11 instead of x11
239
+  * obs-qsv11: Initialize allocator response
240
+  * obs-qsv11: Add AV1 Screen Content Tools
241
+  * cmake: Update supported CMake version range to 3.28 and 3.30
242
+  * obs-ffmpeg: Add logging of audio track
243
+  * libobs: Add obs_encoder_get_mixer_index
244
+  * cmake: Disable CCache for local builds and enable by default for CI
245
+  * mac-virtualcam: Compare camera UUIDs using CFUUID
246
+  * libobs: Update macOS platform implementation
247
+  * UI: Rewrite scene collection system to enable user-provided storage
248
+  * UI: Rewrite profile system to enable user-provided storage location
249
+  * UI: Split global config into app and user config
250
+  * libobs-opengl: Relax texture format copy check
251
+  * rtmp-services: Remove outdated Dolby Millicast locations
252
+  * CI: Remove run-cmake-format action
253
+  * cmake: Remove remaining cmake-format comments
254
+  * obs-webrtc: Add STUN support to Link header parse
255
+  * Remove legacy_check CMake macro
256
+  * obs-nvenc: Fix reading uninitialized variable
257
+  * CI: Fix condition for changed files in upload locales action
258
+  * obs-nvenc: Check if device index in settings object is actually set
259
+  * obs-nvenc: Support new error code for too many sessions
260
+  * UI: Fix multitrack video autoconfig option
261
+  * nv-filters: Remove unused flag in cmake
262
+  * obs-filters: Fix building of noise reduction
263
+  * CI: Enable diagnostics color on CI build on Ubuntu
264
+  * cmake/linux: Move color diagnostics setting to preset for ubuntu-ci
265
+  * obs-qsv11: Fix CBR Spike
266
+  * cmake: Avoid breaking ABI through major version bump on Linux
267
+  * win-capture: Fix segfault when calling data.free()
268
+  * CI: Pin actions/upload-artifact to v4.3.5 for windows-patches
269
+  * rtmp-services: Refactor Twitch/Amazon IVS support
270
+  * UI: Add Amazon IVS auto config QoL changes
271
+  * rtmp-services: Add Amazon IVS auto server entries
272
+  * rtmp-services: Load Twitch/Amazon IVS rtmps URLs when refreshing
273
+  * rtmp-services: Add Amazon IVS ingest refresh infrastructure
274
+  * rtmp-services: Extract Twitch specific info from ingest update code
275
+  * rtmp-services: Add more granular Amazon IVS service servers
276
+  * build-aux: Update Flatpak modules
277
+  * CI: Update deps to 2024-09-05 release
278
+  * UI: Enable BPM for multitrack video
279
+  * shared/bpm: Add BPM (Broadcast Performance Metrics)
280
+  * libobs: Add a packet callback mechanism
281
+  * libobs: Add encoder packet timing support
282
+  * libobs/util: Add `os_nstime_to_timespec`
283
+  * obs-websocket: Update version to 5.5.3
284
+  * win-capture: Fix display capture capturing on create
285
+  * win-capture: Fix window capture capturing random windows
286
+  * linux-capture: Fix xshm capturing first display on creation
287
+  * linux-capture: Fix xcomp capturing random windows
288
+  * linux-capture: Add xcomp func for comparing encoded window IDs
289
+  * linux-capture: Fix potential null pointer dereference
290
+  * linux-capture: Move xcomp window ID decoding to its own func
291
+  * linux-capture: Set xcomposite capture retry interval to 2sec
292
+  * libobs: Always set initial scene item pos to top-left corner
293
+  * UI: Fix Qt UIC warning in settings UI
294
+  * UI: Replace remaining SIGNAL/SLOT macros
295
+  * cmake: Exclude macOS .DS_Store from resources
296
+  * shared/qt: Remove unused graphics include from qt-wrappers
297
+  * shared/qt: Unlink slider-ignorewheel from libobs
298
+  * build-aux: Update Flatpak CEF from 103/5060 to 127/6533
299
+  * CI: Update CEF from 103/5060 to 127/6533
300
+  * obs-browser: Update version to 2.24.2
301
+  * CI: Update flatpak-builder and flat-manager actions
302
+  * shared/properties-view: Remove Qt 6.2 cmake code
303
+  * shared/properties-view: Use IconLabel for help icon
304
+  * shared/qt: Add IconLabel widget
305
+  * docs,libobs: Remove deprecated service APIs
306
+  * docs,libobs: Remove master volume functions
307
+  * docs,libobs: Remove deprecated scene item transition functions
308
+  * libobs: Rename OBS_NIX_PLATFORM_X11_GLX to OBS_NIX_PLATFORM_INVALID
309
+  * libobs: Remove obs_hotkey_enable_strict_modifiers()
310
+  * libobs: Remove base_set_allocator()
311
+  * docs,libobs: Remove/internalize deprecated addref functions
312
+  * libobs: Remove obs_volmeter_{get,set}_update_interval()
313
+  * libobs: Remove obs_proprety_text_type()
314
+  * docs,libobs: Remove obs_render_main_view()
315
+  * libobs: Remove obs_get_default_rect_effect()
316
+  * libobs: Remove obs_{duplicate,free}_encoder_packet
317
+  * libobs: Fix Windows x86 CMake when using reduced obs-deps package
318
+  * win-dshow: Fix CMake preventing Virtual Camera from working
319
+  * Remove CMake legacy code path
320
+  * UI: Add migration for relative coordinate system
321
+  * docs: Add new relative positioning scene functions
322
+  * libobs: Allow scene items to use legacy absolute mode
323
+  * libobs: Change scene items to using relative coordinates
324
+  * libobs: Force sceneitem transform update if scene dimensions change
325
+  * UI: Fix warning color
326
+  * UI: Add warning to Custom FFmpeg mode
327
+  * mac-capture: Remove disp_finished event
328
+  * UI: Use std::clamp instead of macro
329
+  * obs-ffmpeg: Remove unexisting class name declaration
330
+  * UI: Inline macOS 13 check
331
+  * UI: Force UpdateEditMenu on UI Thread
332
+  * rtmp-services: Add NFHS Network
333
+  * obs-filters: Add NVIDIA Blur Filter & Background Blur
334
+  * libobs: Add `OBS_ENCODER_CAP_SCALING`
335
+  * libobs: Remove broken rescale modification logic
336
+  * shared/media-playback: Remove compatibility with FFmpeg < 6.1
337
+  * win-dshow: Remove compatibility with FFmpeg < 6.1
338
+  * obs-ffmpeg: Remove compatibility with FFmpeg < 6.1
339
+  * UI: Remove compatibility with FFmpeg < 6.1
340
+  * libobs: Remove compatibility with FFmpeg < 6.1
341
+  * cmake: Do not disable native NVENC in Ubuntu preset
342
+  * CI: Update Ubuntu setup/build scripts with 24.04 baseline
343
+  * CI: Update all workflows to Ubuntu 24.04
344
+  * UI: Remove legacy Qt workarounds (Ubuntu 22.04)
345
+  * UI: Remove legacy nlohmann workaround (Ubuntu 22.04)
346
+  * rtmp-services: Remove Hakuna Live RTMP service
347
+  * rtmp-services: Update package.json version
348
+  * shared: Improve incremental compile times via explicit file includes
349
+  * UI: Improve incremental compile times via explicit file includes
350
+  * rtmp-services: Update Lightcast.com to Premium CDN
351
+  * plugins: Remove CMake legacy code paths for Windows modules
352
+  * libobs-d3d11: Remove CMake legacy code path
353
+  * cmake: Default to modern CMake build system for Windows
354
+  * UI: Only use preset2 in simple mode for legacy/FFmpeg NVENC
355
+  * build-aux: Update Flatpak modules
356
+  * obs-nvenc: Only show UHQ tune on supported GPUs
357
+  * UI: Remove now unused GetMonitorName for Qt < 6.4
358
+  * CI: Add clang-analyze analytics for macOS builds
359
+  * shared: Remove shared interface libraries from their original locations
360
+  * cmake: Update cross-platform build project management for Windows
361
+  * libobs: Add shared interface libraries to shared project directory
362
+  * cmake: Remove WITH_MESSAGE from obs-qsv11
363
+  * cmake: Fix malformed CMake package location on Windows
364
+  * win-update: Use correct winhttp proxy type Legacy one does not provide correct result on some setups, use new one on 10+ .
365
+  * libobs: Use weak reference for paired encoders
366
+  * libobs: Switch to full reference counting for encoders
367
+  * obs-nvenc: Fix nvenc availability check always returning true
368
+  * libobs: Add NULL check to encoder deprecation warning
369
+  * UI: Add UUID to file-based list widgets
370
+  * UI: Add preview scrollbars
371
+  * image-source: Move loop/randomize checkboxes to playback mode combobox
372
+  * libobs: Also determine WinUI 3 Window
373
+  * UI: Use signal vector for advanced audio dialog
374
+  * UI: Add suffix to deprecated encoders
375
+  * obs-nvenc: Remove untranslated deprecated suffix from encoder names
376
+  * libobs: Add warning if created encoder is deprecated
377
+  * obs-nvenc: Improve logging of user settings
378
+  * obs-nvenc: Remove non-functional legacy lossless mode
379
+  * UI: Fixup ResolveVariable to be less jank
380
+  * obs-ffmpeg: Fix VAAPI/NVENC ifdefs
381
+  * CI: Update deps to 2024-08-08 release
382
+  * CI: Bump sign-windows commit hash
383
+  * CI: Remove game capture dual-signing
384
+  * obs-browser: Update version to 2.24.1
385
+  * .git-blame-ignore-revs: Add change from cmake-format to gersemi
386
+  * Update formatting of CMake files
387
+  * CI: Replace cmake-format with gersemi for CMake file format checks
388
+  * CI: Add configuration file for gersemi CMake formatter
389
+  * happy-eyeballs: Specify AI_ADDRCONFIG for getaddrinfo
390
+  * happy-eyeballs: Move happy_eyeballs_destroy to a thread
391
+  * happy-eyeballs: Reserve array length for all candidates
392
+  * obs-nvenc: Fix building with nvcodec 12.2
393
+  * UI: Don't create default desktop audio source on macOS 13+
394
+  * docs: Add source profiler functions
395
+  * libobs: Add source profiler
396
+  * obs-outputs: Defer muxer destruction to task queue
397
+  * UI: Cleanup frontend event handling
398
+  * UI: Add pragma once to ScreenshotObj header
399
+  * obs-nvenc: Improve logging for custom options
400
+  * libobs: Always explicitly check modifiers in macOS hotkey event handler
401
+  * obs-ffmpeg: Fix SRT listener bug
402
+  * UI: Use new NVENC encoder ids
403
+  * cmake: Update ubuntu preset with NVENC changes
404
+  * obs-nvenc: Add new NVENC plugin
405
+  * obs-ffmpeg: Remove native/disable FFmpeg NVENC
406
+  * obs-filters: Move NVIDIA filters in their own project
407
+  * shared/obs-scripting: Add inline qualifiers to functions in header file
408
+  * UI: Remove unused static-inline function
409
+  * libobs-opengl: Remove unused static-inline function
410
+  * libobs/callback: Remove unused static-inline function
411
+  * libobs/util: Remove unused static-inline function
412
+  * libobs: Remove unused static-inline functions
413
+  * libobs/graphics: Add inline qualifier to functions in header files
414
+  * text-freetype2: Move static function declarations from header file
415
+  * obs-x264: Remove unused function
416
+  * obs-qsv11: Remove unused functions
417
+  * obs-outputs: Remove unused functions on non-Windows
418
+  * obs-filters: Remove unused functions when NvAFX is disabled
419
+  * obs-ffmpeg: Resolve unused-function warnings
420
+  * linux-pipewire: Remove unused function
421
+  * linux-alsa: Remove unused function declaration
422
+  * libobs: Fix buffer overrun in os_wcs_to_utf8()
423
+  * libobs/util: Fix potential memory error in text parser
424
+  * obs-qsv11: Check for null response on free
425
+  * UI: Rename existing (corrupt) collection file if loading fails
426
+  * UI: Ensure collection name is set before creating default scene
427
+  * mac-virtualcam: Improve 'not found' error message
428
+  * UI,docs: Send a custom event to the dock widget when closing
429
+  * UI: Remove min and max macro workaround
430
+  * obs-vst: Remove min and max macro workaround
431
+  * shared/media-playback: Unref sw_frame before reuse
432
+  * UI: Fix leak with paint event of volume slider
433
+  * mac-virtualcam: Update NotInstalled error text for macOS 15
434
+  * obs-browser: Update version to 2.24.0
435
+  * obs-ffmpeg: Disable AMF DTS adjustment for AV1
436
+  * obs-ffmpeg: Disable NVENC DTS adjustment for AV1
437
+  * rtmp-services: Update MasterStream.iR ingest https://github.com/obsproject/obs-studio/pull/10978 https://github.com/obsproject/obs-studio/pull/11044
438
+  * cmake: Set CFBundleDisplayName for camera extension
439
+  * frontend-tools: Avoid initializing the scene switcher on Wayland
440
+  * UI: Return std::optional from ParseThemeMeta
441
+  * aja: Add v210 pixel format support.
442
+  * UI: Remove legacy migrations
443
+  * plugins: Enable QSV only on x86_64 architecture
444
+  * cmake: Add architecture support to add_obs_plugin
445
+  * UI: Remove obs-ui-support
446
+  * UI,shared: Move OBSPropertiesView to its own directory
447
+  * frontend-tools: Remove unused source files in legacy path
448
+  * UI,shared: Move SliderIgnoreScroll to its own directory
449
+  * UI,shared: Move VScrollArea to its own directory
450
+  * UI,shared: Move OBSPlainTextEdit to its own directory
451
+  * UI,shared: Move Qt Wrappers to its own directory
452
+  * UI: Move QTToGSWindow outside of Qt wrappers
453
+  * deps,shared,plugins: Move opts-parser to shared folder
454
+  * deps,shared,frontend-tools: Move obs-scripting to shared folder
455
+  * deps,shared,obs-ffmpeg: Move media-playback to shared folder
456
+  * deps,shared,win-capture: Move ipc-util to shared folder
457
+  * deps,shared,obs-outputs: Move happy-eyeballs to shared folder
458
+  * deps,shared,plugins: Move file-updater to shared folder
459
+  * Add shared folder in gitignore and format scripts
460
+  * win-capture: Add Zenless Zone Zero to compatibility list
461
+  * libobs: Update version to 30.2.2
462
+  * libobs: Update version to 30.2.1
463
+  * libobs-opengl: Disable NV12/P010 on Windows
464
+  * obs-outputs: Set FLV DTS offset based on first audio or video packet
465
+  * CI: Do not mark legacy MF/AMF plugins as deleted
466
+  * UI: Fix cast of pointer type at invalid current scene setting on load
467
+  * obs-websocket: Update version to 5.5.2
468
+  * libobs/graphics: Prevent heap overflow in libnsgif
469
+  * Update translations from Crowdin
470
+  * UI: Adjust sizing of Classic audio meter elements
471
+  * UI: Fix read-only QTextEdit background color
472
+  * UI: Fix source tree icon spacing
473
+  * UI: Remove FTL support
474
+  * build-aux: Remove ftl-sdk exclusions from format script
475
+  * .gitmodules: Remove ftl-sdk submodule
476
+  * obs-outputs: Remove FTL output
477
+  * CI: Remove YouNow exclude from service checker
478
+  * rtmp-services: Remove YouNow specific code
479
+  * rtmp-services: Remove FTL entries
480
+  * libobs: Fix crash when mix is NULL
481
+  * UI: Fix `qt-helpers.{c,h}pp` not being removed from legacy.cmake
482
+  * UI: Add field growth policy to form layouts
483
+  * UI: Remove `QFuture` usage
484
+  * UI: Move code out of unnamed lambdas
485
+  * CI: Fix flatpak-builder-lint action
486
+  * win-wasapi: Remove noisy and useless debug logging
487
+  * obs-ffmpeg: Honor preferred format in native NVENC
488
+  * libobs: Fix plane heights for odd values
489
+  * Revert "plugins/win-dshow: Add CUDA decoder"
490
+  * libobs: Merge `obs_encoder_stop()` and `..._stop_internal()`
491
+  * libobs: Fix race when to-be-destroyed encoder group finishes stopping
492
+  * libobs: Set encoder initialized call closer to shutdown
493
+  * UI: Display dialog for multitrack video output audio channels mismatch
494
+  * UI: Fix capitalization of 'OBS' and 'RTMP'
495
+  * UI: Adjust Yami (Classic) styling
496
+  * obs-x264: Ignore stats/qp file and multipass options
497
+  * obs-outputs: Skip trak box if track has no data
498
+  * obs-ffmpeg: Check if current NVENC configuration supports 4:4:4 encode
499
+  * cmake: Fix FFmpeg version regex
500
+  * obs-outputs: Fix file splitting ts offset using video DTS instead of PTS
501
+  * obs-outputs: Do not create MP4 track chunks without samples
502
+  * UI: Link Qt::DBus on FreeBSD
503
+  * UI: Fix multitrack-video audio track index
504
+  * obs-ffmpeg: Close VAAPI device on vaInitialize fail
505
+  * rtmp-services: Add Dolby Millicast
506
+  * cmake: Add obs-config.h to libobs headers
507
+  * CI: Fix FreeBSD package installation
508
+  * UI: Disable multitrack video settings on non-win32 platforms
509
+  * UI: Add supported codecs to GetClientConfiguration request
510
+  * UI: Only cache multitrack config URL startup argument
511
+  * CI: Add tag subject to Windows patch notes
512
+  * CI: Update Windows patch creation bouf version
513
+  * CI: Fix Windows Patches action release notes generation
514
+  * UI: Use advanced mode audio track in multitrack video output
515
+  * UI: Fix parsing of Multitrack Video stream key query parameters
516
+  * UI: Set default container for beta builds to hybrid MP4
517
+  * libobs, UI: Normalize encoder group API
518
+  * libobs: Update video encoder group struct member names
519
+  * UI: Add step value to Multitrack Video maximum bitrate control
520
+  * deps/media-playback: Fix init of swscale with hw decode
521
+  * UI: Set Multitrack Video maximum bitrate limit default to 0/Auto
522
+  * obs-outputs: Add multitrack flag to null output
523
+  * UI: Fix icon-size values in theme files
524
+  * UI: Remove redundant addAction call
525
+  * UI: Initialize YoutubeChatDock chat input members in constructor
526
+  * UI: Initialize max length of LineEditAutoResize in constructor
527
+  * UI: Add `composition_gpu_index` to multitrack video postdata
528
+  * UI: Change multitrack video configId
529
+  * updater: Use static blake2 and fix building with Debug runtimes
530
+  * deps/blake2: Add static blake2 library for Windows updater
531
+  * UI: Hide multitrack video options for custom output
532
+  * obs-scripting: Refactor Lua C paths
533
+  * Revert "cmake: Fix script plugin path on Linux with CMake 3"
534
+  * UI: Make `audio_configurations.vod` optional
535
+  * UI: Fix submenu arrow indicator position in menus
536
+  * UI: Add unit suffix to Multitrack Video bitrate limit control
537
+  * UI: Re-arrange multitrack-video schema to version 2024-06-04
538
+  * UI: Remove default values from multitrack-video.hpp
539
+  * UI: Restore visibility of Advanced Settings warning
540
+  * CI: Add updateChannel to check-tag in Publish workflow
541
+  * Revert "CI: Remove redundant checkout step in Windows Patches job"
542
+  * CI: Remove redundant checkout step in Windows Patches job
543
+  * UI: Use unique_ptr for theme objects
544
+  * UI: Fix themeDir buffer being resized incorrectly
545
+  * obs-websocket: Update version to 5.5.1
546
+  * UI: Prevent recursion in theme dependencies
547
+  * updater: Fix defaultlib conflict
548
+  * UI: Discard state if stream attempt is canceled
549
+  * updater: Compile with static VC runtime
550
+  * updater: Check and update VC runtime version
551
+  * UI: Translate Multitrack Video error dialog buttons
552
+  * CI: Update windows signing workflow commit
553
+  * CI: Update bouf release in Windows Signing action
554
+  * obs-ffmpeg: Set encoder error message for CUDA errors
555
+  * UI: Avoid allowing to override provided themes
556
+  * UI: Check VC++ Runtime version on startup
557
+  * UI: Center widgets in vertical mixer layout
558
+  * UI: Fix mute checkbox positioning on macOS
559
+  * UI: Fix audio meter and slider blocking mousewheel
560
+  * UI: Adjust audio mixer slider size and spacing
561
+  * UI: Group horizontal audio mixer buttons
562
+  * cmake: Copy shared library soname file to rundir on Linux
563
+  * UI: Clean up Settings widget structure and styling
564
+  * UI: Connect replay buffer stopping to signal instead of slot
565
+  * UI: Always show chapter marker hotkey
566
+  * UI: Improve macOS properties tooltip spacing workaround
567
+  * cmake: Fix script plugin path on Linux with CMake 3
568
+  * UI: Add null checks before doing some API calls
569
+  * UI: Remove unnecessary string copy from log filter
570
+  * CI: Fix input variable name when getting Windows release notes
571
+  * CI: Fix incorrect filenames in release creation
572
+  * libobs: Update version to 30.2.0
573
+  * UI: Fix multitrack stream key query parameter concatenation
574
+  * CI: Restrict PVS-Studio analysis to obsproject repo
575
+  * UI: Simplify multitrack encoder availability check
576
+  * UI: Add config option to use MP4 for debug recording
577
+  * obs-webrtc: Do not use curl_easy_nextheader
578
+  * UI: Remove dead code from multitrack output
579
+  * UI: Address logging buffer size discrepancies
580
+  * obs-websocket: Update version to 5.5.0
581
+  * Update translations from Crowdin
582
+  * UI: Enable custom server entry for Amazon IVS
583
+  * obs-browser: Update version to 2.23.5
584
+  * rtmp-services: Add Amazon IVS service
585
+  * linux-capture: Fix module prefix with CMake 3
586
+  * UI: Remove redundant assignments
587
+  * UI: Fix incompatible settings message when streaming Multitrack Video
588
+  * UI: Remove GPU LUID from system info for Multitrack Video
589
+  * UI: Disable Multitrack Video by default
590
+  * obs-webrtc: Add Link Header support
591
+  * obs-filters: Do not load NVVFX on OpenGL
592
+  * libobs: Add buffered file serializer to legacy cmake
593
+  * UI: Fix crash when entering settings
594
+  * CI: Ignore PVS-Studio's license close to expiry error code
595
+  * UI: Fix Qt platform override in CMake 3
596
+  * cmake,UI: Fix SOVERSION on Linux
597
+  * UI: Add icons to Controls form buttons
598
+  * UI: Remove replayBufferButton and vcamButton theme IDs
599
+  * UI: Separate controls dock from the main window
600
+  * UI: Remove setStreamText lambda
601
+  * UI: Set system tray text explicitly
602
+  * UI: Track streaming state in OBSBasic
603
+  * UI: Track recording state in OBSBasic
604
+  * UI: Use connection with modeSwitch button
605
+  * UI: Retain existing last output resolution
606
+  * UI: Add output settings indicators for eRTMP multitrack video
607
+  * UI: Add `OBSPropertiesView::SetDisabled`
608
+  * UI: Add Multitrack Video support for auto config
609
+  * UI: Add Multitrack Video settings
610
+  * UI: Add eRTMP Multitrack Video Output
611
+  * UI: Increase size of log buffer
612
+  * UI: Add custom server support for Twitch
613
+  * README.rst: Add SAST Tools section
614
+  * CI: Run PVS-Studio analysis on Windows
615
+  * obs-webrtc: Increase RtcpNackResponder size
616
+  * UI: Update volume meter appearance
617
+  * UI: Make status bar record output a weak ref
618
+  * docs: Add versionadded for 30.x functions
619
+  * obs-outputs: Add native mp4 output to legacy cmake
620
+  * docs: Add return type of obs_source_audio_active
621
+  * obs-qsv11: Fix QSV failing on multi-vendor multi-GPU systems
622
+  * obs-ffmpeg: Check correct VA-API codec support
623
+  * docs: Document obs_frontend_recording_add_chapter()
624
+  * rtmp-services: Add sheeta
625
+  * UI: Fix Qt 6.7 checkbox signal deprecations
626
+  * UI: Removed unused friend classes
627
+  * cmake: Do not write build number file if OBS_BUILD_NUMBER set
628
+  * CI: Verify build attestation during patch generation
629
+  * CI: Update signing workflow commit and permissions
630
+  * CI: Attest signed Windows build
631
+  * UI: Add chapter frontend API and hotkey
632
+  * UI: Add Hybrid MP4 to format selection
633
+  * obs-outputs: Add native MP4 muxer
634
+  * docs: Document newer JSON serialization functions
635
+  * libobs: Add functions to serialize JSON with default values
636
+  * mac-avcapture: Improve av_capture_sync_info formatting
637
+  * libobs: Fix buffer overrun in video_frame_init
638
+  * UI: Update edit menu on source filter changes
639
+  * libobs: Add global source filter add/remove signals
640
+  * UI: Add undo/redo to Paste Filters on audio mixer and scenes
641
+  * UI: Inline OBSBasic::ThemeChanged()
642
+  * UI: Enforce completely Fusion Qt style on Linux
643
+  * UI: Adjust multiview border size
644
+  * UI: Calculate label position using height and border
645
+  * UI: Adjust appearance of multiview labels
646
+  * UI: Change how the status bar gets weak stream output
647
+  * UI: Fix Grid Mode not persisting from View Menu
648
+  * obs-outputs: Remove FLV byte array style multitrack audio support
649
+  * obs-outputs: Remove special handling for audio encoders 1 and 2
650
+  * obs-outputs: Add eRTMP multitrack audio support
651
+  * obs-outputs: Add eFLV multitrack audio support
652
+  * librtmp: Fix incorrect usage of type 3 chunks
653
+  * UI: Remove unnecessary ProxyStyle usage
654
+  * UI: Rename MediaSlider to AbsoluteSlider
655
+  * UI: Move VolumeSlider widget to volume control
656
+  * rtmp-services: Update Joystick.TV servers and recommended settings
657
+  * UI: Adjust Classic theme mixer button styling
658
+  * UI: Give unnamed settings labels relevant names
659
+  * libobs: Deduplicate audio for nested scenes/groups if not transitioning
660
+  * libobs: Mix audio of each source in a scene only once
661
+  * coreaudio-encoder: Fix pts/dts not including encoder delay
662
+  * libobs: Ensure audio offsets are positive
663
+  * obs-outputs: Adjust HEVCDecoderConfigurationRecord for hvc1 tag
664
+  * libobs/util: Add buffered file serializer
665
+  * libobs/util: Add seeking support to array serializer
666
+  * rtmp-services: Bump package version
667
+  * UI: Keep weak stream output ref in status bar
668
+  * rnnoise: Fix compilation not working on latest gcc
669
+  * mac-capture: Replace pragmas with availability markers
670
+  * CI: Add additional log group to setup_ubuntu script
671
+  * CI: Add Ubuntu 24.04
672
+  * UI: Adjust font size on macOS
673
+  * plugins/win-dshow: Add CUDA decoder
674
+  * deps/media-playback: Prioritize CUDA decoder
675
+  * UI: Center preview spacing lines
676
+  * UI: Give private spacing helper sources names
677
+  * UI: Fix visibility and lock checkbox styling on system theme
678
+  * UI: Use OBSSourceLabel for VolControl
679
+  * UI: Use vector for volume control signals
680
+  * UI: Move projector rename signal
681
+  * UI: Use OBSSourceLabel for item widget labels
682
+  * obs-webrtc: Only advertise relevant codecs for a or v-only outputs
683
+  * obs-webrtc: Correctly guard HEVC in output using ifdefs
684
+  * obs-webrtc: Fix comment capitalization
685
+  * UI: Add OS specific theme variables via prefix
686
+  * libobs: Fix obs_parse_avc_header missing high profile parameters
687
+  * UI: Use weak_source_expired instead of getting the source
688
+  * build-aux: Update Flatpak ntv2 module to libajantv2
689
+  * build-aux: Update Flatpak VPL modules
690
+  * build-aux: Update Flatpak modules
691
+  * UI: Improve and update app CMake 3 metainfo file
692
+  * CI: Update deps to 2024-05-08 release
693
+  * linux-pipewire: Unify ScreenCast sources as Screen Capture
694
+  * libobs/media-io: Fix media-remux channel layout for 5 channels
695
+  * obs-ffmpeg: Fix 7.1 ALAC encoding
696
+  * libobs-winrt: Remove interop code now provided by Windows SDK
697
+  * build-aux: Disable DeckLink in the Flatpak
698
+  * obs-webrtc: Remove duplicate initialize calls
699
+  * rtmp-services: Populate Twitch specific multitrack video settings
700
+  * rtmp-services: Add Multitrack Video disclaimer
701
+  * rtmp-services: Allow loading Multitrack Video config from JSON
702
+  * rtmp-services: Always copy service info to settings
703
+  * rtmp-services: Extract common json->settings logic
704
+  * UI: Restore MuteCheckBox indeterminate state icon in Yami
705
+  * UI: Set default recording format to Fragmented MOV on macOS
706
+  * UI: Adjust styling of QTabBar tabs
707
+  * UI: Update media source time labels while seeking
708
+  * UI: Adjust preview scrolling clamp values
709
+  * linux-capture: Rename Screen Capture as Display Capture
710
+  * UI: Fix text stacking in paused indicator
711
+  * UI: Set recording paused before anything else
712
+  * obs-webrtc: Add null terminator to codec array
713
+  * libobs: Fix I40A plane height calculation for fourth plane
714
+  * obs-scripting: Remove Python version upper limit on Linux
715
+  * libobs: Add `obs_encoder_parent_video()` method
716
+  * obs-outputs: Add `video_id_t` value for 0
717
+  * obs-outputs: Add eRTMP/eFLV support for FLV
718
+  * obs-outputs: Add initial eRTMP multitrack implementation
719
+  * obs-outputs: Always define `CODEC_HEVC`
720
+  * obs-ffmpeg: Release encode texture early
721
+  * CI: Fix Windows Signing action commit hash
722
+  * CI: Add Windows Patches Action
723
+  * CI: Include Windows artifacts in draft release
724
+  * CI: Update Windows signing workflow commit
725
+  * CI: Rename and update windows-signing action
726
+  * aja: Prepare plugins for new libajantv2 repo
727
+  * cmake: Remove more Qt 5 code
728
+  * win-dshow: Fix compiling with FFmpeg 7.0
729
+  * UI: Fix volume control button styling
730
+  * UI: Fix styling of appearance tab
731
+  * libobs/media-io: Fix copying different line-size video frame
732
+  * libobs: Use bmalloc/bfree for caption data
733
+  * libobs: Add caption support for AV1
734
+  * libobs: Add caption support for HEVC
735
+  * libobs: Avoid adding captions on non H.264 streams
736
+  * libobs: Insert captions on all video tracks
737
+  * libobs: Rewrite video-frame
738
+  * Add composable theme files spacing in editorconfig
739
+  * UI: Clean up theme file formatting
740
+  * UI: Update appearance icon
741
+  * UI: Update filters icon
742
+  * obs-ffmpeg: Fix output path logging
743
+  * CI: Update yuzutech/annotations-action to v0.5.0
744
+  * CI: Update softprops/action-gh-release to v2.0.4
745
+  * UI: Reset duration when removing show/hide transition
746
+  * obs-webrtc: Add support for audio-only and video-only outputs
747
+  * text-freetype2: Use a shader uniform instead of vertex attributes
748
+  * UI: Convert themes to composable format
749
+  * cmake: Remove font size patch on macOS
750
+  * UI: Add composable themes feature
751
+  * UI: Add 'Appearance' settings page
752
+  * UI: Add HighContrastEnabled implementation for Linux
753
+  * UI: Add HighContrastEnabled() to platform utilities
754
+  * obs-ffmpeg-mux: Use new process args/pipe API
755
+  * libobs: Add os_process_pipe_create2
756
+  * libobs: Add os_process_args_t and associated functions
757
+  * obs-qsv11: Fix adapter detection and fallback to sysmem
758
+  * obs-qsv11: Implement texture encoder on Linux
759
+  * obs-ffmpeg: Implement texture encoding for VAAPI
760
+  * libobs/util: Prevent leaking pipe file descriptors to subprocesses
761
+  * libobs: Fix grouped encoders never starting again after disconnect
762
+  * UI: Clean up main window dock structure
763
+  * UI: Set dock floating after hiding it
764
+  * libobs: Fix `highest_video_ts` tracking
765
+  * text-freetype2: Use cached glyph advances
766
+  * libobs: Remove unused variable in obs_source
767
+  * libobs: Export NV12/P010 functions
768
+  * UI: Reformat .ui files with Qt Designer
769
+  * UI: Use System theme volume meter colors
770
+  * cmake: Remove find_qt macro
771
+  * CI: Fix generate-docs action
772
+  * obs-webrtc: Add HEVC support
773
+  * cmake: Deprecate legacy CMake for all platforms
774
+  * UI: Change advanced audio controls to use audio_active
775
+  * UI: Fix relocatable Linux builds using legacy portable build flag
776
+  * libobs: Fix relocatable Linux builds using legacy portable build flag
777
+  * build-aux: Make Flatpak use CMake build framework 3.0
778
+  * obs-ffmpeg: Fix unused variable in native NVENC
779
+  * UI: Reduce settings dialog height if greater than the desktop
780
+  * obs-outputs: Fix FLV file info offset
781
+  * obs-outputs: Change FLV tag size according to v10 spec
782
+  * obs-outputs: Extract previous tag size writing logic
783
+  * CI: Update Linux build scripts to use CMake presets
784
+  * UI: Make Sparkle updater a macOS-only feature
785
+  * test: Update Linux slice for CMake build framework 3.0
786
+  * obs-scripting: Update Linux slice for CMake build framework 3.0
787
+  * UI: Update Linux slice for CMake build framework 3.0
788
+  * plugins: Update platform selection for adding plugins to build tree
789
+  * plugins: Update Linux slice of cross-platform plugins for CMake 3.0
790
+  * plugins: Add Linux-specific plugins for CMake build framework 3.0
791
+  * libobs-opengl: Add Linux-specific changes for CMake build framework 3.0
792
+  * libobs: Add changes for CMake build framework 3.0
793
+  * cmake: Add Linux component to CMake build framework 3.0
794
+  * deps: Suppress acknowledged compile-time warnings for json11
795
+  * plugins: Fix compile errors introduced by CMake build framework 3.0
796
+  * linux-pipewire: Fix future compiler errors
797
+  * mac-avcapture: Add pointer check for outputting NULL video frames
798
+  * plugins: Set keyframe flag on encoded audio packets
799
+  * obs-ffmpeg: Use video_output_info in amf_create_encoder()
800
+  * UI: Fix double confirmation dialog while discarding source change
801
+  * decklink: Update SDK to 12.0
802
+  * UI: Include duration when copy/pasting scene item transitions
803
+  * UI: Fix Top Patron threshold
804
+  * UI: Always retain collection data of unloaded modules
805
+  * libobs: Track keyframe alignment for keyframe aligned encoder groups
806
+  * libobs: Add `obs_encoder_group_keyframe_aligned_encoders`
807
+  * rtmp-services: Remove defunct servers/services
808
+  * obs-ffmpeg: Remove mpegts format override for SRT and RIST
809
+  * rtmp-services: Update Chaturbate
810
+  * plugins: Remove dynamic default path properties
811
+  * UI: Use existing path for file dialogs
812
+  * UI: Fix filter undo action using UUID instead of name
813
+  * Extend min panel width to eliminate text clipping
814
+  * UI: Log available encoders on load
815
+  * UI: Move recording warnings to bottom of window
816
+  * obs-qsv11: Remove adaptive CQM option
817
+  * obs-qsv11: Fix for QSV AV1 in multi-GPU system
818
+  * deps,libobs: Replace uthash with prefix/system install
819
+  * CI,build-aux: Add uthash on Linux
820
+  * cmake: Add finder for uthash
821
+  * linux-v4l2: Fix deprecation with FFmpeg 7
822
+  * obs-ffmpeg: Fix incompatible-pointer-types with FFmpeg 7
823
+  * libobs: Update version to 30.1.2
824
+  * Revert "UI: Change default format for release builds to fMP4/fMOV"
825
+  * cmake: Provide a clear error on version check fail
826
+  * UI: Use spacers instead of widgets in macOS Permissions UI
827
+  * win-wasapi: Fix legacy CMake
828
+  * libobs-d3d11: Use OS D3DCompiler_47.dll in legacy CMake
829
+  * CI: Update formatting actions to use git diff filter before formatting
830
+  * rtmp-services: Update "CHZZK" platform
831
+  * obs-ffmpeg: Add Linux NVENC texture encoder
832
+  * CI: Disable native NVENC for Ubuntu builds
833
+  * obs-ffmpeg: Add native non-texture NVENC implementation
834
+  * cmake: Add HANDLE_VERSION_RANGE to FFnvcodec finders
835
+  * UI,plugin: Refactor virtual camera enablement
836
+  * UI: Check low disk space only if recording to a file
837
+  * obs-outputs: Set AV1 packet priority
838
+  * obs-outputs: Cleanup some unused leftovers
839
+  * UI: Fix scene rename on tab and back tab
840
+  * UI: Fix Auto-Config Wizard for custom server with no stream key
841
+  * rtmp-services: Add Hakuna Live RTMP service
842
+  * obs-ffmpeg: Fix NVENC compatibility hack for old drivers/hardware
843
+  * obs-ffmpeg: Set needs_compat_ver before struct version checks
844
+  * obs-text: Fix alignment with extents
845
+  * CI: Fix JSON runtime error for language file uploads
846
+  * docs: Document the audio_active functions and signals
847
+  * UI: Disable scrolling for encoder properties
848
+  * UI: Add option to disable scrolling to OBSPropertiesView
849
+  * libobs: Update version to 30.1.1
850
+  * obs-qsv11: Check all encoders are Intel devices
851
+  * CI: Update deps to 2024-03-19 release
852
+  * deps/media-playback: Detect+handle video res changes with hwaccel
853
+  * mac-capture: Fix string length when duplicated
854
+  * libobs: Set channel layout for remux output
855
+  * UI: Size the abstract-socket address properly
856
+  * deps/media-playback: Fix hardware decoding of streams
857
+  * UI: Use signal vector for status bar
858
+  * UI: Reserve size of congestion vector
859
+  * win-dshow: Set MSVC runtime on virtual camera targets directly
860
+  * win-capture: Add missing MSVC runtime setting to 32-bit build
861
+  * mac-capture: Standardize early return behavior in init_screen_stream()
862
+  * obs-ffmpeg: Fix HDR metadata not being written when using FFmpeg 6.1+
863
+  * UI: Improve and update app metainfo file
864
+  * obs-browser: Update version to 2.23.4
865
+  * Update translations from Crowdin
866
+  * UI: Fix closing OBS with floating docks
867
+  * UI: Change default format for release builds to fMP4/fMOV
868
+  * .git-blame-ignore-revs: Add clang-format 17 update
869
+  * Update source code formatting with clang-format 17.0.3
870
+  * CI: Update clang-format version to 17.0.3
871
+  * libobs: Fix missing w32-pthreads dependency when building without UI (#10360)
872
+  * win-capture: Always reconfigure audio source when game capture hooks
873
+  * CI: Limit format checks to changed files only
874
+  * CI: Use Phased Group Rollout in Sparkle for stable tags
875
+  * CI: Use array to build options string for Sparkle
876
+  * rtmp-services: Update Vaughn Live and Breakers ingests
877
+  * obs-webrtc: Add additional error messaging for WHIP output
878
+  * UI: Block Elgato Stream Deck plugin before 5.5.2.0 to avoid crashes
879
+  * frontend-tools: Fix output timer stopping recording on unpause
880
+  * mac-avcapture: Fix possible crash if camera uses BGRA format
881
+  * obs-webrtc: Avoid crashing on invalid answer
882
+  * rtmp-services: Add SharePlay.tv
883
+  * rtmp-services: Add Streamway to ingest list
884
+  * rtmp-services: Add "CHZZK" platform
885
+  * rtmp-services: Update Switchboard Live servers
886
+  * rtmp-services: Add "Vault - by CommanderRoot" to ingest list
887
+  * Update translations from Crowdin
888
+  * UI: Correctly toggle audio multi-track buttons
889
+  * UI: Remove LoadOutputSettings from save sequence
890
+  * UI: Fix context bar not updating on delete
891
+  * CI: Update deps to 2024-02-26 release
892
+  * CI: Fix broken pip install to use ephemeral virtual environment
893
+  * CI: Fix scheduled language file check running on same commit hash
894
+  * mac-avcapture: Fix frame rate collection for camera device formats
895
+  * CI: Update Flatpak AppStream validation
896
+  * CI: Add appstream type support to flatpak-builder-lint action
897
+  * CI: Update deps to 2024-02-20 release
898
+  * UI: Fix Remux window only being usable once
899
+  * CI: Update Flathub screenshots URL
900
+  * CI: Switch to flathub-infra actions
901
+  * obs-websocket: Update to version 5.4.2
902
+  * libobs: Deprecate scene item transform API
903
+  * obs-websocket: Update version to 5.4.1
904
+  * libobs: Save crop to bounds when saving transform states
905
+  * libobs: Fix crop to bounds ABI break
906
+  * UI: Fix problem with Yes/No message box buttons not translated
907
+  * mac-avcapture: Fix crash issues on Intel-based Macs and older macOS
908
+  * win-capture: Add line break for capture audio tooltip
909
+  * UI: Fill audio meter background each update (#9842)
910
+  * mac-capture: Fix crash in device reconnect handler
911
+  * mac-capture: Limit number of copied audio channels to libobs limits
912
+  * mac-avcapture: Add color format selection for capture card source
913
+  * win-capture: Disable audio source when game capture unhooks
914
+  * UI: Fix locale key for fragmented tooltip
915
+  * win-capture: Fix leak in wasapi reroute proc call
916
+  * CI: Bump images to KDE 6.6
917
+  * CI: Remove validateToPublish input
918
+  * CI: Remove special-cased flatpak-builder-lint error
919
+  * CI: Use flatpak-builder-lint from the image
920
+  * CI: Don't manually commit screenshots to OSTree
921
+  * CI: Pass mirror-screenshots-url to build workflow
922
+  * CI: Use flathub-infra images
923
+  * build-aux: Update Flatpak audio plugins branch
924
+  * obs-ffmpeg: Receive packets while frame queue is full
925
+  * UI: Include audio devices in macOS microphone permissions prompt
926
+  * UI: Fix source remove log scene
927
+  * libobs: Use 'important' usage key for macOS disk space calculations
928
+  * win-dshow: Add generated Windows resource file to virtualcam sources
929
+  * obs-qsv11: Disable texture encoder on linux
930
+  * docs: Fix circlebuf deprecation note
931
+  * docs: Add deque to libobs/util table of content
932
+  * docs: Fix title underline of obs_encoder_roi
933
+  * CI: Fix incorrect commit hash for signing workflow
934
+  * CI: Explicitly set commit hash for signing workflow
935
+  * CI: Move Windows signing to reusable workflow
936
+  * CI: Ignore pdbs zip in Steam workflow
937
+  * win-dshow: Fix YUY2 line size error
938
+  * UI: Fix RTMP check in Advanced output
939
+  * CI: Switch to macOS 14 runners and Xcode 15.2
940
+  * image-source: Fix crash when randomize with 0 files
941
+  * libobs: Fix free disk space calculation on macOS (#10187)
942
+  * obs-ffmpeg: Fix wrong framerate in AMF VUI header
943
+  * libobs-opengl: Specify display attributes
944
+  * UI: Use vector for signals in source tree/transform
945
+  * deps/obs-scripting: Fix lua tick crash
946
+  * UI: Update exportOptions template for macOS release code signing
947
+  * libobs: Update version to 30.1.0
948
+  * CI: Update Google Cloud GitHub Actions
949
+  * CI: Update peter-evans/create-pull-request GitHub Action
950
+  * CI: Update CyberAndrii/steam-totp GitHub Action
951
+  * CI: Update CyberAndrii/setup-steamcmd GitHub Action
952
+  * CI: Update korelstar/xmllint-problem-matcher GitHub Action
953
+  * CI: Do not install python on macOS
954
+  * CI: Update upload-artifact from v3 to v4 for Sparkle appcast job
955
+  * UI: Fix null pointer dereference
956
+  * win-dshow: Add support for newer Elgato devices
957
+  * libobs: Copy both converted textures on stall for OpenGL
958
+  * CI: Update first-party GitHub Actions from v3 to v4
959
+  * CI: Switch to production codesigning cert
960
+  * libobs: Prevent encoder reconfiguration after initialization
961
+  * Add CheckSymbolExists module for FindMbedTLS.cmake
962
+  * Update translations from Crowdin
963
+  * obs-webrtc: Add AV1 Support
964
+  * cmake: Skip PDB install for interface target
965
+  * cmake: Skip generate export header if interface in legacy path
966
+  * obs-webrtc: Require libdatachannel 0.20 or newer
967
+  * obs-qsv11: Use the new gs_enum_adapters
968
+  * libobs,libobs-opengl,libobs-d3d11: Add opengl gs_enum_adapters
969
+  * deps/glad: Add EGL_EXT_device_base related extensions
970
+  * UI: Add accessible names to hotkey edit boxes
971
+  * CI: Update deps to 2024-01-27 release
972
+  * obs-ffmpeg: Set audio stream title for FFmpeg record output
973
+  * UI: Add "audio_names" setting to FFmpeg output settings
974
+  * libobs-opengl: Enable imported dmabufs for rendering
975
+  * libobs,libobs-opengl: enable GPU encoding for OpenGL
976
+  * libobs: Add encode_texture2 function to struct obs_encoder_info
977
+  * libobs: Use std _Pragma with MSVC
978
+  * obs-webrtc: Improve error messages on HTTP failure
979
+  * obs-websocket: Update version to 5.4.0
980
+  * Add PandaTV live RTMP service (#10117)
981
+  * libobs: Fix audio doubling with multiple main view mixes
982
+  * libobs: Fix GPU scaling using the main mix
983
+  * obs-browser: Update version to 2.23.3
984
+  * UI: Cancel session end request on commitDataRequest() signal
985
+  * obs-qsv11: Use 2 tile columns in QSV AV1 for 4K+
986
+  * obs-ffmpeg: Use 2 tile columns in NVENC AV1 for 4K+
987
+  * obs-ffmpeg: Set better VA-API defaults
988
+  * obs-ffmpeg: Add AV1 support for VA-API
989
+  * rtmp-services: Remove StreamVi (#10130)
990
+  * build-aux: Update Flatpak modules
991
+  * build-aux: Update Flatpak oneVPL module to libvpl
992
+  * build-aux: Update KDE Flatpak runtime to 6.6
993
+  * CI: Update deps to 2024-01-18 release
994
+  * CI: Update deps to 2024-01-11 release
995
+  * obs-ffmpeg: Default the number of B-frames to 3
996
+  * obs-ffmpeg: Fix issue with B-frames introducing motion blur
997
+  * UI: Add and migrate to GPU scaling options
998
+  * build-aux: Work around oneVPL search path for Flatpak QSV
999
+  * mac-avcapture: Update plugin to ObjC and modern APIs
1000
+  * image-source: Migrate slideshow mk2 to deque
1001
+  * libobs/util,docs: Deprecate circlebuf
1002
+  * obs-outputs: Replace circlebuf with deque
1003
+  * obs-filters: Replace circlebuf with deque
1004
+  * obs-ffmpeg: Replace circlebuf with deque
1005
+  * deps/obs-scripting: Replace circlebuf with deque
1006
+  * deps/media-playback: Replace circlebuf with deque
1007
+  * frontend-tools: Replace circlebuf with deque
1008
+  * libobs: Replace circlebuf with deque
1009
+  * docs: Add deque documentation
1010
+  * libobs/util: Add deque
1011
+  * libobs/util: Implement error reader for ffmpeg posix pipe
1012
+  * UI: Save invalid transition source data in safe mode
1013
+  * UI: Switch to bigger units for high bitrate/large recordings
1014
+  * cmake: Fix Xcode version error message
1015
+  * obs-ffmpeg: Add `disable_scenecut` option for NVENC
1016
+  * librtmp: Add missing extended timestamp in Type 3 chunks
1017
+  * linux-pipewire: Pass framerate and resolution at construction
1018
+  * linux-pipewire: Handle camera hotplug
1019
+  * linux-pipewire: Use spa_strerror to convert SPA errors to string
1020
+  * linux-pipewire: Add float property support
1021
+  * linux-pipewire: Add resolution and framerate list contents
1022
+  * linux-pipewire: Handle property changes
1023
+  * linux-pipewire: Collect device controls
1024
+  * linux-pipewire: Start camera only after we find the device
1025
+  * linux-pipewire: Factor out formats list into a file
1026
+  * linux-pipewire: Add NV12 support
1027
+  * linux-pipewire: Add PipeWire-based camera source
1028
+  * linux-pipewire: Rename a function
1029
+  * linux-pipewire: Add obs_pipewire_roundtrip()
1030
+  * linux-pipewire: Allow passing registry events on creation
1031
+  * obs-qsv11: Add ROI support
1032
+  * obs-ffmpeg: Add ROI support to AMF
1033
+  * obs-ffmpeg: Add ROI support for native NVENC
1034
+  * obs-x264: Implement ROI feature
1035
+  * docs: Add encoder ROI functions/struct
1036
+  * libobs: Add encoder ROI functions
1037
+  * libobs-d3d11: Remove new/delete replacements
1038
+  * image-source: Rework slideshow (slideshow mk2)
1039
+  * CI: Sign and package Windows builds
1040
+  * obs-ffmpeg: Disable hardened runtime when using ad-hoc signing
1041
+  * mac-capture: Remove macOS 14 ifdef and custom CGDisplayStream header
1042
+  * obs-ffmpeg: Fix incorrect CMake list syntax
1043
+  * cmake: Update MbedTLS finder to support MSVC Debug configuration
1044
+  * libobs/util: Fix function declaration
1045
+  * libobs: Defer media controls to video thread
1046
+  * libobs/util: Add da_pop_front()
1047
+  * libobs: Do not allow controllable media without flag
1048
+  * libobs: Add a couple missing comments
1049
+  * obs-ffmpeg: Fix NVENC compat hack ternary being inverted
1050
+  * libobs: Pass parent pointer into signal_item_remove
1051
+  * UI: Enable audio multi-track w/ mpegts streaming
1052
+  * obs-ffmpeg: Support multiple audio tracks (mpegts)
1053
+  * obs-ffmpeg: Only use NVENC compatibility hack if necessary
1054
+  * UI: Use normal source width for screenshots
1055
+  * UI: Fix unused-variable
1056
+  * mac-capture: Update capture to include menu bar and child windows
1057
+  * libobs: Send item_remove signal after detaching item
1058
+  * mac-virtualcam: Reduce excessive polling for new sample buffers
1059
+  * vlc-video: Fix play_pause to respect boolean
1060
+  * obs-ffmpeg: Remove Windows 7 NVENC fallback
1061
+  * obs-ffmpeg: Remove Ubuntu 20.04 NVENC fallback
1062
+  * rtmp-services: Add IRLToolkit Frankfurt ingest
1063
+  * UI: Save last used output resolution to scene collection
1064
+  * libobs: Use aligned memory allocator in Cocoa logging
1065
+  * libobs: Log Mac model identifier
1066
+  * libcaption: Optimize branch conditons
1067
+  * obs-outputs: Enable HDR for HEVC over RTMP
1068
+  * obs-outputs: Switch RTMP color metadata order
1069
+  * libobs: Fix crop to bounding box not being duplicated with item
1070
+  * cmake: Update build requirements to Xcode 15.1 and macOS 14.2 SDK
1071
+  * CI: Update build workflow comment to Xcode 15.1
1072
+  * CI: Update build workflow to use Xcode 15.1 on macOS
1073
+  * obs-websocket: Update version to 5.3.5
1074
+  * obs-browser: Update version to 2.22.3
1075
+  * mac-capture: Switch AudioUnits to use canonical format on output bus
1076
+  * mac-capture: Allow selection of channels on core audio devices
1077
+  * libobs-d3d11: Remove unnecessary quoting of CMake generator expression
1078
+  * cmake: Remove support for generators besides Xcode on macOS
1079
+  * cmake: Update CMake formatting with manual format choices
1080
+  * test: Update CMake target source lists with alphabetic sorting
1081
+  * UI: Update CMake target source lists with alphabetic sorting
1082
+  * UI: Add UI support interface library with custom Qt elements
1083
+  * aja: Add shared interface library for plugin and frontend-plugin
1084
+  * plugins: Update CMake formatting with manual format choices
1085
+  * libobs-opengl: Update CMake formatting with manual format choices
1086
+  * libobs: Update CMake target source lists with alphabetic sorting
1087
+  * deps: Update CMake target source lists with alphabetic sorting
1088
+  * cmake: Update FFmpeg find package to use explicit version
1089
+  * cmake: Replace custom Qt discovery function with CMake default
1090
+  * UI: Remove lock & vis checkbox classes
1091
+  * rtmp-services: Remove defunct servers/services
1092
+  * UI: Remove double unit indication in replay buffer maximum string
1093
+  * CI: Use distributed network for service uptime check
1094
+  * libobs: Remove obs-ui from public headers
1095
+  * CONTRIBUTING.rst: Mention formatting scripts
1096
+  * build-aux: Improve documentation
1097
+  * UI: Add Crop to Bounds checkbox to transform dialog
1098
+  * libobs: Add automatic cropping to bounds for scene items
1099
+  * win-capture: Toggle premultiplied alpha for games
1100
+  * libobs: Fix disk space reporting for attached network drives on macOS
1101
+  * UI: Remove SignalBlocker
1102
+  * graphics-hook: Fix DXGI ref leak for D3D12 capture
1103
+  * UI: Fix resize cursor to respect item transformation
1104
+  * docs: Add missing sceneitem functions
1105
+  * UI: Fix QListWidget background color in property groups
1106
+  * docs: Add property functions
1107
+  * linux-pipewire: Add screencast cursor_visible prop
1108
+  * linux-pipewire: Factor out connection props in a struct
1109
+  * linux-pipewire: Standardize argument names
1110
+  * win-wasapi: Make reroute target a weak reference
1111
+  * win-wasapi: Initialize a pointer reroute_target
1112
+  * win-capture: Add audio capture option to window/game capture
1113
+  * win-wasapi: Add procedure to reroute audio output
1114
+  * libobs: Update version to 30.0.2
1115
+  * Revert "cmake: Align Product Name and Bundle Name on macOS"
1116
+  * graphics-hook: Remove unused member variables
1117
+  * graphics-hook: Use ID3DDestructionNotifier
1118
+  * libobs-d3d11: Add display primaries to the log
1119
+  * libobs: Render audio for all views
1120
+  * libobs: Fix audio-only output did not receive raw_audio
1121
+  * image-source: Use mutex when accessing slideshow
1122
+  * UI: Disable edit transform if item is locked
1123
+  * UI: Don't paste transform on locked item
1124
+  * mac-capture: Fix ScreenCaptureKit deadlock when using nil display ID
1125
+  * libobs: Update version to 30.0.1
1126
+  * obs-scripting: Disable Python 3.11 support on Windows
1127
+  * obs-scripting: Add missing function import for PyType_IsSubtype
1128
+  * obs-scripting: Fix Python version detection on Windows
1129
+  * obs-vst: Fix incorrect VST window size on HiDPI display
1130
+  * CI: Add further packages for build-requirements on Linux
1131
+  * libobs: Fix scene_enum_sources skipping some active sources
1132
+  * aja: Disable deprecated declarations warnings on macOS and Linux
1133
+  * CI: Add github-actions renderer options to xcbeautify
1134
+  * Update translations from Crowdin
1135
+  * libobs: Pair video encoder with all audio encoders
1136
+  * libobs: Remove unused wait_for_video flag
1137
+  * obs-websocket: Update version to 5.3.4
1138
+  * obs-browser: Update version to 2.23.1
1139
+  * UI: Fall back in case of invalid scene name on load
1140
+  * win-wasapi: Ignore timestamp errors
1141
+  * libobs: Remove module UI functions
1142
+  * docs: Add obs_view_enum_video_info and deprecate obs_view_get_video_info
1143
+  * libobs: Deprecate obs_view_get_video_info
1144
+  * libobs: Add obs_view_enum_video_info
1145
+  * libobs: Fix obs_view_remove only resetting the first matching mix
1146
+  * docs: Add info on obs_frontend_source_list
1147
+  * mac-videotoolbox: Fix handling of unsuccessful encoder creation
1148
+  * obs-ffmpeg: Add missing header to CMakeLists
1149
+  * libobs: Fix GPU scaling always using the main mix
1150
+  * obs-ffmpeg: Use new side-data FFmpeg 6.1 API
1151
+  * libobs: Fence off unnecessary code due to FFmpeg v6.1 changes
1152
+  * deps/media-playback: In check for key-frame, use new FFmpeg 6.1 API
1153
+  * deps/media-playback: Use new (nb_)coded_side_data FFmpeg 6.1 API
1154
+  * libobs: Reuse matching mix's render texture if possible
1155
+  * UI: Fix checkbox misalignment on macOS in properties view
1156
+  * libobs: Fix PTS incrementation when FPS divisor is enabled
1157
+  * UI: Make replay buffer settings always visible in Simple Mode
1158
+  * UI: Add to lossless warning that replay buffer is unavailable
1159
+  * libobs: Fix possible minor memory leak
1160
+  * obs-ffmpeg: Initialize stopping member variable to false
1161
+  * libobs: Don't keep filter mutex in obs_save_source
1162
+  * docs: Fix missing accessor in example
1163
+  * libobs/util: Remove unused struct member from text-lookup
1164
+  * libobs/media-io: Fix link error including a header file from C++
1165
+  * libobs/util: Fix link error including header files from C++
1166
+  * frontend-tools: Fix multiple signal-slot connections on Output Timer
1167
+  * updater: Clear shader cache after updating
1168
+  * libobs-d3d11: Add checksum to shader cache
1169
+  * cmake: Align Product Name and Bundle Name on macOS
1170
+  * libobs: Consolidate scene item remove code
1171
+  * libobs-d3d11: Use OS D3DCompiler_47.dll
1172
+  * libobs: Use macOS specific APIs to report free disk space
1173
+  * UI: Disable safe mode when --multi is used
1174
+  * libobs: Remove superfluous NULL checks
1175
+  * cmake: Enable /GL and /LTCG for non-Debug configurations
1176
+  * obs-filters: Remove LTCG linker flag for SpeexDSP builds on Windows
1177
+  * libobs: Fix memory leak when migrating from legacy scene item data
1178
+  * libobs: Fix crash in `obs_sceneitem_remove()` when already removed
1179
+  * linux-pipewire: Ensure number of dmabufs is zero initialized
1180
+  * obs-filters: Add maxRGB tonemapper for SDR
1181
+  * obs-scripting: Add Python 3.11 support for Windows and macOS
1182
+  * rtmp-services: Update IRLToolkit service
1183
+  * cmake: Force PDB generation on Windows for MSVC builds in all configs
1184
+  * mac-capture: Add handling for nil target window
1185
+  * libobs: Expose obs_data_set_autoselect_array
1186
+  * CI: Validate Flatpak repository in push workflow
1187
+  * CI: Allow to silence errors related to publish
1188
+  * CI: Validate Flatpak with flatpak-builder-lint
1189
+  * CI: Set build-log-url when publishing
1190
+  * CI: Bump flatpak-github-actions commit hash
1191
+  * win-capture: Update graphics hook version
1192
+  * build-aux: Remove StatusNotifierItem Flatpak permission
1193
+  * UI: Fix UseStreamKeyAdv not display stream key and not hide button
1194
+  * win-capture: Fix Vulkan race condition
1195
+  * UI: Fix typo in Virtual Camera logging functions
1196
+  * CI: Update deps to 2023-11-03 release
1197
+  * obs-browser: Add support for more events
1198
+  * win-wasapi: Handle changes to the default monitoring device
1199
+  * libobs: Add obs_reset_audio_monitoring()
1200
+  * UI: Log Virtual Camera output type
1201
+  * libobs: Fix crash when plugins delete properties in callback
1202
+  * mac-videotoolbox: Remove CRF 0 second keyint override
1203
+  * mac-videotoolbox: Set default keyframe interval to 2 seconds
1204
+  * obs-scripting: Fix Sparkle delta updates by disabling bytecode caching
1205
+  * cmake: Allow finding the CEF wrapper without a build folder on Linux
1206
+  * obs-ffmpeg: Remove unused variable in VA-API utils
1207
+  * libobs,obs-filters: Use common straight alpha math
1208
+  * UI: Fix transform of sources in groups
1209
+  * libobs: Add AV1 parsing functions
1210
+  * libobs: Add more files to list of public headers
1211
+  * docs: Fix obs_sceneitem_get_group signature
1212
+  * obs-webrtc: Allow non-CBR rate control with WHIP
1213
+  * obs-ffmpeg: Add B-frames option for VA-API
1214
+  * linux-pipwire: Pass obs_pw_stream to renegotiation callback
1215
+  * Revert "win-wasapi: Remove 'BETA' from Application Audio Capture name"
1216
+  * obs-qsv11: Migrate target usage settings
1217
+  * UI: Replace SourceTreeSubItemCheckBox class with Qt property
1218
+  * plugins: Remove old macOS version ifdefs
1219
+  * win-wasapi: Log source name on initialization
1220
+  * UI: Fix AMF AV1 simple recording presets
1221
+  * mac-virtualcam: Correct device timer firing rate
1222
+  * rtmp-services: Remove defunct servers/services
1223
+  * libobs: Export SIMDe headers unconditionally for plugin development
1224
+  * CI: Update deps to 2023-10-26 release
1225
+  * UI: Remove iCCP data from PNGs
1226
+  * decklink-output-ui: Decouple DeckLink output state
1227
+  * linux-pipewire: Load glad symbols on start
1228
+  * linux-pipewire: Use the format properties for swap r/b
1229
+  * linux-pipewire: Add locks to unsafe pipewire functions
1230
+  * obs-qsv11: Log more QSV settings
1231
+  * mac-avcapture: Replace kCMIOObjectPropertyElementMaster with Main
1232
+  * mac-capture: Replace kAudioObjectPropertyElementMaster with Main
1233
+  * libobs: Replace kAudioObjectPropertyElementMaster with Main
1234
+  * cmake: Explicitly fail if macOS SDK is too old
1235
+  * CI: Update deps to 2023-10-17 release
1236
+  * UI: Add missing NULL check for skipUpdateVer
1237
+  * obs-websocket: Update version to 5.3.3
1238
+  * obs-scripting: Search native libraries in Lua script's location
1239
+  * libobs-d3d11: Log VRAM in GiB
1240
+  * frontend-tools: Remove unused startAtLaunch variable
1241
+  * input-v4l2: always use linear alpha blending
1242
+  * libobs: Fix rendering stats not being logged on output stop
1243
+  * UI: Convert QTStr macro to inline function
1244
+  * CI: Update CEF builds
1245
+  * build-aux: Update Flatpak CEF build
1246
+  * mac-virtualcam: Log when extension replacement is requested
1247
+  * rtmp-services: Remove defunct servers/services
1248
+  * UI: Fix compile error due to use of strlen in constexpr
1249
+  * CI: Fix Steam upload (again)
1250
+  * UI: Use theme path prefix in status bar
1251
+  * UI: Use theme path prefix in source tree
1252
+  * UI: Update themes to use 'theme:' prefix for non-qrc files
1253
+  * UI: Add 'theme:' prefix to Qt search paths
1254
+  * Update translations from Crowdin
1255
+  * mac-virtualcam: Check result of finished extension installation
1256
+  * mac-virtualcam: Treat extension installation cancellation as error
1257
+  * mac-virtualcam: Always replace camera extension when requested
1258
+  * build-aux: Update Flatpak CEF build
1259
+  * CI: Update CEF builds
1260
+  * cmake: Use dependency hashes to track revisions
1261
+  * CI: Update deps to 2023-10-09 release
1262
+  * win-capture: Add 9 window class auto switch to WGC mode
1263
+  * win-capture: Add and tweak apps in compatibility.json
1264
+  * .editorconfig: Add win-capture json
1265
+  * cmake: Depend entirely on pkg-config if found for VPL
1266
+  * CI: Add support for dependency revisions to Linux CI builds
1267
+  * Revert "CI: Add xclogparser to macOS builds to generate issue report"
1268
+  * Revert "CI: Add build annotation step to macOS arm64 builds"
1269
+  * Revert "CI: Fix condition for annotations in nightly runs"
1270
+  * UI: Enable "Paste Filters" after copying from scenes or mixer
1271
+  * win-wasapi: Remove 'BETA' from Application Audio Capture name
1272
+  * win-wasapi: Handle flags set by GetBuffer
1273
+  * win-wasapi: Use provided timestamp for application audio capture
1274
+  * libobs: Fix hotkeys when reordering sceneitems into/out of groups
1275
+  * libobs: Distinguish sceneitem hotkeys by id
1276
+  * libobs: Specify scene item IDs on creation
1277
+  * UI: Initialize YouTubeAppDock synchronously to fix Qt runloop issues
1278
+  * linux-v4l2: Expand packed values to 4 bytes
1279
+  * rtmp-services: Update OnlyFans streaming service
1280
+  * libobs: Use same ver. in obs-config.h for betas/RCs
1281
+  * UI: Cleanup remaining uses of old version macros
1282
+  * UI: Refactor Windows update check to always use LIBOBS_API_VER
1283
+  * cmake: Fix OBS_COMMIT not being set (Windows only)
1284
+  * cmake/libobs: Only set beta/rc increment
1285
+  * libobs: Fix errors for gs_effect_create
1286
+  * obs-ffmpeg: Readd OBS_ENCODER_CAP_DYN_BITRATE to AMF texture encoders
1287
+  * libobs,obs-filters: Fix NAN when tonemapping
1288
+  * UI: Use std::shared_ptr instead of QSharedPointer
1289
+  * UI: Use C++11 ranged-for instead of Q_FOREACH
1290
+  * obs-qsv11: Use translatable strings for target usage
1291
+  * obs-qsv11: Remove D3D9 fallback
1292
+  * obs-qsv11: Remove D3D9 allocator
1293
+  * Revert "UI: Add workaround for Qt tooltip stylesheet bug"
1294
+  * obs-qsv11: Redo session data releasing for Linux
1295
+  * CI: Update deps to 2023-09-28 release
1296
+  * mac-capture: Don't crash when migrating unknown display IDs
1297
+  * obs-browser: Fix invalid comparison of integer types
1298
+  * obs-browser: Update version to 2.22.1
1299
+  * cmake: Update qrcodegen finder to match target names of CMake package
1300
+  * libobs: Fix duplicate symbol resolution for obs plugins
1301
+  * obs-webrtc: Move libdatachannel code to C++ from C
1302
+  * obs-qsv11: Add license declaration file
1303
+  * decklink: Add license declaration files
1304
+  * libobs: Add license declaration files
1305
+  * deps: Add license declaration files
1306
+  * CI: Update deps to 2023-09-18 release
1307
+  * obs-qsv11: Fix unusual CBR bitrate issues
1308
+  * libobs: Do not skip async frames unless one has been selected
1309
+  * Add Qt UI form spacing in editorconfig
1310
+  * UI: Fix IP settings order
1311
+  * obs-qsv11: Fix target usage migration string comparisons
1312
+  * win-wasapi: Fix arithmetic for WAVEFORMATEX::cbSize
1313
+  * UI: Avoid using newlines in error messages
1314
+  * UI: Don't show native popup for YouTube auth message box
1315
+  * UI: Standardize spelling of closable, fix typo
1316
+  * UI: Add cleanup of stats callback on window close
1317
+  * CI: Fix Steam prerelease detection for releases
1318
+  * cmake: Fix regular expression for beta and RC version detection
1319
+  * UI: Remove unused ExpandCheckBox
1320
+  * CI: Fix condition for annotations in nightly runs
1321
+  * rtmp-services: Rebranding Utreon to Playeur
1322
+  * libobs: Fix obs_output_video and obs_output_audio for encoded output
1323
+  * UI: Create/Delete YouTube Dock when switching profiles
1324
+  * UI: Untangle ifdef'd if-statement to un-confuse Xcode
1325
+  * image-source: Fix slideshow audio rendering buffer overrun
1326
+  * UI: Restrict regex pattern for OAuth secrets
1327
+  * UI: Add workaround for Qt tooltip stylesheet bug
1328
+  * UI: Fix settings Apply button always being enabled
1329
+  * win-dshow: Log source name at error
1330
+  * rtmp-services: Remove defunct servers/services
1331
+  * CI: Add build annotation step to macOS arm64 builds
1332
+  * CI: Add xclogparser to macOS builds to generate issue report
1333
+  * obs-websocket: Update version to 5.3.0
1334
+  * obs-qsv11: Ensure default devices are Intel devices
1335
+  * updater: Remove non-error logging from multithreaded code
1336
+  * libobs: Remove old macOS guards for NSProcessInfo
1337
+  * build-aux,CI: Bump Flatpak KDE Runtime to 6.5
1338
+  * CI: Update flatpak-github-actions to get upstream improvement
1339
+  * UI: Fix ifdef for YouTube dock integration
1340
+  * mac-virtualcam: Switch pixel format of camera extension to BGRA
1341
+  * UI: Increase YouTube API timeout
1342
+  * UI: Fix stream key UI not showing when using stream key
1343
+  * libobs: Fix warnings about implicit integer downcasts in macOS code
1344
+  * obs-outputs: Silence all warnings generated by the FTL SDK
1345
+  * text-freetype2: Fix warning about implicit integer downcast
1346
+  * json11: Suppress warnings about unqualified std::move calls
1347
+  * libobs: Suppress warnings about implicit integer downcasts
1348
+  * plugins: Suppress warnings about implicit integer downcasts
1349
+  * mac-avcapture: Log if portrait or studio light effects are active
1350
+  * obs-ffmpeg: Fix broken mpegts output
1351
+  * build-aux: Add missing build type to Flatpak modules
1352
+  * UI: Fix source enumeration in source select aborting prematurely
1353
+  * CI: Add missing secrets on Flatpak releases
1354
+  * obs-outputs: Fix provision of CA certificates to mbedTLS on macOS
1355
+  * CI: Fix ccache status output for workflow jobs
1356
+  * CI: Fix GitHub Actions JSON runtime error in scheduled workflow
1357
+  * docs: Clarify strlist_split
1358
+  * updater: Static analysis cleanups
1359
+  * obs-ffmpeg: Do not include sys/timeb.h on non-Windows system
1360
+  * UI: Remove unused static functions
1361
+  * obs-ffmpeg: Remove an unused static function
1362
+  * obs-outputs: Remove unused static functions
1363
+  * rtmp-services: Remove an unused static function
1364
+  * mac-avcapture: Remove an unused static function
1365
+  * linux-capture: Remove an unused static function
1366
+  * plugins: Quote program paths used in os_process_pipe_create
1367
+  * libobs: Log if CreateProcessW fails on Windows
1368
+  * obs-qsv11: Fixup session releasing for Linux
1369
+  * obs-qsv11: Use device enumeration for choosing DRM device
1370
+  * obs-qsv11: Mark internal functions static
1371
+  * UI: Increase minimum output resolution to 32x32
1372
+  * UI: Add stream key tooltip in the auto-config wizard
1373
+  * UI: Fix stream key tooltip in the settings page
1374
+  * docs: Add version added to filter index functions
1375
+  * CI: Fix typos in scheduled nightly run workflow
1376
+  * UI: Fix crash in YoutubeAuth
1377
+  * CI: Fix scheduled language file upload
1378
+  * cmake: Restrict FindCEF path to omit default paths on Windows
1379
+  * obs-x264: refactor log callback
1380
+  * obs-x264: Remove unused getparam() function
1381
+  * libobs: Do not hide OBS_NIX_PLATFORM_WAYLAND behind ifdef
1382
+  * CI: Add brute-force workaround for macOS disk image creation failure
1383
+  * Revert "UI: Support DnD overlay in linuxbrowser"
1384
+  * CI: Remove concurrency limits for push workflow
1385
+  * CI: Remove language file upload from push workflow
1386
+  * CI: Add nightly upload of changed language files
1387
+  * UI: Replace remaining enc-amf reference
1388
+  * UI: Fix alignment of status bar message
1389
+  * UI: Center vertical volume control buttons
1390
+  * UI: Use the latest version when dropping files
1391
+  * cmake: Mark source lists in feature files sortable
1392
+  * Add YAML and ZSH spacing in editorconfig
1393
+  * CI: Enforce the use of Ubuntu's CMake
1394
+  * UI: Fix capitalization of "WebSocket"
1395
+  * obs-filters: Add a mutex when running NVIDIA Audio FX
1396
+  * UI: Log if user is ignoring service limits
1397
+  * CI: Specify tag for Steam action on release
1398
+  * cmake: Parse beta/rc version from override/git describe
1399
+  * obs-qsv11: Fix crash in QSV test process
1400
+  * build-aux: Enable QSV encoders on Flatpak
1401
+  * UI: Add timer to NewYouTubeAppDock()
1402
+  * CI: Bump FreeBSD version to supported release: 13.2
1403
+  * UI: Move restart to end of main()
1404
+  * rtmp-services: Remove defunct servers/services
1405
+  * UI: Fix potential null pointer dereference
1406
+  * UI: Fix memory leak in OBSQTDisplay
1407
+  * CI: Fix Sparkle appcast release note generation
1408
+  * obs-qsv11: Drop Windows guards on LowPower settings
1409
+  * CI: Fix Steam Playtest upload
1410
+  * docs: Fix obs_frontend_add_dock deprecation version
1411
+  * obs-filters: Update NVIDIA Effects SDK versions
1412
+  * CI: Update dispatch workflob jobs for documentation updates
1413
+  * CI: Fix checkers tripping over empty GitHub Actions references
1414
+  * CI: Fix push workflow checking for ref name instead of type
1415
+  * CI: Use older compression and file system for macOS disk image
1416
+  * CI: Use more explicit check for valid git reference in check actions
1417
+  * CI: Do not cancel concurrent workflow runs for pushes to master
1418
+  * obs-qsv11: Fix VPL initialization on intel-mediaSDK
1419
+  * obs-qsv11: Fix InitParams low power fallback
1420
+  * libobs: Fix shader fix not working on D3D11
1421
+  * UI: Remove silent OpenGL fallback on Windows
1422
+  * UI: Fix compiling without nlohmann JSON
1423
+  * UI: Fix unnecessary GetCurrentScene() call
1424
+  * libobs: Fix default.effect not working with OpenGL
1425
+  * UI: Hold reference to scene when drawing spacers
1426
+  * UI: Fix possible race condition in DrawSpacingHelpers
1427
+  * libobs: Remove starting_frame_count from obs_output_t
1428
+  * libobs: Fix holding possibly released pointer in obs_output_t
1429
+  * UI: Fix transform shortcuts with multiple items selected
1430
+  * UI: Set advanced audio encoder to invalid if missing
1431
+  * decklink: Reset video capture on format change
1432
+  * decklink: Add HDR playback support
1433
+  * libobs/media-io: Relax color space comparison
1434
+  * libobs: Add DrawAlphaDivide variant shaders
1435
+  * UI: Store dock titles in BrowserDock instead of relying on Qt
1436
+  * UI: Update text for custom browser dock menu items manually
1437
+  * UI: Track custom browser dock names internally
1438
+  * UI: Set browser dock title in constructor
1439
+  * UI: Fix crash at resizing display followed by destruction on macOS
1440
+  * UI: Fix crash at render_display while shutdown on macOS
1441
+  * UI: Removes the workaround of not receiving expose event
1442
+  * docs: Add source-specific procedures
1443
+  * docs: Add source-specific signals
1444
+  * docs: Add decl string for media signals
1445
+  * image-source: Fix slideshow proc decl strings
1446
+  * Update translations from Crowdin
1447
+  * CI: Update obs-crowdin-sync to latest
1448
+  * UI/importers: Ignore empty Streamlabs hotkeys
1449
+  * UI: Show link to release notes in Help menu
1450
+  * sndio: Remove variable-length array usage
1451
+  * UI: Add high frame rate 119.88 fps to capture device properties
1452
+  * UI: Add high frame rates (120, 144, 240) to general video properties
1453
+  * UI: Use QCheckBox::toggled signal for checkbox changes
1454
+  * UI: Don't cap auto-config wizard FPS whole number precision at 2
1455
+  * UI: Use QGroupBox::toggled signal for group changes
1456
+  * UI: Set loading to true when loading accessibility settings
1457
+  * UI: Fix YouTube not saving stream key in auto config
1458
+  * obs-ffmpeg: Set avg_frame_rate for AVStream outputs
1459
+  * linux-pipewire: Replace dynamic arrays with allocations
1460
+  * UI: Use static function instead of macro to set color
1461
+  * .git-blame-ignore-revs: Add clang-format 16 update
1462
+  * updater: Pass through parameters to restarted OBS instance
1463
+  * UI: Copy OBS command line arguments to updater launch
1464
+  * CI: Simplify build scripts for CI-only use
1465
+  * mac-virtualcam: Fix crash on macOS when starting virtualcam output
1466
+  * Update .clang-format rules for ObjC files for version 16
1467
+  * CI: Update to clang-format 16
1468
+  * obs-webrtc: Improve WHIP compliance
1469
+  * obs-webrtc: Follow HTTP redirects
1470
+  * obs-qsv11: Fix adapter enumeration in test app
1471
+  * Revert "obs-outputs: Enable HDR for HEVC over RTMP"
1472
+  * rtmp-services: Add MasterStream.iR to ingest list (#9330)
1473
+  * UI: Make simple mode settings warnings float at bottom of page
1474
+  * obs-qsv11: Fix RepeatPPS bug
1475
+  * obs-qsv11: Remove AVBR, QVBR, and VCM
1476
+  * obs-qsv11: Refactor and tune Look-ahead settings
1477
+  * obs-qsv11: Update Target Usage options
1478
+  * obs-qsv11: Fix bitstream bug
1479
+  * obs-qsv11: Adjust Gop and keyint_sec parameters
1480
+  * obs-qsv11: Adjust Subjective Video Enhancements
1481
+  * obs-qsv11: Add AV1 meta data
1482
+  * obs-qsv11: Improve AV1 quality parameters
1483
+  * libobs/util: Define PRAGMA_WARN_DEPRECATION for MSVC
1484
+  * CI: Update peter-evans/create-pull-request GitHub Action
1485
+  * CI: Pin third-party actions to specific commits
1486
+  * CI: Update deps to 2023-08-08 release
1487
+  * obs-browser: Disable Bluetooth support
1488
+  * CI: Fix services validator being unable to create Pull Requests
1489
+  * obs-qsv11: Remove MSDK headers
1490
+  * obs-qsv11: Add VPL changes
1491
+  * UI: Avoid showing YouTubeAppDock each time settings are updated
1492
+  * UI: Make title bar "SAFE MODE" translatable
1493
+  * libobs: Add local event monitor for hotkey thread
1494
+  * plugins: Update CMake minimum to 3.22
1495
+  * libobs: Update CMake minimum to 3.22
1496
+  * deps: Update CMake minimum to 3.22
1497
+  * UI: Update CMake minimum to 3.22
1498
+  * cmake: Update CMake minimum to 3.22
1499
+  * UI: Fix YouTubeAppDock restore dock state
1500
+  * obs-outputs: Refine certificate selection on macOS
1501
+  * libobs/util: Contain simde diagnostic pragmas
1502
+  * mac-virtualcam: Replace variable-length arrays with NSMutableData
1503
+  * libobs: Remove variable-length array
1504
+  * linux-pipewire: Replace variable-length arrays with dynamic arrays
1505
+  * UI: Don't call obs_source_get_output_flags on a NULL source
1506
+  * CI: Remove optimistic continuation of disk image creation for macOS
1507
+  * CI: Add write permissions to contents scope to service validator
1508
+  * UI: Fix case where cef func may not be present
1509
+  * UI: Use new add dock path for YouTubeAppDock
1510
+  * obs-transitions: Fix stingers lingering on last frame
1511
+  * CI: Add wrapper function for macOS disk image operations
1512
+  * graphics-hook: Handle VkImageViewUsageCreateInfo
1513
+  * UI: Fix build error (forgot macro)
1514
+  * UI: Fix YouTubeAppDock crash
1515
+  * frontend-tools: Disable properties deferring in script dialog
1516
+  * UI: Add func to disable properties view deferring
1517
+  * Revert "UI: Only defer property updates for input and transition sources"
1518
+  * CI: Fix detaching of temporary macOS disk images during image creation
1519
+  * build-aux: Update Flatpak modules
1520
+  * libobs: Make video frame header public
1521
+  * UI: Add "YouTube Control Panel" dock panel
1522
+  * CI: Update deps to 2023-08-02 release
1523
+  * libobs: Profile graphics initialisation and shader compilation
1524
+  * CI: Shorten job and step labels in workflow files
1525
+  * UI: Refactor getting the default encoder for a format
1526
+  * UI: Clean up remaining C-isms in FFmpeg utils
1527
+  * UI: Replace FFmpeg encoder alias with long name
1528
+  * UI: Refactor FFmpeg utilities codec/format enumeration
1529
+  * UI: Fix matching FFmpeg formats/codecs
1530
+  * deps: Remove libff
1531
+  * UI: Migrate from libff
1532
+  * win-wasapi: Add hook signal and proc for process output capture
1533
+  * win-capture: Add hook signal and proc for window capture
1534
+  * win-capture: Add hook signal and proc for game capture
1535
+  * linux-capture: Add hook signal and proc for Xcomposite window capture
1536
+  * UI: Add new scene at current row
1537
+  * deps/libff: Remove unused code and header files
1538
+  * UI: Split toggle preview program hotkey into hotkey pair
1539
+  * decklink: Support 10-bit RGB capture
1540
+  * libobs: Add VIDEO_FORMAT_R10L
1541
+  * libobs-opengl: Support mad/uint2/uint3/uint4
1542
+  * deps,libobs,plugins: Remove in-tree Jansson
1543
+  * libobs: Check if adapter can safely fast clear
1544
+  * libobs: Add function to check fast clear capability
1545
+  * libobs-d3d11: Check if device can perform fast clear on init
1546
+  * libobs: Add obs_source_info.filter_add
1547
+  * build-aux: Add RNNoise Flatpak module
1548
+  * obs-qsv11: Downgrade minimum required CMake version
1549
+  * aja: Ignore return value from aja-common functions
1550
+  * docs: Indicate that refcount is not incremented
1551
+  * CI: Add fixes for tagged release runs and assorted minor issues
1552
+  * UI: Avoid auto config selecting QSV on linux
1553
+  * obs-outputs: Set videocodecid to HEVC/AV1 FourCC in E-RTMP
1554
+  * libobs: Fix GPU scaled video encoder media not being cleared
1555
+  * libobs: Fix flip calculations in bounding box
1556
+  * obs-qsv11: Link against Libva on Linux
1557
+  * UI: Fix crop on flipped sceneitems in bounding boxes
1558
+  * UI: Fix drawing of pixel guides on flipped sceneitems in bounding boxes
1559
+  * UI: Fix draw and find of rot handle with bounding box and flip
1560
+  * UI: Fix rotation handle find angle
1561
+  * win-capture: Fix leaking framebuffers data
1562
+  * UI: Add IPv4 / IPv6 selection setting
1563
+  * obs-outputs: Add log message on successful connection
1564
+  * obs-outputs: Adopt Happy Eyeballs in RTMP
1565
+  * deps: Add Happy Eyeballs (RFC 6555)
1566
+  * rtmp-services: Fix package.json not using correct ver.
1567
+  * rtmp-services: Add "VStream" RTMP service (#9274)
1568
+  * UI: Migrate WhatsNew to nlohmann JSON
1569
+  * UI: Migrate branches to nlohmann JSON
1570
+  * UI: Migrate Windows update check to nlohmann JSON
1571
+  * updater: Update manifest struct for use in UI
1572
+  * cmake,plugins,build-aux: Remove enc-amf
1573
+  * UI: Remove D3D11 shader cache folder creation
1574
+  * libobs-d3d11: Create shader cache directory when creating device
1575
+  * updater: Migrate to nlohmann JSON
1576
+  * docs: Add documentation for filter index functions
1577
+  * build-aux: Add shader cache cleanup to steam uninstall script
1578
+  * libobs-d3d11: Implement shader cache
1579
+  * CI: Fix Python 3.11 installation on macOS 13 runners
1580
+  * CI: Fix steamcmd being unable to find generated build file
1581
+  * updater: Update installed version in registry
1582
+  * UI: Fix remaining status bar nits
1583
+  * UI: Don't clear lastService immediately after setting it
1584
+  * build-aux: Add deps to clang-format and cmake-format
1585
+  * build-aux: Make clang-format ignore libdshowcapture
1586
+  * CI: Fix broken download of nightly build artifacts for Steam uploads
1587
+  * UI: Add Safe Mode
1588
+  * libobs: Add obs_add_safe_module()
1589
+  * CI: Fix broken Flatpak cache generation on CI
1590
+  * CI: Fix random password generation for macOS codesigning
1591
+  * UI: Replace SIGNAL and SLOT macros for HookWidget methods
1592
+  * UI: Replace SIGNAL and SLOT macros for AddProjectorMenuMonitors method
1593
+  * UI: Replace SIGNAL and SLOT macros in aja-/decklink-output-ui
1594
+  * UI: Replace SIGNAL and SLOT macros in frontend-tools
1595
+  * UI: Replace SIGNAL and SLOT macros in settings
1596
+  * UI: Replace SIGNAL and SLOT macros in importer
1597
+  * UI: Replace SIGNAL and SLOT macros in filters
1598
+  * UI: Replace SIGNAL and SLOT macros in window-basic-main
1599
+  * UI: Replace SIGNAL and SLOT macros in auto-config
1600
+  * UI: Replace SIGNAL and SLOT macros in transitions
1601
+  * UI: Replace SIGNAL and SLOT macros in about dialog
1602
+  * UI: Replace SIGNAL and SLOT macros in properties-view
1603
+  * UI: Replace SIGNAL and SLOT macros in obs-app
1604
+  * UI: Replace SIGNAL and SLOT macros in remux
1605
+  * UI: Replace SIGNAL and SLOT macros in projectors
1606
+  * UI: Replace SIGNAL and SLOT macros in missing files
1607
+  * UI: Replace SIGNAL and SLOT macros in media controls
1608
+  * UI: Replace SIGNAL and SLOT macros in custom widgets
1609
+  * UI: Replace SIGNAL and SLOT macros in auth
1610
+  * UI: Replace SIGNAL and SLOT macros in adv-audio-control
1611
+  * updater: Treat mapped file errors as a sharing violation
1612
+  * CI: Switch service availability checks to macOS runners
1613
+  * libobs: Change return type for getting filter index
1614
+  * CI: Remove label triggers from pull request workflow
1615
+  * obs-browser: Update version to 2.22.0
1616
+  * cmake: Copy libdatachannel DLL
1617
+  * build-aux: Update libdatachannel for Flatpak
1618
+  * CI: Fix scheduled Steam builds
1619
+  * UI: Redesign status bar
1620
+  * cmake: Remove Qt version selection and Qt 5 support
1621
+  * libobs: Assume Qt 6, always warn about Qt 5 plugins
1622
+  * UI: Remove remaining Qt 6 ifdef
1623
+  * CI: Fix Qt XML validator attempting to validate non-XML files
1624
+  * obs-ffmpeg: Fix rendezvous mode with SRT
1625
+  * UI: Avoid QT_TO_UTF8(QTStr()) double conversion
1626
+  * obs-outputs: Enable HDR for HEVC over RTMP
1627
+  * obs-webrtc: Add custom User-Agent and randomize SSRCs
1628
+  * README.rst: Fix GitHub Actions status badge target link
1629
+  * CI: Fix updated workflows using outdated Flatpak actions
1630
+  * README.rst: Fix GitHub Actions status badge
1631
+  * CI: Fix team identifier check in macOS codesigning repository action
1632
+  * UI: Adjust size policy for properties view
1633
+  * CI: Delete legacy build and formatting check scripts
1634
+  * CI: Delete legacy workflows for GitHub Actions
1635
+  * CI: Add new reusable workflows for GitHub Actions
1636
+  * CI: Add new repository actions for GitHub
1637
+  * CI: Add new build and packaging scripts for Linux
1638
+  * CI: Add new build and packaging scripts for macOS
1639
+  * CI: Add zsh-based build framework files for macOS
1640
+  * UI: Fix transform shortcuts for audio only sources
1641
+  * obs-ffmpeg: Fix media source always STATE_ENDED
1642
+  * cmake: Fix missing libobs subdirectories in MSVC code navigator
1643
+  * .git-blame-ignore-revs: Add recent clang-format changes
1644
+  * mac-capture: Set correct default type for application data
1645
+  * UI: Destroy the frontend API after OBS_FRONTEND_EVENT_EXIT
1646
+  * docs: Clarify OBS_FRONTEND_EVENT_EXIT intent
1647
+  * linux-pipewire: Explicitly handle NULL format strings
1648
+  * linux-pipewire: Move portal signal subcription to portal.c
1649
+  * linux-pipewire: Add support for YUY2
1650
+  * linux-pipewire: Add support for async sources
1651
+  * linux-pipewire: Store source when creating streams
1652
+  * linux-pipewire: Extend format_data
1653
+  * linux-pipewire: Factor out format data in a struct
1654
+  * linux-pipewire: Move format info to streams
1655
+  * linux-pipewire: Track streams
1656
+  * linux-pipewire: Separate PipeWire core and streams
1657
+  * cmake: Fix missing space between sentences
1658
+  * libobs-d3d11: Left-pad device PCI ID to 4 characters with zeroes
1659
+  * libobs: Fix PROPVARIANT variable has not be freed
1660
+  * win-wasapi: Fix PROPVARIANT variable has not be freed
1661
+  * docs: Add obs_properties_add_button2
1662
+  * UI: Don't set fragmentation movflags in lossless mode
1663
+  * libobs: Don't defer encoder updates if not necessary
1664
+  * obs-ffmpeg: Fix NVENC VBR maxBitRate set to avgBitrate
1665
+  * UI: Localize font picker window title
1666
+  * mac-capture: Remove internal display settings from SCK Audio Capture
1667
+  * libobs: Export more libobs/util headers
1668
+  * CI: Remove syphon-framework exclude from format script
1669
+  * clang-format: Set AllowShortLambdasOnASingleLine to Inline
1670
+  * clang-format: Set AllowAllConstructorInitializersOnNextLine to false
1671
+  * clang-format: Set AllowAllArgumentsOnNextLine to false
1672
+  * .clang-format: Update and cleanup configuration file
1673
+  * UI: Don't call activateWindow() when hidden
1674
+  * win-dshow: Add support for grayscale MJPEG
1675
+  * linux-v4l2: Add support for grayscale MJPEG
1676
+  * UI, libobs: Add RAII wrappers for faders/volume meters
1677
+  * CI,build-aux: Add Libqrcodegencpp on Linux
1678
+  * cmake: Add finder for Libqrcodengencpp
1679
+  * UI: Disable QSV for simple mode on Linux
1680
+  * obs-qsv11: Add adapter checks for Linux
1681
+  * obs-qsv11: Add a Linux implementation
1682
+  * libobs: Fix back-to-back GPU encoder sessions breaking
1683
+  * obs-ffmpeg: Remove legacy FFmpeg compatibility
1684
+  * win-dshow: Remove legacy FFmpeg compatibility
1685
+  * libobs: Remove legacy FFmpeg compatibility
1686
+  * deps/media-playback: Remove legacy FFmpeg compatibility
1687
+  * deps/libff: Remove legacy FFmpeg compatibility
1688
+  * obs-ffmpeg: Remove outdated comment
1689
+  * libobs/util: Remove outdated comment
1690
+  * UI: Remove Qt 5 ifdef guards and code
1691
+  * obs-qsv11: Fix missing ENABLE_HEVC definition for test executable
1692
+  * obs-filters: Fix legacy CMake obs_status for RNNoise
1693
+  * obs-webrtc: Fix CMake 3.0 module disabled path
1694
+  * obs-webrtc: Fix legacy CMake obs_status call
1695
+  * UI: Fix preprocessor directives for platform integrations
1696
+  * libobs: Fix flip not working with stretch to bounds
1697
+  * UI: Soft-delete scene collections
1698
+  * rtmp-services: Remove defunct servers/services
1699
+  * obs-ffmpeg: Increase initial buffer fullness for VAAPI
1700
+  * win-capture: Enable compatibility data updates by default
1701
+  * docs: Fix macro definitions
1702
+  * UI: Fix crash radio list without items
1703
+  * UI: Fix scenes only multiview label position
1704
+  * updater: Fix updating without patch files
1705
+  * UI: Wait for full vcam deactivation to destroy its view
1706
+  * CI: Update macOS and Windows build scripts for OAuth configs via preset
1707
+  * cmake: Add services preset with OAuth configurations
1708
+  * test-input: Update CMakeLists for updated CMake path
1709
+  * libobs: Add use of pause callbacks to CoreAudio monitoring
1710
+  * libobs: Add pause callback support for sources
1711
+  * docs: Add example for DARRAY as function parameter
1712
+  * obs-qsv11: Remove Windows references from common files
1713
+  * obs-qsv11: Simplify tracking of which allocator is used
1714
+  * obs-qsv11: Avoid overwriting encoding parameters
1715
+  * cmake: Disable char8_t when using C++20
1716
+  * mac-virtualcam: Fix use of collection without explicit type
1717
+  * libobs: Allow configuring frame rate divisor for encoders
1718
+  * mac-capture: Use error code constant instead of magic number
1719
+  * mac-capture: Add button to reactivate stopped capture
1720
+  * mac-capture: Remove unneeded debug log
1721
+  * cmake: Fix copy to rundir in Release and MinSizeRel configurations
1722
+  * UI: Fix utf-8 paths in shared updater components
1723
+  * mac-capture: Mark CoreAudio output capture source as deprecated
1724
+  * rtmp-services: Remove Glimesh service
1725
+  * vlc-video: Define media file array type for function parameter lists
1726
+  * image-source: Define image file array type for function parameter lists
1727
+  * libobs: Define DARRAY macro types
1728
+  * libobs/graphics: Remove undefined function declarations
1729
+  * obs-ffmpeg: Define DARRAY macro type
1730
+  * libobs/graphics: Define DARRAY macro types used in effect
1731
+  * libobs/util: Use defined array types on function parameter lists
1732
+  * libobs/util: Remove unnecessary parentheses
1733
+  * libobs/util: Fix operator precedence in dyamic array macros
1734
+  * mac-capture: Add macOS Audio Capture
1735
+  * mac-capture: Rename 'mac-screen-capture.m'
1736
+  * mac-capture: Refactor macOS Screen Capture
1737
+  * UI: Add logging of Program scene changes in studio mode
1738
+  * cmake: Add flags for reproducible builds on Windows
1739
+  * cmake: Remove ObsPluginHelpers.cmake
1740
+  * cmake: Add support for unobfuscated OAuth secrets
1741
+  * cmake: Fix configuration errors with Windows legacy path
1742
+  * CI: Fix call to base64 on macOS
1743
+  * CI: Update main workflow to enable building with macOS 13 runners
1744
+  * CI: Remove legacy Windows build scripts
1745
+  * CI: Update Windows workflow for updated CMake build system and scripts
1746
+  * CI: Add new Windows build scripts
1747
+  * cmake: Add changes for CMake build framework 3.0
1748
+  * cmake: Add Windows component to CMake build framework 3.0
1749
+  * enc-amf: Update submodule to 2.8.0.1
1750
+  * obs-scripting: Fix python save callback Py_BuildValue
1751
+  * UI: Migrate undo/redo to using UUIDs
1752
+  * libobs: Add scene uuid to transform state data
1753
+  * obs-ffmpeg: Enable GPU scaling for AMF texture encoder
1754
+  * obs-qsv11: Allow GPU scaling for texture QSV encoder
1755
+  * obs-ffmpeg: Allow GPU scaling for obs-nvenc
1756
+  * libobs: Add `obs_encoder_enable_gpu_scaling`
1757
+  * libobs: Fix obs_output_get_height2 returning width
1758
+  * rtmp-services: Enforce encoder settings per protocol
1759
+  * UI: Change surround sound warning to signal YouTube support
1760
+  * mac-capture: Improve various Objective-C code
1761
+  * mac-capture: Fix show hidden windows option
1762
+  * obs-ffmpeg: Fix media source playing when inactive
1763
+  * libobs: Detect and log presence of Lenovo Vantage on Windows
1764
+  * docs: Add versionadded directives for 29.1
1765
+  * UI: Fix icon paths of transition buttons
1766
+  * rtmp-services: Update Vindral servers
1767
+  * CI: Remove Ubuntu 20.04 build
1768
+  * obs-ffmpeg: Prevent media source restart
1769
+  * CI: Update deps to 2023-06-22 release
1770
+  * linux-capture: Remove obsolete property swap_redblue
1771
+  * obs-scripting: Add config file functions
1772
+  * UI: Add ability to reorder filters by drag & drop
1773
+  * libobs: Add functions to get/set the index of filters
1774
+  * UI: Add QDataStream opreators for OBSSource
1775
+  * UI: Disable Ok button in Add Source dialog if no source is selected
1776
+  * UI: Reuse StudioMode.Preview translation for virtual camera config
1777
+  * UI: Translate place holder name for new group
1778
+  * UI: Fix changed state of audio settings
1779
+  * UI: Fix changing quick transition to/from fade to black
1780
+  * UI: Fix checked state of source toolbar menu item
1781
+  * text-freetype2: Fix not updating chat log mode property
1782
+  * docs: Fix param name
1783
+  * UI: Capitalize "Full-Height Docks"
1784
+  * rtmp-services: Update Bilibili Live
1785
+  * obs-filters: Don't compile audio delay code in async-delay-filter
1786
+  * docs: Fix da_push_back return type
1787
+  * libobs-d3d11: Log HAGS driver support and status
1788
+  * cmake: Add separate function to set Xcode-based target properties
1789
+  * cmake: Update Framework link definition for macOS builds
1790
+  * cmake: Remove legacy files for macOS builds
1791
+  * cmake: Remove Info.plist template files for macOS builds
1792
+  * cmake: Update macOS compiler configuration
1793
+  * cmake: Fix CMake policy scopes and add include guards
1794
+  * cmake: Update buildspec and presets for macOS
1795
+  * mac-syphon: Remove unused OBSSyphonKVObserver
1796
+  * mac-capture: Fix wrong CFString to NSNumber cast
1797
+  * mac-capture: Add SCStreamDelegate to stream to log capture errors
1798
+  * libobs: Update version to 29.1.3
1799
+  * obs-ffmpeg: Fix logic in one of the AMF preset fallback checks
1800
+  * cmake: Disable automatic sorting of compiler flags
1801
+  * cmake: Fix truncation warning being treated as an error with Ninja
1802
+  * cmake: Enable suggested default Xcode build settings for macOS builds
1803
+  * cmake: Disable Framework code signing at build time
1804
+  * UI: Fix preventing copy elision of a temporary string object
1805
+  * obs-outputs: Silence all ftl-sdk warnings
1806
+  * obs-outputs: Fix clang warnings about unreachable code
1807
+  * mac-virtualcam: Use explicit access to object members in async block
1808
+  * mac-videotoolbox: Remove unreachable code to fix clang warning
1809
+  * mac-capture: Fix clang warning about unreachable code
1810
+  * obs-scripting: Silence clang warnings about unreachable code
1811
+  * UI: Wrap unreachable code in comment to fix clang warnings
1812
+  * obs-outputs: Silence clang warning about questionable use of comma
1813
+  * libobs: Silence clang warnings for empty prototypes without void
1814
+  * UI: Disable warnings emitted by Qt frameworks
1815
+  * obs-websocket: Update version to 5.2.3
1816
+  * mac-syphon: Remove syphon-framework submodule
1817
+  * mac-syphon: Update Syphon, use obs-deps framework
1818
+  * UI: Move WHIP service to the bottom of the visible list
1819
+  * libobs: Set video thread qos class to user interactive on macOS
1820
+  * libobs: Fix null pointer access for video packets
1821
+  * libobs: Add support to obs-outputs for multi video encoders
1822
+  * Update git-blame-ignore-revs to ignore recent ObjC formatting update
1823
+  * clang-format: Update formatting of all ObjC and ObjC++ files
1824
+  * Update clang-format file for ObjC code
1825
+  * text-freetype2: Improve text/file properties UX
1826
+  * UI: Render preview lines above safe areas
1827
+  * libobs: Fix crash when properties are deleted in callback
1828
+  * UI: Assume RTMP if service has no protocol
1829
+  * updater: Refactor and cleanup
1830
+  * UI: Support PCM in MP4
1831
+  * deps/libff: Add ff_supports_pcm_in_mp4()
1832
+  * linux-pipewire: Skip processing video buffer if import failed
1833
+  * obs-webrtc: Use old obs_output functions
1834
+  * UI: Don't show WHIP in stream settings if the protocol isn't registered
1835
+  * UI: Don't update text source when nothing changed
1836
+  * docs: Clarify da_erase_range
1837
+  * UI: Don't create combobox for radio buttons in properties view
1838
+  * libobs,plugins: Remove new obs_output_*2 functions
1839
+  * UI: Change name of ResetProxyStyleSliders function
1840
+  * deps/obs-scripting: Fix crash removing callbacks in script_unload
1841
+  * libobs: Use da_clear() to clear obs_core_data::sources_to_tick
1842
+  * libobs/util: Add da_clear()
1843
+  * libobs: Don't keep the sources mutex in tick_sources
1844
+  * libobs/util: Actually fix use-after-free in da_insert_new
1845
+  * libobs/util: Fix use-after-free in darray_insert_new
1846
+  * mac-capture: Explicitly set clear background for SCK
1847
+  * More copyright/name updates
1848
+  * rtmp-services: Remove extraneous comma in schema
1849
+  * UI: Enable WHIP service in UI
1850
+  * obs-webrtc: Add WHIP output & service
1851
+  * libobs: Add bearer token to obs_service_connect_info
1852
+  * build-aux: Add libdatachannel and deps to flatpak
1853
+  * CI: Update deps to 2023-06-01 release
1854
+  * rtmp-services: Add Livepeer Studio
1855
+  * UI: Remove move_to_xdg
1856
+  * libobs/util: Do not include SIMDe for MinGW targets
1857
+  * win-capture: Skip compat helper matching if properties are null
1858
+  * win-capture: Add Honkai: Star Rail to compatibility list
1859
+  * win-capture: Render nothing if window is iconic
1860
+  * libobs: Remove duplicate debug symbol paths in Windows
1861
+  * UI: Don't trigger a settings update when list is empty To avoid recursive call
1862
+  * obs-ffmpeg: Consider requested throughput in AMF preset fallback
1863
+  * mac-capture: Use system CGDisplayStream.h header on macOS 14 and newer
1864
+  * mac-capture: Sort SCK application and window lists alphabetically
1865
+  * obs-frontend-api,UI,docs: Add API to add custom docks with no toggle
1866
+  * obs-frontend-api,UI,docs: Add dock API that ask for unique object name
1867
+  * UI: Avoid having two dock with the same object name
1868
+  * UI: allow side docks to be tall
1869
+  * UI: Also toggle mixer toolbar in view menu
1870
+  * obs-ffmpeg: Fix AMF encoder reconfiguration
1871
+  * mac-videotoolbox: Remove encoder sorting
1872
+  * UI: Sort encoders alphabetically
1873
+  * UI: Fix filter shortcuts not showing in context menu
1874
+  * UI: Use main video on the virtual camera if program
1875
+  * docs: Clarify source update_properties signal
1876
+  * libobs: Use static library for version string information
1877
+  * text-freetype2: Fix crash after reaching buffer size
1878
+  * UI: Fix menu actions missing shortcuts
1879
+  * linux-alsa: Make 2 strings translatable
1880
+  * CONTRIBUTING.rst: Update Crowdin guide url
1881
+  * libobs: Update version to 29.1.2
1882
+  * libobs: Remove warning log for raw outputs when starting data capture
1883
+  * mac-virtualcam: Release pixel buffer pool for DAL as well
1884
+  * obs-outputs: Remove support for "RTMP Go Away" feature (#8959)
1885
+  * UI: Fix crash on patronJsonThread
1886
+  * deps/media-playback: Just null the first frame pointer on decode
1887
+  * deps/media-playback: Check `is_active` when frame preloading
1888
+  * deps/media-playback: Fix crash when interrupting stingers
1889
+  * mac-virtualcam: Adjust admin privilege strings to use Apple terminology
1890
+  * UI: Don't use ellipses in permissions window title
1891
+  * UI: Disallow exiting settings with no track in advanced mode
1892
+  * UI: Disallow exiting settings with no track in simple mode
1893
+  * UI: Fix crash when receiving multiple SIGINT
1894
+  * mac-virtualcam: Fix admin password locale string
1895
+  * UI: Move saving of scene tree grid mode
1896
+  * UI: Fix compiling error on Ubuntu
1897
+  * obs-ffmpeg: Add option to disable settings logging
1898
+  * win-dshow: Set audio only active when there is audio
1899
+  * UI: Add scene grid mode to view menu
1900
+  * obs-ffmpeg: Add FFmpeg Options for VA-API
1901
+  * UI: Only defer property updates for input and transition sources
1902
+  * UI: Update display capture toolbar dropdown to use uuid field
1903
+  * mac-capture: Switch to UUID-based display management
1904
+  * libobs,UI: Add properties radio button list
1905
+  * libobs: Add properties list boolean format
1906
+  * libobs, plugins: Deprecate obs_output_t functions with flag parameters
1907
+  * libobs: Fix struct type usage before actual include
1908
+  * mac-virtualcam: Omit enqueue result codes
1909
+  * win-dshow: Remove obsolete translation
1910
+  * win-capture: Remove obsolete translation
1911
+  * obs-qsv11: Add missing translation
1912
+  * obs-outputs: Add missing translations
1913
+  * obs-filters: Remove obsolete translation in expander-filter
1914
+  * obs-filters: Add missing translation in chroma-key-filter
1915
+  * obs-ffmpeg: Add missing translations
1916
+  * obs-ffmpeg: Add missing translations
1917
+  * obs-ffmpeg: Remove obsolete translations
1918
+  * mac-videotoolbox: Remove obsolete translation
1919
+  * mac-syphon: Remove obsolete translations
1920
+  * mac-avcapture: Add missing translation
1921
+  * linux-pulseaudio: Add missing translation
1922
+  * linux-capture: Remove obsolete translation
1923
+  * linux-alsa: Add missing translations
1924
+  * UI: Fix missing translations
1925
+  * CI: Enable GPU priority setting for Windows builds
1926
+  * libobs-d3d11: Set priority to high instead of realtime if HAGS enabled
1927
+  * libobs-d3d11: Refactor set_priority to use included header
1928
+  * libobs: Remove registry-based HAGS logging
1929
+  * libobs-d3d11: Log HAGS status
1930
+  * Update copyrights/names
1931
+  * UI: Fix 0,0 size transform bug when resizing sources
1932
+  * libobs: Prevent setting invalid scene item scale values
1933
+  * libobs: Rework logic for detecting monitoring feedback in PulseAudio
1934
+  * libobs: Fix PulseAudio monitoring when device is set to default
1935
+  * mac-videotoolbox: Fix incorrect keyframe interval calculation
1936
+  * UI: Re-raise missing files dialog on macOS after file is selected
1937
+  * UI: Remove tabs for About error statements
1938
+  * cmake: Remove use of CPack and generate packaging AppleScript directly
1939
+  * CI: Update workflow to support provisioning profiles for macOS
1940
+  * UI: Add support for error messages from the Virtual Camera system
1941
+  * mac-virtualcam: Add Camera Extension to main CMake plugin project
1942
+  * mac-virtualcam: Update obs-plugin to support macOS camera extensions
1943
+  * mac-virtualcam: Add macOS camera extension project
1944
+  * linux-pipewire: Support colour format GS_R10G10B10A2
1945
+  * libobs: Adds obs.hpp to exported header files
1946
+  * .gitignore: Add CMakeUserPresets.json
1947
+  * libobs: Add sanity checks to some obs_output_t functions
1948
+  * build-aux: Replace app-id by id in the Flatpak manifest
1949
+  * build-aux,CI: Add format to Flatpak manifest
1950
+  * build-aux,CI: Split Flatpak manifest in multiple files
1951
+  * UI: Redirect Qt log messages to OBS log
1952
+  * obs-ffmpeg,cmake: Replace external folder by obs-deps headers
1953
+  * obs-scripting: Replace macro with plain C code
1954
+  * obs-outputs: Fix keychain API deprecation warnings on macOS
1955
+  * UI: Add ellipses to menu item triggering user choice (per Apple HIG)
1956
+  * UI: Use native ObjectiveC methods to generate data file paths
1957
+  * libobs: Remove support for deprecated MACH task info struct
1958
+  * libobs: Use native ObjectiveC methods to generate data and module paths
1959
+  * mac-capture: Add option to hide OBS windows in desktop capture
1960
+  * UI: Process Qt events once after destroy queue finishes
1961
+  * UI: Only update vcam output if necessary
1962
+  * UI: Reset VCam when clearing scene data
1963
+  * UI: Clean up disabling simpleFlvTracks
1964
+  * deps/obs-scripting: Set file/chunk name when loading lua scripts
1965
+  * CI: Download Qt5 conditionally on Linux
1966
+  * UI: Fix scene grid mode button color
1967
+  * UI: Normalize theme qss files
1968
+  * .editorconfig: Add theme qss
1969
+  * UI: Fix crash when double-clicking projector
1970
+  * obs-ffmpeg: Fix compilation when ENABLE_HEVC is not set
1971
+  * test: Cover all array_output_serializer functions
1972
+  * libobs: Update version to 29.1.1
1973
+  * UI: Fix crash on macOS when closing OAUTH browser panel
1974
+  * UI: Avoid registering CEF OAuth integrations on Wayland
1975
+  * obs-websocket: Update submodule to pull translations
1976
+  * UI: Exit and show error if clearing scene data fails
1977
+  * libobs: Fix luma sampling for packed 4:2:2 sources
1978
+  * docs: Add missing elements in Services API
1979
+  * mac-syphon: Remove macOS 10.15-only code
1980
+  * UI: Make "Portable Mode" translateable
1981
+  * CI: Update ccache cache entries to enable restoration from master branch
1982
+  * mac-capture: Fix possible division by zero error
1983
+  * UI: Do not show unassigned icon for monitored sources
1984
+  * cmake: Enforce -Wmaybe-uninitialized to never turn into an error
1985
+  * obs-ffmpeg: Show error if trying to use AV1 fallback
1986
+  * UI: Fix FLAC missing from builtin codecs list
1987
+  * UI: Relax mc_trans_video_imagescaler.dll DLL block
1988
+  * UI: Fix case inconsistency in translation key
1989
+
1990
+-------------------------------------------------------------------
1991
 Sat Mar  2 04:53:11 UTC 2024 - Jimmy Berry <jimmy@boombatower.com>
1992
 
1993
 - Disable BuildRequires libmfx as it is unavailable currently.
1994
obs-studio.spec Changed
225
 
1
@@ -1,21 +1,35 @@
2
 
3
 # Chromium Embedded Framework
4
 %ifarch x86_64
5
-%bcond_without cef
6
+%bcond_with cef
7
 %define cef_binary cef_binary_5060_linux64
8
 %else
9
 %bcond_with cef
10
 %endif
11
 
12
-%if 0%{?suse_version} > 1500
13
-%define qt_version 6
14
+%bcond_without websockets
15
+%bcond_with    split_obs_x264
16
+
17
+# 31.0.0~beta1 wants at least 6.1 lets just use 7 straight away
18
+# zypper info --provides $(zypper se -t package -s ffmpeg-7 | awk -F '|' '/devel/ {print $2}') | grep pkgconfig | perl -p -e 's|^\s+pkgconfig\((^\)+)\) = (\S+)|%%global minimum_$1_version $2|g'
19
+%global minimum_libavcodec_version 61.19.100
20
+%global minimum_libavdevice_version 61.3.100
21
+%global minimum_libavfilter_version 10.4.100
22
+%global minimum_libavformat_version 61.7.100
23
+%global minimum_libavutil_version 59.39.100
24
+%global minimum_libpostproc_version 58.3.100
25
+%global minimum_libswresample_version 5.3.100
26
+%global minimum_libswscale_version 8.3.100
27
+
28
+%if 0%{?suse_version} && 0%{?suse_version} < 1600
29
+%global force_gcc_version 13
30
+%global python_version 311
31
 %else
32
-%define qt_version 5
33
+%global python_version 3
34
 %endif
35
-%bcond_without websockets
36
 
37
 Name:           obs-studio
38
-Version:        29.1.3
39
+Version:        31.0.0
40
 Release:        0
41
 Summary:        A recording/broadcasting program
42
 Group:          Productivity/Multimedia/Video/Editors and Convertors
43
@@ -27,17 +41,17 @@
44
 %if %{with cef}
45
 Source17:       %{cef_binary}.tar.bz2
46
 %endif
47
-Patch0:         0002-Include-diverse-luajit.patch
48
 Patch1:         0001-Prefix-modinfo-with-sbin-since-not-in-normal-path.patch
49
-BuildRoot:      %{_tmppath}/%{name}-%{version}-build
50
+Patch2:         libx264-optional.patch
51
+Patch3:         ffmpeg-x11-linking.patch
52
 BuildRequires:  update-desktop-files
53
 BuildRequires:  cmake >= 2.8.12
54
-BuildRequires:  fdk-aac-devel
55
+BuildRequires:  pkgconfig(fdk-aac)
56
 BuildRequires:  fdupes
57
 BuildRequires:  fontconfig-devel
58
 BuildRequires:  freetype2-devel
59
-BuildRequires:  gcc
60
-BuildRequires:  gcc-c++
61
+BuildRequires:  gcc%{?force_gcc_version}
62
+BuildRequires:  gcc%{?force_gcc_version}-c++
63
 BuildRequires:  hicolor-icon-theme
64
 BuildRequires:  libXcomposite-devel
65
 BuildRequires:  libXinerama-devel
66
@@ -47,53 +61,53 @@
67
 BuildRequires:  pciutils-devel
68
 BuildRequires:  pipewire-devel
69
 BuildRequires:  libpulse-devel
70
-%if "%{qt_version}" == "5"
71
-BuildRequires:  libqt5-qtbase-devel >= 5.3
72
-BuildRequires:  libqt5-qtbase-private-headers-devel
73
-BuildRequires:  libqt5-qtsvg-devel
74
-BuildRequires:  libqt5-qtx11extras-devel >= 5.3
75
-%endif
76
-%if "%{qt_version}" == "6"
77
 BuildRequires:  cmake(Qt6Core)
78
 BuildRequires:  cmake(Qt6Svg)
79
 BuildRequires:  qt6-base-private-devel
80
-%endif
81
 BuildRequires:  libudev-devel
82
 BuildRequires:  libv4l-devel
83
+%if %{without split_obs_x264}
84
 BuildRequires:  libx264-devel
85
+%endif
86
 BuildRequires:  mbedtls-devel
87
 BuildRequires:  pipewire-devel
88
 BuildRequires:  pkgconfig
89
 BuildRequires:  pkgconfig(alsa)
90
 BuildRequires:  pkgconfig(jack)
91
-BuildRequires:  pkgconfig(libavcodec)
92
-BuildRequires:  pkgconfig(libavdevice)
93
-BuildRequires:  pkgconfig(libavfilter)
94
-BuildRequires:  pkgconfig(libavformat)
95
-BuildRequires:  pkgconfig(libavutil)
96
+BuildRequires:  pkgconfig(libavcodec)  >= %{minimum_libavcodec_version}
97
+BuildRequires:  pkgconfig(libavdevice) >= %{minimum_libavdevice_version}
98
+BuildRequires:  pkgconfig(libavfilter) >= %{minimum_libavfilter_version}
99
+BuildRequires:  pkgconfig(libavformat) >= %{minimum_libavformat_version}
100
+BuildRequires:  pkgconfig(libavutil)   >= %{minimum_libavutil_version}
101
 %ifarch %{ix86} x86_64
102
 # comment out until resolved: nothing provides pkgconfig(libmfx)
103
 # BuildRequires:  pkgconfig(libmfx)
104
 %endif
105
 BuildRequires:  pkgconfig(librist)
106
-BuildRequires:  pkgconfig(libswresample)
107
-BuildRequires:  pkgconfig(libswscale)
108
+BuildRequires:  pkgconfig(libswresample) >= %{minimum_libswresample_version}
109
+BuildRequires:  pkgconfig(libswscale)    >= %{minimum_libswscale_version}
110
 BuildRequires:  pkgconfig(libva)
111
 BuildRequires:  pkgconfig(lua)
112
 BuildRequires:  pkgconfig(luajit)
113
 BuildRequires:  pkgconfig(srt) >= 1.4
114
 BuildRequires:  pkgconfig(uuid)
115
-%if %{with websockets}
116
+BuildRequires:  pkgconfig(rnnoise)
117
+BuildRequires:  pkgconfig(ffnvcodec) >= 12.1.14.0
118
+BuildRequires:  pkgconfig(vpl)
119
+BuildRequires:  libdatachannel-devel
120
 BuildRequires:  pkgconfig(nlohmann_json) >= 3
121
+%if %{with websockets}
122
 BuildRequires:  pkgconfig(websocketpp) >= 0.8.0
123
 BuildRequires:  pkgconfig(asio) >= 1.12.1
124
+BuildRequires:  pkgconfig(qrcodegencpp)
125
 %endif
126
-BuildRequires:  python3-devel
127
+BuildRequires:  python%{python_version}-devel >= 3.8
128
 %if 0%{?suse_version} != 1315 || 0%{?is_opensuse}
129
 BuildRequires:  speexdsp-devel
130
 %endif
131
 BuildRequires:  sndio-devel
132
 BuildRequires:  swig
133
+BuildRequires:  uthash-devel
134
 BuildRequires:  vlc-devel
135
 %if %{with cef}
136
 BuildRequires:  mozilla-nss
137
@@ -106,6 +120,8 @@
138
 Recommends:     libqt5-qtwayland
139
 ExclusiveArch:  x86_64 aarch64
140
 
141
+Recommends:     obs-studio-x264
142
+
143
 # these are plugins, built as libs and as such should not be mixed up with their originals
144
 %global __provides_exclude_from ^(%{_libdir}/obs-plugins/.*\\.so.*|%{_libdir}/obs-scripting/.*\\.so.*)$
145
 %global __requires_exclude libcef\\.so
146
@@ -113,6 +129,17 @@
147
 %description
148
 Open Broadcaster Software is free and open source software for video recording and live streaming.
149
 
150
+%if %{with split_obs_x264}
151
+%package x264
152
+Summary:        libx264 support for obs-studio
153
+#
154
+Requires:       obs-studio = %{version}-%{release}
155
+%description x264
156
+Open Broadcaster Software is free and open source software for video recording and live streaming.
157
+
158
+This package holds the obs-x264 plugin for obs-studio
159
+%endif
160
+
161
 %package devel
162
 Summary:        A recording/broadcasting program - Development Files
163
 Group:          Development/Multimedia
164
@@ -128,11 +155,16 @@
165
 %endif
166
 
167
 %build
168
+%if 0%{?force_gcc_version}
169
+export CC="gcc-%{?force_gcc_version}"
170
+export CXX="g++-%{?force_gcc_version}"
171
+%endif
172
+
173
 mkdir -p build && cd build
174
 # does not like cmake macro as it fails to link in math.h (-lma
175
 # the compile flags must be relaxed in order to compile obs-studio successfully
176
-export CFLAGS="%{optflags} -Wno-error=type-limits -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wno-error=return-type -Wno-error=unused-but-set-variable -Wno-error=pointer-sign -Wno-error=reorder"
177
-export CXXFLAGS="%{optflags} -Wno-error=type-limits -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wno-error=return-type -Wno-error=unused-but-set-variable -Wno-error=pointer-sign -Wno-error=reorder"
178
+export CFLAGS="%{optflags} -Wno-error=type-limits -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wno-error=return-type -Wno-error=unused-but-set-variable -Wno-error=pointer-sign -Wno-error=reorder -Wno-error=switch -Wno-error=catch-value="
179
+export CXXFLAGS="%{optflags} -Wno-error=type-limits -Wno-error=unused-variable -Wno-error=deprecated-declarations -Wno-error=return-type -Wno-error=unused-but-set-variable -Wno-error=pointer-sign -Wno-error=reorder -Wno-error=switch -Wno-error=catch-value="
180
 
181
 cmake \
182
   -DCMAKE_CXX_STANDARD=17 \
183
@@ -182,19 +214,32 @@
184
 %files
185
 %{_bindir}/obs
186
 %{_bindir}/obs-ffmpeg-mux
187
+%{_bindir}/obs-nvenc-test
188
 # Upstream forces libs dir regardless of arch and building plugins is encumbered
189
 # by moving them to the proper directory.
190
 %{_libdir}/obs-plugins/
191
+%if %{with split_obs_x264}
192
+%exclude %{_libdir}/obs-plugins/obs-x264.so
193
+%endif
194
 %{_libdir}/libobs.so.*
195
 %{_libdir}/libobs-frontend-api.so.*
196
 %{_libdir}/libobs-opengl.so.*
197
 %{_libdir}/libobs-scripting.so.*
198
 %{_libdir}/obs-scripting/
199
 %dir %{_datadir}/metainfo
200
-%{_datadir}/metainfo/com.obsproject.Studio.appdata.xml
201
+%{_datadir}/metainfo/com.obsproject.Studio.metainfo.xml
202
 %{_datadir}/applications/com.obsproject.Studio.desktop
203
 %{_datadir}/icons/hicolor
204
-%{_datadir}/obs
205
+%{_datadir}/obs/
206
+%if %{with split_obs_x264}
207
+%exclude %{_datadir}/obs/obs-x264/
208
+%endif
209
+
210
+%if %{with split_obs_x264}
211
+%files x264
212
+%{_libdir}/obs-plugins/obs-x264.so
213
+%{_datadir}/obs/obs-x264/
214
+%endif
215
 
216
 %files devel
217
 %{_libdir}/libobs.so
218
@@ -204,5 +249,6 @@
219
 %{_libdir}/cmake
220
 %{_libdir}/pkgconfig/libobs.pc
221
 %{_includedir}/obs
222
+%{_libdir}/pkgconfig/obs-frontend-api.pc
223
 
224
 %changelog
225
0002-Include-diverse-luajit.patch Deleted
20
 
1
@@ -1,18 +0,0 @@
2
-Index: b/cmake/Modules/FindLuajit.cmake
3
-===================================================================
4
---- a/cmake/Modules/FindLuajit.cmake
5
-+++ b/cmake/Modules/FindLuajit.cmake
6
-@@ -37,7 +37,12 @@ find_path(
7
-     luajit-2.1
8
-     include/luajit-2.1
9
-     luajit2.1
10
--    include/luajit2.1)
11
-+    include/luajit2.1
12
-+    luajit5.1
13
-+    include/luajit-5_1-2.1
14
-+    moonjit-2.2
15
-+    include/moonjit-2.2
16
-+)
17
- 
18
- find_library(
19
-   LUAJIT_LIB
20
8376.patch Deleted
98
 
1
@@ -1,96 +0,0 @@
2
-From 1603aaf4a2ef16b7aabb3cf330c7b3fde77ad8ca Mon Sep 17 00:00:00 2001
3
-From: pkv <pkv@obsproject.com>
4
-Date: Tue, 28 Feb 2023 17:28:38 +0100
5
-Subject: PATCH obs-ffmpeg: Fix for FFmpeg 6 deprecating a flag
6
-
7
-Also modifies libobs & deps/media-playback.
8
-AV_CODEC_CAP_TRUNCATED was removed in avcodec 60 1.
9
-We ifdef the code depending on it to allow compilation.
10
-
11
-1 avcodec: remove FF_API_FLAG_TRUNCATED
12
-https://github.com/FFmpeg/FFmpeg/commit/3ceffe783965767e62d59e8e68ecd265c98460ec
13
-
14
-Signed-off-by: pkv <pkv@obsproject.com>
15
----
16
- deps/media-playback/media-playback/decode.c | 2 ++
17
- deps/media-playback/media-playback/decode.h | 2 ++
18
- libobs/obs-ffmpeg-compat.h                  | 2 ++
19
- plugins/obs-ffmpeg/obs-ffmpeg-compat.h      | 2 ++
20
- plugins/win-dshow/ffmpeg-decode.c           | 2 ++
21
- 5 files changed, 10 insertions(+)
22
-
23
-diff --git a/deps/media-playback/media-playback/decode.c b/deps/media-playback/media-playback/decode.c
24
-index 05d6afcc649a2..e1aa9aec0577b 100644
25
---- a/deps/media-playback/media-playback/decode.c
26
-+++ b/deps/media-playback/media-playback/decode.c
27
-@@ -230,8 +230,10 @@ bool mp_decode_init(mp_media_t *m, enum AVMediaType type, bool hw)
28
-       d->in_frame = d->sw_frame;
29
-   }
30
- 
31
-+#if LIBAVCODEC_VERSION_MAJOR < 60
32
-   if (d->codec->capabilities & CODEC_CAP_TRUNC)
33
-       d->decoder->flags |= CODEC_FLAG_TRUNC;
34
-+#endif
35
- 
36
-   d->orig_pkt = av_packet_alloc();
37
-   d->pkt = av_packet_alloc();
38
-diff --git a/deps/media-playback/media-playback/decode.h b/deps/media-playback/media-playback/decode.h
39
-index 1ca271b419fbd..6da34061b3dee 100644
40
---- a/deps/media-playback/media-playback/decode.h
41
-+++ b/deps/media-playback/media-playback/decode.h
42
-@@ -37,8 +37,10 @@ extern "C" {
43
- #endif
44
- 
45
- #if LIBAVCODEC_VERSION_MAJOR >= 58
46
-+#if LIBAVCODEC_VERSION_MAJOR < 60
47
- #define CODEC_CAP_TRUNC AV_CODEC_CAP_TRUNCATED
48
- #define CODEC_FLAG_TRUNC AV_CODEC_FLAG_TRUNCATED
49
-+#endif
50
- #else
51
- #define CODEC_CAP_TRUNC CODEC_CAP_TRUNCATED
52
- #define CODEC_FLAG_TRUNC CODEC_FLAG_TRUNCATED
53
-diff --git a/libobs/obs-ffmpeg-compat.h b/libobs/obs-ffmpeg-compat.h
54
-index c4e23b9851242..ad633521e3b0b 100644
55
---- a/libobs/obs-ffmpeg-compat.h
56
-+++ b/libobs/obs-ffmpeg-compat.h
57
-@@ -23,8 +23,10 @@
58
- #endif
59
- 
60
- #if LIBAVCODEC_VERSION_MAJOR >= 58
61
-+#if LIBAVCODEC_VERSION_MAJOR < 60
62
- #define CODEC_CAP_TRUNC AV_CODEC_CAP_TRUNCATED
63
- #define CODEC_FLAG_TRUNC AV_CODEC_FLAG_TRUNCATED
64
-+#endif
65
- #define INPUT_BUFFER_PADDING_SIZE AV_INPUT_BUFFER_PADDING_SIZE
66
- #else
67
- #define CODEC_CAP_TRUNC CODEC_CAP_TRUNCATED
68
-diff --git a/plugins/obs-ffmpeg/obs-ffmpeg-compat.h b/plugins/obs-ffmpeg/obs-ffmpeg-compat.h
69
-index 181167aff383d..39efa00c774b3 100644
70
---- a/plugins/obs-ffmpeg/obs-ffmpeg-compat.h
71
-+++ b/plugins/obs-ffmpeg/obs-ffmpeg-compat.h
72
-@@ -27,8 +27,10 @@
73
- #endif
74
- 
75
- #if LIBAVCODEC_VERSION_MAJOR >= 58
76
-+#if LIBAVCODEC_VERSION_MAJOR < 60
77
- #define CODEC_CAP_TRUNC AV_CODEC_CAP_TRUNCATED
78
- #define CODEC_FLAG_TRUNC AV_CODEC_FLAG_TRUNCATED
79
-+#endif
80
- #define CODEC_FLAG_GLOBAL_H AV_CODEC_FLAG_GLOBAL_HEADER
81
- #else
82
- #define CODEC_CAP_TRUNC CODEC_CAP_TRUNCATED
83
-diff --git a/plugins/win-dshow/ffmpeg-decode.c b/plugins/win-dshow/ffmpeg-decode.c
84
-index d27c98441da15..49df62b7a79f2 100644
85
---- a/plugins/win-dshow/ffmpeg-decode.c
86
-+++ b/plugins/win-dshow/ffmpeg-decode.c
87
-@@ -105,8 +105,10 @@ int ffmpeg_decode_init(struct ffmpeg_decode *decode, enum AVCodecID id,
88
-       return ret;
89
-   }
90
- 
91
-+#if LIBAVCODEC_VERSION_MAJOR < 60
92
-   if (decode->codec->capabilities & CODEC_CAP_TRUNC)
93
-       decode->decoder->flags |= CODEC_FLAG_TRUNC;
94
-+#endif
95
- 
96
-   return 0;
97
- }
98
ffmpeg-x11-linking.patch Added
15
 
1
@@ -0,0 +1,13 @@
2
+diff --git a/plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt b/plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt
3
+index c1f95297f..58835df26 100644
4
+--- a/plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt
5
++++ b/plugins/obs-ffmpeg/ffmpeg-mux/CMakeLists.txt
6
+@@ -11,7 +11,7 @@ target_sources(obs-ffmpeg-mux PRIVATE ffmpeg-mux.c ffmpeg-mux.h)
7
+ 
8
+ target_link_libraries(
9
+   obs-ffmpeg-mux
10
+-  PRIVATE OBS::libobs FFmpeg::avcodec FFmpeg::avutil FFmpeg::avformat $<$<PLATFORM_ID:Windows>:OBS::w32-pthreads>
11
++  PRIVATE OBS::libobs X11::X11 FFmpeg::avcodec FFmpeg::avutil FFmpeg::avformat $<$<PLATFORM_ID:Windows>:OBS::w32-pthreads>
12
+ )
13
+ 
14
+ target_compile_definitions(obs-ffmpeg-mux PRIVATE $<$<BOOL:${ENABLE_FFMPEG_MUX_DEBUG}>:ENABLE_FFMPEG_MUX_DEBUG>)
15
libx264-optional.patch Added
21
 
1
@@ -0,0 +1,19 @@
2
+diff --git a/plugins/obs-x264/CMakeLists.txt b/plugins/obs-x264/CMakeLists.txt
3
+index 958d553c8..59ea67205 100644
4
+--- a/plugins/obs-x264/CMakeLists.txt
5
++++ b/plugins/obs-x264/CMakeLists.txt
6
+@@ -1,7 +1,8 @@
7
+ cmake_minimum_required(VERSION 3.28...3.30)
8
+ 
9
+-find_package(Libx264 REQUIRED)
10
++find_package(Libx264)
11
+ 
12
++if(Libx264_FOUND)
13
+ if(NOT TARGET OBS::opts-parser)
14
+   add_subdirectory("${CMAKE_SOURCE_DIR}/shared/opts-parser" "${CMAKE_BINARY_DIR}/shared/opts-parser")
15
+ endif()
16
+@@ -20,3 +21,4 @@ endif()
17
+ set_target_properties_obs(obs-x264 PROPERTIES FOLDER plugins/obs-x264 PREFIX "")
18
+ 
19
+ include(cmake/x264-test.cmake)
20
++endif()
21
_service Changed
13
 
1
@@ -1,8 +1,10 @@
2
 <services>
3
   <service name="tar_scm" mode="disabled">
4
     <param name="versionformat">@PARENT_TAG@</param>
5
-    <param name="revision">refs/tags/29.1.3</param>
6
+    <param name="revision">31.0.0</param>
7
     <param name="url">https://github.com/obsproject/obs-studio.git</param>
8
+    <param name="versionrewrite-pattern">(\.\d+)-(a-z.*)</param>
9
+    <param name="versionrewrite-replacement">\1~\2</param>
10
     <param name="scm">git</param>
11
     <param name="changesgenerate">enable</param>
12
   </service>
13
_servicedata Changed
10
 
1
@@ -1,6 +1,6 @@
2
 <servicedata>
3
   <service name="tar_scm">
4
     <param name="url">https://github.com/obsproject/obs-studio.git</param>
5
-    <param name="changesrevision">c58e511813c33e93da7637d50aa431ae0cddda0c</param>
6
+    <param name="changesrevision">0b2c85845e20f41c612cfe2583e380bd436b6b3c</param>
7
   </service>
8
 </servicedata>
9
\ No newline at end of file
10
cef_binary_5060_linux64.tar.bz2 Deleted
obs-studio-29.1.3.tar.xz -> obs-studio-31.0.0.tar.xz Changed
Refresh
obs-studio
All the results have state excluded/disabled
Refresh



boombatower

boombatower wrote 4 months ago

hmm, it seems this made all builds unresolveable

Request History
darix's avatar

darix created request 4 months ago

- Update to version 31.0.0:

This is Just a draft request. it doesnt have the CEF support anymore ATM


boombatower's avatar

boombatower accepted request 4 months ago

Thanks a bunch! Splitting out h264 and building on OBS would indeed be nice.