- Update nv-codec to n13.0.19.0
- Update FFmpeg to 8.1
- Update qrcodegen-cmake to v1.8.0-cmake4
- Update libdatachannel to v0.24.2
- Update plog to version 1.1.11
- Update Qt to 6.11.1
- Update libvpl to version 2.16.0
- Update vpl-grpu-rt to version 26.1.5
- Update ECM to version 6.26.0
The Qt components are from the same repo as other dependencies.
The KDE Platform was never a good fit for OBS Studio for multiple
reasons:
- Life cycle too short and misaligned with OBS Studio causing users to
get EOL notification too often.
- Third-party Qt plugins were allowed which could change Qt's behavior.
- KDE exclusives sandboxed holes were inherited.
To reduce compile time and prepare for aarch64 support, dependencies
compilation except CEF is moved to a BuildStream project junctionned
with Freedesktop SDK.
The BuildStream project is configured to build dependencies in a
Flatpak-like environment.
SIMD Everywhere finder needs to be installed alongside libobs CMake
package since its headers depends on it.
C++ cmath header is included on Windows on ARM to ensure that all math
functions are correctly defined when included in C++ code.
https://github.com/simd-everywhere/simde/issues/1304
macOS intrinsics is included to make sure that no redefinition error
happens.
The CEF module is also modified to:
- Use the pre-built wrapper included in the tarball
- Preserve debug symbols inside its binaries
- The copy done later by OBS Studio build-system will be split from
its debug symbols
Since the Flatpak became part of the repo, nothing has changed on
BlackMagic side.
DeckLink libraries are still not redistributable and without stable
download link so even extra-data is not usable.
This makes enabling DeckLink feature in the Flatpak impossible without
involving customization on the end-user side which is not how Flatpak is
designed for.
This new runtime version relies on Freedesktop SDK 23.08.
Disable PipeWire module since Freedesktop SDK 23.08 provides a more
recent version of PipeWire.
Intel Media SDK is patch to support being compiled with more recent
version of GCC
QuickSync requires oneVPL, which is unable to find its libraries in the
Flatpak, resulting in MFX_ERR_NOT_FOUND and the encoders not working.
The libraries are present in the install prefix (/app/lib), which is
currently not automatically added to the search paths, see the issue
https://github.com/intel/libvpl/issues/119 for details. For now,
work around the issue by setting ONEVPL_SEARCH_PATH explicitly.
When configuring SCTP we set the following options
* build_program=OFF. Don't build example programs
* inet/inet6=OFF. IP connectivity isn't required since SCTP
is used via WebRTC
* werror=OFF. Don't treat warnings as error when building
* enable PIC so SCTP can be used as a shared library.
Signed-off-by: pkv <pkv@obsproject.com>