Commit Graph
14351 Commits
Author SHA1 Message Date
derrod dd3ffc1e34 obs-outputs: Defer muxer destruction to task queue 2024-08-11 05:06:16 +02:00
cg2121 89554112c1 UI: Cleanup frontend event handling
This adds a function to OBSBasic to call on_event, so every
time a event is called, the api variable doesn't have to be
checked everytime.
2024-08-10 17:35:22 -07:00
cg2121 0306effc5f UI: Add pragma once to ScreenshotObj header
Makes sure header is only included once preventing code clashes.
2024-08-11 09:53:34 +10:00
derrod 83528fba2c obs-nvenc: Improve logging for custom options 2024-08-10 16:53:18 -07:00
jcm 66ff8cb6d3 libobs: Always explicitly check modifiers in macOS hotkey event handler 2024-08-11 09:44:28 +10:00
pkv 1451554fb8 obs-ffmpeg: Fix SRT listener bug
Fixes #10504.
There was a bug in FFmpeg implementation which was hidden by a bug in
libsrt; it was fixed in a recent commit [1].
When we ported FFmpeg libsrt.c to obs, we brought the said bug along.
When starting an SRT stream in listener mode, if no connection is made
by a client, there were two issues:
- 1) obs was stuck into a connecting loop,
- 2) the socket was not closed when exiting OBS.
This fixes the issue so that SRT is displaying that a stream started
when in listener mode even if NO client is connected.
This is the correct behaviour for a listener.
The stream now closes properly.

[1] https://git.videolan.org/?p=ffmpeg.git;a=commit;h=87677c2195e86b126c3438439a05d0a46ae5bb50
Signed-off-by: pkv <pkv@obsproject.com>
2024-08-10 01:54:27 -07:00
Lain e8f87e4196 Merge pull request #10536 from derrod/nvenc-rework
NVENC Refactor
2024-08-08 17:00:10 -07:00
derrod feba2bcbf9 UI: Use new NVENC encoder ids 2024-08-08 22:52:40 +02:00
derrod 6e435dbe2e cmake: Update ubuntu preset with NVENC changes 2024-08-08 22:52:40 +02:00
derrod 911a49070b obs-nvenc: Add new NVENC plugin 2024-08-08 22:52:40 +02:00
derrod af555b9372 obs-ffmpeg: Remove native/disable FFmpeg NVENC 2024-08-08 22:52:40 +02:00
pkv 00c495b203 obs-filters: Move NVIDIA filters in their own project
This commit does the following:
1. Factor out NVIDIA Audio Effects from Noise Suppression filter.
2. Move NVIDIA Audio Effects to a new filter in a new nv-filters
project.
3. Migrate Noise Suppression filter settings to the new filter when
NVIDIA Audio effects were used.
4. Migrate NVIDIA AI Greenscreen to the new nv-filters project for
easier maintainance of all NVIDIA Maxine effects.

Context:
 Currently, the three NVIDIA Audio Effects (noise suppression, room
echo removal, noise suppression + room echo removal combined) are part
of the noise suppression filter.
Historically, it's because a lot of code was shared between speex,
rnnoise & NVIDIA noise suppression.
But the NVIDIA code has become bulkier & cumbersome due to:
- addition of other effects;
- addition of a deferred loading thread.
The factorisation makes the code very difficult to maintain for
(un)readability reasons.
This will make it easier to add other audio effects, should we wish to.
Developers life will be easier too when debugging.
The code has been reorganized and comments added.
I also added a mutex in the process_fx function to avoid a crash when
swapping effects.

