0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-19 20:32:15 +02:00
Commit Graph

4790 Commits

Author SHA1 Message Date
PatTheMav
f9f974fe7b cmake: Update use of MbedTLS to support update to version 3.6.0
MbedTLS changed a lot of internals with their LTS version 3.6.0, which
are incompatible with the find module currently shipped with
OBS Studio.

The solution requires several changes to be applied at once:

* Rename the generated target name to MbedTLS::mbedtls to match the
  name used by MbedTLS' own CMake package
* Update find module to use the updated target name(s)
* Set CMAKE_FIND_PACKAGE_PREFER_CONFIG to TRUE before trying to find
  MbedTLS to ensure that CMake package files are used with priority
  (Those are shipped only with MbedTLS 3.6.0 in obs-deps).
* A deprecation warning is emitted if the find module is used with
  MbedTLS 3.6.0 available
2024-09-13 18:30:42 -04:00
Kurt Kartaltepe
2ecf2c802c obs-qsv11: Initialize allocator response
We check that mids is a nullptr which may not be the case if this
remains uninitialized. Earlier attempt to fix this assumed we faulted on
the response itself.

fixes #11221
2024-09-13 16:27:02 -04:00
Gale, Thy-Lan
53853df33a obs-qsv11: Add AV1 Screen Content Tools 2024-09-13 15:23:35 -04:00
PatTheMav
6c590805e8 cmake: Update supported CMake version range to 3.28 and 3.30 2024-09-13 14:42:32 -04:00
Exeldro
7a35d7c549 obs-ffmpeg: Add logging of audio track 2024-09-12 18:07:19 -04:00
jcm
552a88a895 mac-virtualcam: Compare camera UUIDs using CFUUID 2024-09-12 17:21:12 -04:00
Fabien Lavocat
8b31c487ba rtmp-services: Remove outdated Dolby Millicast locations 2024-09-12 15:13:16 -04:00
gxalpha
922e2cc151 cmake: Remove remaining cmake-format comments
cmake-format was replaced with gersemi in
19d3e30a3a. As such, these comments no
longer have any effect.
2024-09-12 14:20:28 -04:00
Paul Gregoire
62c4a90809 obs-webrtc: Add STUN support to Link header parse 2024-09-11 13:55:54 -04:00
tytan652
31385006d5 Remove legacy_check CMake macro
The macro was not removed in 72428ccd97
waiting for submodules to be be updated to a commit where their legacy
code path is removed.
2024-09-11 13:24:39 -04:00
Norihiro Kamae
e87593b3d4 obs-nvenc: Fix reading uninitialized variable 2024-09-11 13:02:58 -04:00
derrod
e25a8b3a4f obs-nvenc: Check if device index in settings object is actually set 2024-09-10 18:50:49 -04:00
derrod
4b0777a303 obs-nvenc: Support new error code for too many sessions
At some point NVIDIA started using NV_ENC_ERR_INCOMPATIBLE_CLIENT_KEY
instead of NV_ENC_ERR_OUT_OF_MEMORY to signal that the session limit
has been exceeded.
2024-09-10 17:51:34 -04:00
pkv
de2e42b231 nv-filters: Remove unused flag in cmake
This removes the HAS_NOISEREDUCTION flag which is not used in this
plugin.

Signed-off-by: pkv <pkv@obsproject.com>
2024-09-10 14:50:46 -04:00
pkv
7fdcb166b4 obs-filters: Fix building of noise reduction
If speex and rnnoise are disabled but nvafx is enabled, the noise
reduction filter still needs to be built. This fixes the issue.

