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

14533 Commits

Author SHA1 Message Date
derrod
07aa98ab34 libobs: Remove obs_get_default_rect_effect()
Originally removed in 0.12.1 but "temporarily" brought
back, then never removed.
2024-08-28 19:10:27 -04:00
derrod
1703361dba libobs: Remove obs_{duplicate,free}_encoder_packet
Deprecated in 0.2.4(!) over 10 years(!!) ago.
2024-08-28 19:10:27 -04:00
Ryan Foster
f0d619521b libobs: Fix Windows x86 CMake when using reduced obs-deps package
A recent obs-deps change removed all non-essential x86 deps. This caused
the x86 subproject(s) on Windows to fail to configure due to being
unable to find x86 dependencies that do not exist.

Co-authored-by: PatTheMav <PatTheMav@users.noreply.github.com>
2024-08-28 18:26:47 -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
derrod
8251005ad3 UI: Add migration for relative coordinate system 2024-08-27 23:58:51 +02:00
derrod
f61d0bb3c2 docs: Add new relative positioning scene functions 2024-08-27 23:58:51 +02:00
derrod
ddd586ae03 libobs: Allow scene items to use legacy absolute mode
This is to keep old collections running in relative mode until they
can be migrated.
2024-08-27 23:58:51 +02:00
derrod
1565ca8eb1 libobs: Change scene items to using relative coordinates 2024-08-27 23:58:51 +02:00
derrod
a50320464a libobs: Force sceneitem transform update if scene dimensions change 2024-08-27 23:58:51 +02:00
Exeldro
4cdbbacaff UI: Fix warning color 2024-08-27 13:58:17 -04:00
gxalpha
15e9242acb UI: Add warning to Custom FFmpeg mode 2024-08-25 20:37:46 +02: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
60a45d3aa3 UI: Use std::clamp instead of macro 2024-08-24 16:16:08 -07: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
gxalpha
ec5f499cb3 UI: Inline macOS 13 check 2024-08-23 22:09:48 -04:00
Exeldro
200abd3af0 UI: Force UpdateEditMenu on UI Thread 2024-08-23 21:27:43 -04: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
tt2468
16f0bb68ae libobs: Add OBS_ENCODER_CAP_SCALING
Adds a new encoder cap which tells libobs that rather than scaling
video frames in software, the encoder is capable of scaling them via
its own (presumably more efficient) means.

An encoder may implement this cap by comparing the VOI of its assigned
`video_t` and the results of `obs_encoder_get_width/height()`. If the
width/height values differ, then the encoder is being asked by libobs
to self-scale, and the resolution in VOI will be the raw frame size,
with the `...get_width/height()` being the intended output resolution
of the encoder.

It is important to note that GPU rescaling mode will take priority
over self-scaling. If GPU rescaling is enabled, the encoder will never
be asked to self-scale.

This is useful for discrete hardware encoders, where they might have
fixed-function video scaling logic that is highly efficient and fast.
Additionally, this feature allows a hardware device which is encoding
a full ABR ladder of tracks to be smart and only copy a video frame
from GPU -> Host -> Device once for the entire ladder, rather than
once for every track.
2024-08-23 14:20:53 -04:00
tt2468
92b5643081 libobs: Remove broken rescale modification logic
This logic would previously have written any changed scale resolution
set by the encoder in the `.get_video_info` callback back to the
encoder, however this functionality was "broken" by
20d8779d30. In reality, this would have
never worked with texture encoders or with GPU rescaling enabled, and
probably would have had odd side effects for CPU rescaling, too. It's
best just to remove this functionality.
2024-08-23 14:20:53 -04:00
derrod
d9503d4c27 shared/media-playback: Remove compatibility with FFmpeg < 6.1 2024-08-23 13:44:04 -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
derrod
3ebe071c7b UI: Remove compatibility with FFmpeg < 6.1 2024-08-23 13:44:04 -04:00
derrod
f07004c3b7 libobs: Remove compatibility with FFmpeg < 6.1 2024-08-23 13:44:04 -04:00
derrod
2613b6a6f4 cmake: Do not disable native NVENC in Ubuntu preset 2024-08-23 13:44:04 -04:00
derrod
419c1e4bc1 CI: Update Ubuntu setup/build scripts with 24.04 baseline
- Removes check for 22.10 as 24.04 is now the minimum
- Moves librist and libsrt to default dependencies
- Adds nv-codec-headers for native NVENC
2024-08-23 13:44:04 -04:00
derrod
154f0b549d CI: Update all workflows to Ubuntu 24.04 2024-08-23 13:44:04 -04:00
derrod
834c15e717 UI: Remove legacy Qt workarounds (Ubuntu 22.04) 2024-08-23 13:44:04 -04:00
derrod
b0e1eced04 UI: Remove legacy nlohmann workaround (Ubuntu 22.04) 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
PatTheMav
5eb04cdf9d shared: Improve incremental compile times via explicit file includes
When a source file contains an explicit include with a filename
following the "moc_<actual-filename>.cpp" pattern, then CMake's
AUTOMOC generation tool will recognize the matching pair and generate
the replacement header file and add the required include directory
entries.