Signed-off-by: pkv <pkv@obsproject.com>
2024-08-08 15:53:52 -04:00
Norihiro Kamae 37b40184a0 shared/obs-scripting: Add inline qualifiers to functions in header file 2024-08-07 17:27:49 -04:00
Norihiro Kamae 84b321e95e UI: Remove unused static-inline function 2024-08-07 17:27:49 -04:00
Norihiro Kamae 5dd97b3688 libobs-opengl: Remove unused static-inline function 2024-08-07 17:27:49 -04:00
Norihiro Kamae 9a9975890e libobs/callback: Remove unused static-inline function 2024-08-07 17:27:49 -04:00
Norihiro Kamae 4837a3417f libobs/util: Remove unused static-inline function
The commit 862f16285f commented the function out and the function became
unused.
2024-08-07 17:27:49 -04:00
Norihiro Kamae d76f4b3aad libobs: Remove unused static-inline functions 2024-08-07 17:27:49 -04:00
Norihiro Kamae 71736ffb7d libobs/graphics: Add inline qualifier to functions in header files 2024-08-07 17:27:49 -04:00
Norihiro Kamae 123231c97c text-freetype2: Move static function declarations from header file 2024-08-07 17:27:49 -04:00
Norihiro Kamae bec9f0c544 obs-x264: Remove unused function 2024-08-07 17:27:49 -04:00
Norihiro Kamae 384a5e7f30 obs-qsv11: Remove unused functions 2024-08-07 17:27:49 -04:00
Norihiro Kamae 6532be4140 obs-outputs: Remove unused functions on non-Windows
Also adjusted mixed usage of `#if defined` and `#ifdef`.
2024-08-07 17:27:49 -04:00
Norihiro Kamae d2971d1aaa obs-filters: Remove unused functions when NvAFX is disabled 2024-08-07 17:27:49 -04:00
Norihiro Kamae e9c440401c obs-ffmpeg: Resolve unused-function warnings 2024-08-07 17:27:49 -04:00
Norihiro Kamae f811903e4f linux-pipewire: Remove unused function 2024-08-07 17:27:49 -04:00
Norihiro Kamae 82466751ea linux-alsa: Remove unused function declaration 2024-08-07 17:27:49 -04:00
derrod 95a753b9d8 libobs: Fix buffer overrun in os_wcs_to_utf8() 2024-08-06 08:34:24 -07:00
Florian Zwoch e36352dadd libobs/util: Fix potential memory error in text parser
Fixes memory access when parsing '#' comment tokens when the file
immediately was EOF after this token.
2024-08-06 07:20:32 -07:00
Kurt Kartaltepe 15ec21106a obs-qsv11: Check for null response on free
During destruction of the QSV_Encoder_Internal the response may not be
initialized and we can segfault. Add a check for this similar to the
Windows implementation.
2024-08-05 20:28:07 -04:00
derrod 6d20327bbc UI: Rename existing (corrupt) collection file if loading fails 2024-08-05 20:07:38 -04:00
derrod c723b3ba04 UI: Ensure collection name is set before creating default scene 2024-08-05 20:07:38 -04:00
jcm b0faf38a76 mac-virtualcam: Improve 'not found' error message 2024-08-05 19:36:05 -04:00
tytan652 3b266fec22 UI,docs: Send a custom event to the dock widget when closing 2024-08-04 10:18:59 +10:00
Norihiro Kamae 58a8d79be1 UI: Remove min and max macro workaround 2024-08-03 16:57:17 -07:00
Norihiro Kamae edf753b31e obs-vst: Remove min and max macro workaround 2024-08-03 16:57:17 -07:00
tt2468andpkviet 7b2a6351b0 shared/media-playback: Unref sw_frame before reuse
By not performing an unref on sw_frame before using it again, a memory
"leak" was being created if the frame had side data. This removes a
previously-added check that optionally unrefs sw_frame, and just does
it every tick.

Co-authored-by: pkviet <pkv@obsproject.com>
2024-08-03 16:31:02 -07:00
pkv 19abab097d UI: Fix leak with paint event of volume slider
This fixes a memory leak introduced in [1] where a new QColor is not
balanced by a delete.

[1] UI: Update volume meter appearance
https://github.com/obsproject/obs-studio/commit/52ae5fc4bd518c67edd8ab94121ace05d9076892

Signed-off-by: pkv <pkv@obsproject.com>
2024-08-03 16:27:17 -07:00
jcm ff2fa24dc2 mac-virtualcam: Update NotInstalled error text for macOS 15 2024-07-31 16:29:21 -04:00
Matt Gajownik 8b975c4563 obs-browser: Update version to 2.24.0
2a2879b - Update translations from Crowdin
07255f1 - Enable building with CEF 5938 on macOS
5db6494 - Enable building with CEF 6261
5db6494 - Enable building with CEF 6261
879a9d2 - Enable building with CEF 6367
2024-07-31 20:45:50 +10:00
Ruwen Hahn b2d83efcf3 obs-ffmpeg: Disable AMF DTS adjustment for AV1 2024-07-30 11:10:47 -04:00
Ruwen Hahn e7bf19d139 obs-ffmpeg: Disable NVENC DTS adjustment for AV1 2024-07-30 11:10:47 -04:00
Amin.MasterkinG 1aa4bd9fc7 rtmp-services: Update MasterStream.iR ingest
https://github.com/obsproject/obs-studio/pull/10978
https://github.com/obsproject/obs-studio/pull/11044
2024-07-30 10:07:02 -04:00
gxalpha 4bbf8df2ba cmake: Set CFBundleDisplayName for camera extension
macOS shows this in the settings so we should set it, otherwise it will
fall back on the identifier which isn't great for users.
2024-07-29 23:28:38 -04:00
tytan652 5e5865b716 frontend-tools: Avoid initializing the scene switcher on Wayland
The Linux implementation of the automatic scene switcher is X11-only and
the design itself of the feature is incompatible with how Wayland works.
2024-07-29 22:26:15 -04:00
derrod e12ef51068 UI: Return std::optional from ParseThemeMeta 2024-07-29 19:52:42 -04:00
Paul Hindt 4d5e0e89ad aja: Add v210 pixel format support.
Allow selecting v210 in AJA capture plugin.

Enable auto-detection of SDI v210 pixel format.
2024-07-29 19:26:49 -04:00
derrod f6097cacfb UI: Remove legacy migrations 2024-07-29 18:54:01 -04:00
tytan652 7d578c5cfb plugins: Enable QSV only on x86_64 architecture
Intel stack is only completely buildable on x86_64 architectures.
2024-07-29 18:11:29 -04:00
tytan652 8480660bf8 cmake: Add architecture support to add_obs_plugin
Also add formatting support to the function
2024-07-29 18:11:29 -04:00