Co-authored-by: Ryan Foster <ryan@obsproject.com>
Signed-off-by: pkv <pkv@obsproject.com>
2024-09-10 14:50:46 -04:00
Gale, Thy-Lan
9f4f2e9754 obs-qsv11: Fix CBR Spike 2024-09-10 14:13:29 -04:00
Scott Cooper
dfe6151465 win-capture: Fix segfault when calling data.free()
data.free should be checked before calling.
2024-09-07 16:09:03 -07:00
Alex Luccisano
e11d206da8 rtmp-services: Refactor Twitch/Amazon IVS support
Separate the commonly used functions into service-ingest.c/h.
Split the Amazon IVS support out of the Twitch specific files
and into the new amazon-ivs.c/h files. This allows for clean
usage of `struct ingest` between the two services.
2024-09-06 13:40:07 -04:00
Ruwen Hahn
fc60ca63dc rtmp-services: Add Amazon IVS auto server entries 2024-09-06 13:40:07 -04:00
Ruwen Hahn
6fbb06d1c2 rtmp-services: Load Twitch/Amazon IVS rtmps URLs when refreshing 2024-09-06 13:40:07 -04:00
Ruwen Hahn
6440a60d1d rtmp-services: Add Amazon IVS ingest refresh infrastructure 2024-09-06 13:40:07 -04:00
Ruwen Hahn
717161f246 rtmp-services: Extract Twitch specific info from ingest update code 2024-09-06 13:40:07 -04:00
Ruwen Hahn
b029ebfdc2 rtmp-services: Add more granular Amazon IVS service servers 2024-09-06 13:40:07 -04:00
Ryan Foster
f5646c6aaf obs-websocket: Update version to 5.5.3
Changes:
- Remove legacy CMake
- Fix various build issues