For all files which do contain Q_OBJECT or similar declarations but do
not have an explicit include directive, the global mocs_compilation.cpp
file will still be generated (which groups all "missing" generated
headers).

The larger this global file is, the more expensive incremental
compilation will be as this file (and all its contained generated
headers) will be re-generated regardless of whether actual changes
occurred.
2024-08-22 16:45:12 -04:00
PatTheMav
710d99ef4d UI: Improve incremental compile times via explicit file includes
When a source file contains an explicit include with a filename
following the "moc_<actual-filename>.cpp" pattern, then CMake's
AUTOMOC generation tool will recognize the matching pair and generate
the replacement header file and add the required include directory
entries.

For all files which do contain Q_OBJECT or similar declarations but do
not have an explicit include directive, the global mocs_compilation.cpp
file will still be generated (which groups all "missing" generated
headers).

The larger this global file is, the more expensive incremental
compilation will be as this file (and all its contained generated
headers) will be re-generated regardless of whether actual changes
occurred.
2024-08-22 16:45:12 -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
PatTheMav
b825399d48 libobs-d3d11: Remove CMake legacy code path 2024-08-22 15:39:00 -04:00
PatTheMav
2f1379aa64 cmake: Default to modern CMake build system for Windows 2024-08-22 15:39:00 -04:00
derrod
ce3d739f3a UI: Only use preset2 in simple mode for legacy/FFmpeg NVENC 2024-08-22 14:33:22 +02:00
tytan652
9e547d8479 build-aux: Update Flatpak modules
* Update libvpl to version 2.12.0
* Update vpl-gpu-rt to version 24.2.5
  * 24.3 requires VVC from libva which is not the case with the actual
    runtime in use
* Update nv-codec to version 12.2.72.0
2024-08-21 19:38:17 -04:00
derrod
db5b226bb9 obs-nvenc: Only show UHQ tune on supported GPUs 2024-08-21 08:07:25 +02:00
derrod
8758ece291 UI: Remove now unused GetMonitorName for Qt < 6.4 2024-08-20 18:03:37 -04:00
PatTheMav
f82598d10e CI: Add clang-analyze analytics for macOS builds 2024-08-20 17:20:31 -04: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
PatTheMav
5bbb5e08c9 libobs: Add shared interface libraries to shared project directory
The ComPtr, WinHandle, and obfuscate source files are shared with
multiple sub-projects and thus need to be moved into the shared
directory to uncouple their availability from libobs itself.

The same applies to d3d8-api, inject-library, and hook-config
(from win-capture), as well as comutils (from the virtualcam-module).
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
PatTheMav
c89cef3aa5 cmake: Fix malformed CMake package location on Windows
CMake doesn't expect CMake package files to be separated in
subdirectories on Windows and instead expects all files to be put in
a single directory `cmake` found within one of the PREFIX paths.

Also fixes circular dependency in w32-pthreads CMake package config
file.
2024-08-20 14:48:08 -04:00
EBK21
117ee9cf44 win-update: Use correct winhttp proxy type
Legacy one does not provide correct result on some setups, use new one on 10+ .
2024-08-19 13:25:33 +02:00