Changelog:
a73c92788d
2024-09-05 15:45:31 -04:00
Lain
a1db1e8482 win-capture: Fix display capture capturing on create
Prevents Display capture from capturing the first display on creation.
This issue is due to the properties view combo box automatically
selecting the first item in the list by default, but this needs explicit
text anyway to indicate display, so this adds a "[Select a display]"
item that will prevent that from happening and tell the user to select a
display.
2024-09-03 13:28:29 -07:00
Lain
e9c8e10729 win-capture: Fix window capture capturing random windows
This is due to the property view widget not having an item to select, so
it selects the first one, but we want to have specific text for this
anyway, so changing it here is still appropriate. (I don't want to touch
the properties view widget right now for the sake of my sanity)
2024-09-03 13:28:29 -07:00
Lain
9107b90fb3 linux-capture: Fix xshm capturing first display on creation
Like xcomposite, this was programmed to select the first display by
default. Change it to not capture any display unless explicitly selected
by the user.
2024-09-03 13:28:18 -07:00
Lain
dd64fef084 linux-capture: Fix xcomp capturing random windows
There are two situations where xcomposite window capture will capture
random windows: on first creation, and when going to the properties when
the current window is invalid. The first happens because for whatever
reason someone decided to just make it capture the first top-level
window if there is no set value. The second happens because the
properties widget cannot find the value it's looking for and defaults to
the first one when the properties are opened, thus selecting and
capturing the first window in the list (which is probably something we
should fix in the properties view at some point but I don't want to dive
into code that's even *more* cursed than xcomposite code right now)

I think that this was a major oversight and that whoever wrote it
however many countless years ago did not realize that this is something
that maybe users don't want to have happen.

So instead, this diff makes it so that on first creation, it creates a
value that says "[Select a window to capture]" that keeps the capture
inactive until a user actually chooses a window rather than the
top-level window. It also makes it so that if the user has a window that
is no longer valid, it will keep that window in the list and as the
currently selected value, which prevents it from automatically selecting
the first window in the list when properties are opened.

(Have I mentioned xcomposite is cursed? Trying to debug xcomposite code
in a debugger freezes my window compositor and forces me to do a hard
restart of my entire computer, so I was forced to use printf debugging.
Absolute nightmare-inducing code in here.)
2024-09-03 13:28:18 -07:00
Lain
c36575774b linux-capture: Add xcomp func for comparing encoded window IDs
This is cursed. Window ID storage for xcomposite capture is absolutely
cursed. It should not be storing the window handle with this. I'm pretty
sure that whoever wrote it at the time decided to store the god-forsaken
window handle (which does not persist after the window closes) as part
of the ID because they were afraid it might capture the wrong window if
they close OBS and open it up again while the window still exists.

Again, xcomposite capture is absolutely cursed.
2024-09-03 13:28:18 -07:00
Lain
74e49272ba linux-capture: Fix potential null pointer dereference
I'm not happy.
2024-09-03 13:28:18 -07:00
Lain
4d7bc233d7 linux-capture: Move xcomp window ID decoding to its own func
Moves the window handle/name/class decoding code out of the
xcb_find_window() function and into its own dedicated function so it can
be used elsewhere. This s*** is cursed.
2024-09-03 13:28:18 -07:00
Lain
c837d3b533 linux-capture: Set xcomposite capture retry interval to 2sec
Half a second was a bit too often and was spamming the debug logging
when a window wasn't found.
2024-09-03 13:28:18 -07:00
Ryan Foster
16011f7c29 obs-browser: Update version to 2.24.2
98d94a4 - Enable Qt message loop on Linux
8e2b31f - Set the right Ozone platform on Linux
6451941 - Wait on shutdown for docks to close on Linux
174e6a8 - Remove CMake legacy code path
e4e523d - Update version to 2.24.2
2024-08-30 18:29:57 -04:00
Ryan Foster
cba6ed40d2 win-dshow: Fix CMake preventing Virtual Camera from working
The code prior to this change would never add virtualcam.c to the
win-dshow target, which resulted in the virtualcam_output not being
registered and thus Virtual Camera not working.

Co-authored-by: PatTheMav <PatTheMav@users.noreply.github.com>
2024-08-28 18:10:08 -04:00
tytan652
72428ccd97 Remove CMake legacy code path
Except submodules and legacy_check macro since the former depend on it.
2024-08-28 13:53:25 -04:00
gxalpha
92d5b45a50 mac-capture: Remove disp_finished event
This event is only used within destroy_[audio]_screen_stream, and does
not appear to be necessary there. stopCaptureWithCompletionHandler holds
a reference to the SCStream object by itself (and the other objects
being held aren't used afterwards anyways), so there should be no harm
in releasing everything immediately without blocking.
2024-08-25 10:17:06 +10:00
Norihiro Kamae
15038232c5 obs-ffmpeg: Remove unexisting class name declaration
The class `Logger` was declared but it is never defined nor used.
2024-08-24 16:12:12 -07:00
Michael Gillett
14f44dfe06 rtmp-services: Add NFHS Network 2024-08-23 16:31:41 -04:00
pkv
f9bf7e6c00 obs-filters: Add NVIDIA Blur Filter & Background Blur
This adds a Background Blur filter which blurs the background for a
foreground speaker identified by NVIDIA AI Greenscreen FX.
Secondly, this adds a Blur filter based on NVIDIA Video Effects,
leveraging the Background Blur Filter where the mask used just sets the
whole frame as background.

Signed-off-by: pkv <pkv@obsproject.com>
2024-08-23 15:19:38 -04:00
derrod
489f050faf win-dshow: Remove compatibility with FFmpeg < 6.1 2024-08-23 13:44:04 -04:00
derrod
baa1e1dc35 obs-ffmpeg: Remove compatibility with FFmpeg < 6.1 2024-08-23 13:44:04 -04:00
Len
f96cf354e6 rtmp-services: Remove Hakuna Live RTMP service 2024-08-22 20:33:50 -04:00
Ryan Foster
9870cfe77b rtmp-services: Update package.json version 2024-08-22 16:51:13 -04:00
LightcastMediaCloud
ab6ecde20f rtmp-services: Update Lightcast.com to Premium CDN
Incremented Version

Update services.json

Updated Lightcast.com to new Premium CDN
2024-08-22 16:18:33 -04:00
PatTheMav
46b5f7e6d0 plugins: Remove CMake legacy code paths for Windows modules 2024-08-22 15:39:00 -04:00
derrod
db5b226bb9 obs-nvenc: Only show UHQ tune on supported GPUs 2024-08-21 08:07:25 +02:00
PatTheMav
af2aa9b6ff shared: Remove shared interface libraries from their original locations 2024-08-20 16:00:21 -04:00
PatTheMav
d81fcd70e0 cmake: Update cross-platform build project management for Windows
Enables creation of x64 and x86 child projects when building on ARM64
and decouples functionality from legacy_check function
2024-08-20 16:00:21 -04:00
gxalpha
f2b5a01a88 cmake: Remove WITH_MESSAGE from obs-qsv11 2024-08-20 15:22:15 -04:00
derrod
3312c2567d obs-nvenc: Fix nvenc availability check always returning true 2024-08-18 22:30:44 -07:00