0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 13:08:50 +02:00
Commit Graph

287 Commits

Author SHA1 Message Date
derrod
3c41697b42 CI: Update Steam workflow for Apple Silicon builds 2022-08-03 03:34:49 +02:00
Ryan Foster
d39d5f3712 CI: Fix packaging scripts
On CI, do not fetch tags in packaging scripts. For some reason, the
checkout action seems to locally update any new git tags on the runner:

t [tag update]   (commit-hash) -> tag-name

This causes future calls to fetch git tags to fail on CI with:

! [rejected]   tag-name -> tag-name  (would clobber existing tag)

To avoid this, we can simply not fetch tags a second time on CI.

Additionally, fix the Windows Installer job.
2022-08-01 21:38:56 -04:00
cg2121
67f7a84076 CI: Change build file names
This makes the build names with each OS consistent with each other.
2022-08-01 13:15:51 -04:00
Ryan Foster
b4e056f39d CI: Use Qt6 by default when available 2022-07-31 13:45:57 -04:00
tytan652
87682e8276 flatpak: Change obs-deps tag to 2022-07-29
2022-07-28 was removed.
2022-07-31 10:15:02 -03:00
tytan652
056bd1aee0 flatpak: Avoid cleaning PipeWire and FFmpeg headers
Plugins could happen to build against them.
2022-07-31 08:37:45 -03:00
tytan652
a2a3cb2288 flatpak: Update deps based on obs-deps 2022-07-28
* x264: Updated to the same commit as obs-deps
* srt: Updated to 1.5.0
* mbedtls: Updated to 3.2.1
* librist: Updated to the same commit as obs-deps
* aom: Updated to 3.4.0
* svt-av1: Updated to 1.1.0
* ffmpeg: Updated to the same commit and patches as obs-deps
* luajit: Updated to the same commit as obs-deps
2022-07-31 08:37:45 -03:00
tytan652
2d9c1624c1 flatpak: Update KDE Runtime to version 6.3 2022-07-31 08:37:45 -03:00
Ryan Foster
59e91c7c58 CI: Fix Linux package filename version
In .github/workflows/main.yml, for the linux_build job, the variable
BUILD_FOR_DISTRIBUTION is set to the string "true" or "false" on CI.
Later, in CI/linux/03_package_obs.sh, we perform a boolean check on
this variable. However, "false" will evaluate as true, because it is a
non-null string. This was causing CI Linux packages to always build as
if BUILD_FOR_DISTRIBUTION was enabled, which caused the git commit hash
to be omitted from package filenames.

Since we know the expected values, let's just test directly if the
variable equals "true" to get the expected behavior.
2022-07-31 10:24:36 +10:00
CarrotCodes
ba1b5fcaea CI: Fix Sparkle cache location for local macOS CI build 2022-07-31 09:48:57 +10:00
Matt Gajownik
577b11ede4 CI: Bump CEF from 4638 (95) to 5060 (103) 2022-07-31 09:46:44 +10:00
Norihiro Kamae
8af6b79044 CI: Use xcrun notarytool instead of xcnotary
xcnotary was discontinued since Apple now provides `xcrun notarytool`.
This commit used `xcrun notarytool` to notarize the package.
2022-07-30 19:52:36 +02:00
PatTheMav
48091adc04 CI: Add Invoke-External functions for Powershell
Forward-port from obs-plugintemplate to restore cmake output during
the configuration step.
2022-07-30 18:04:15 +02:00
pkv
21621e5f5e
CI: Disable new mpegts output for linux
Support of the new mpegts output would require manual compilation of
librist & libsrt libs.
CI on ubuntu hasn't been updated so disable the new mpegts output for
now.

Signed-off-by: pkv <pkv@obsproject.com>
2022-07-30 17:03:20 +02:00
tt2468
a196fc7824 plugins: Add obs-websocket submodule
Adds obs-websocket as a submodule, to be included in future releases of
OBS Studio by default.
2022-07-28 12:36:17 -07:00
Ryan Foster
81bd1d42f0 CI: Use VS2022 and clang-format 13
Switch to Visual Studio 2022 and clang-format 13.

The Ubuntu 22.04 image currently has clang-format 12.0.1, 13.0.1, and
14.0.0. VS2022 17.2 ships clang-format 13.0.1, so let's use that for now
until VS2022 17.3 is available with clang-format 14.

This commit also makes the necessary changes to allow the clang-format
check to pass.

This commit also updates the obs-browser submodules with the necessary
changes.
2022-07-27 11:09:59 -04:00
Ryan Foster
8514c6c1e2 CI: Fix clang-format if path has spaces
If the path to clang-format has spaces, as might occur when testing
locally with a version not covered in this script, it will fail. Enclose
the call to clang-format in quotes to prevent this failure.
2022-07-26 22:36:13 -04:00
Matt Gajownik
a7c3d94e4c obs-vst: Remove submodule in favour of direct merge 2/2
Please visit the submodule repo for blame history:
https://github.com/obsproject/obs-vst

This also replaces the obs-vst .clang-format with obs-studio's.

This commit depends on the previous commit, which removes the submodule
separately as Git complains otherwise.

Co-authored-by: Alex Anderson <anderson.john.alexander@gmail.com>
Co-authored-by: Anton <camotank12345@gmail.com>
Co-authored-by: Blue Cat Audio <support@bluecataudio.com>
Co-authored-by: Cephas Reis <c3r1c3@nevermindonline.com>
Co-authored-by: Colin Edwards <colin@recursivepenguin.com>
Co-authored-by: Florian Zwoch <fzwoch@gmail.com>
Co-authored-by: Fogmoon <i@fogmoon.com>
Co-authored-by: Gol-D-Ace <Gol-D-Ace@users.noreply.github.com>
Co-authored-by: Igor Bochkariov <ujifgc@gmail.com>
Co-authored-by: Jesse Chappell <jesse@sonosaurus.com>
Co-authored-by: Keen <523059842@qq.com>
Co-authored-by: Kurt Kartaltepe <kkartaltepe@gmail.com>
Co-authored-by: Matt Gajownik <matt@obsproject.com>
Co-authored-by: Matt Gajownik <matt@wizardcm.com>
Co-authored-by: Richard Stanway <notr1ch@users.noreply.github.com>
Co-authored-by: Ryan Foster <RytoEX@gmail.com>
Co-authored-by: follower <github@rancidbacon.com>
Co-authored-by: gxalpha <beckmann.sebastian@outlook.de>
Co-authored-by: jp9000 <obs.jim@gmail.com>
Co-authored-by: jpark37 <jpark37@users.noreply.github.com>
Co-authored-by: mntone <sd8@live.jp>
Co-authored-by: tytan652 <tytan652@tytanium.xyz>
Co-authored-by: wangshaohui <97082645@qq.com>
Co-authored-by: wangshaohui <wang.shaohui@navercorp.com>
2022-07-26 22:12:23 -04:00
Ryan Foster
beaae2b9ce CI: Update deps to obs-deps 2022-07-08 release
Notable changes:
 * Windows: Add Qt 5 and 6 builds
 * Windows: Remove nasm native build
 * Windows: Update srt from 1.4.2 to 1.4.4
 * Windows: Update SWIG from 3.0.12 to 4.1.0-git
 * macOS: Update libvpx from 1.10.0 to 1.11.0
 * macOS: Update srt from 1.4.1 to 1.4.4
 * macOS: Update SWIG from 3.0.12 to 4.1.0-git
 * macOS: Update x264 from r3059 to r3060
2022-07-14 11:22:36 -04:00
PatTheMav
c887459f3c CI: Switch to universal Qt builds for CI
Due to changes on obs-deps, per-arch Qt builds do not contain universal
binaries anymore. To allow CI to cross-compile on x86_64 runners,
the universal release is used, which will run on both architectures.
2022-07-07 16:20:30 -04:00
Shaolin
5e696cdaa8 CI: Fix FreeBSD definition of streaming service
This will bring build script on par with linux and macs
2022-06-06 03:12:46 -04:00
tytan652
3c390d8b5b flatpak: Update deps based on obs-deps 2022-05-23
* nv-codec-headers: Update to n11.1.5.1
* NTV2: Update to v16.2-bugfix5
* LuaJIT: Use same commit as obs-deps
2022-06-02 09:36:54 -03:00
Romain Vigier
43867ce93c flatpak: Install CMake config files
CMake config files are required for building OBS plugins with the
Flatpak as a runtime.

Add a post-install command that installs the `obs_libraries`
component, which provides the config files.
2022-05-30 12:16:35 -03:00
derrod
a07cf955b2 CI: Update service-removal PR description 2022-05-23 05:50:58 -04:00
derrod
abf383f264 CI: Ping authors of failed services in removal PR 2022-05-22 01:00:55 -04:00
derrod
ccff8040fa CI: Add services check job 2022-05-20 08:55:56 -04:00
Matt Gajownik
de11632a9c CI: Validate JSON Schema of Services files 2022-05-20 20:25:19 +10:00
Kurt Kartaltepe
1604400e48 linux-capture: Rewrite xcomposite
Generally moves all the plugin code into xcomposite-input.cpp and
removes all C++ dependencies.

Migrate as much as possible to xcb from Xlib to enable us to handle
errors and attribute them to the correct callers. This caused many other
knock on issues such as wrongly attributed errors and cleanup code
working incorrectly.

That allows us to use the xcursor-xcb implementation and delete the pure
Xlib implementation. We also add the missing functionality from the Xlib
implementation to the xcb implementation.

Capture glXCreatePixmap errors which occur most commonly on
nvidia+gnome due to nvidia's driver being unable to allocate more than 1
pixmap per window and gnome being the only compositor to read window
data via glx pixmaps.

Fix cleanup after failed glXCreatePixmap that might have leaked pixmaps
and prevented later captures on nvidia drivers for the same reason.
2022-05-14 17:01:08 -03:00
Ryan Foster
4b078b9296 CI: Respect user-specified build directory
The Windows build script would respect the user-specified build
directory for the configure step, but not for the build step. Fix that
by applying the same logic in Configure-OBS to Build-OBS.
2022-04-23 20:04:20 -04:00
tytan652
f4e696b39c flatpak: Cleanup PipeWire module 2022-04-22 20:32:45 -03:00
derrod
e860b26589 CI: Add Steam build uploader 2022-04-18 14:08:33 -04:00
gxalpha
6f3a29a3f8 CI: Fix clang-format to include Objective-C 2022-04-18 10:43:44 +10:00
cg2121
6bee92d054 CI: Use 9-character short hashes in artifact names
Hardcode short hash length to 9 characters in CI and packaging scripts.
It is not guaranteed that short hashes are the same length across
different platforms or different versions of git. This caused problems
with upload/download action names, as the hashes sometimes didn't match.

Fix the download artifact name in the Windows installer job and the
macOS notarization job to prevent them from failing due to a name
mismatch.
2022-04-12 14:21:13 -04:00
PatTheMav
ff916e5f2c CI: Fix Windows build scripts relying on localized architecture string
Current build scripts rely on comparing a architecture string provided
by the OS which will be localised in certain languages.

This change uses a boolean 64-bit flag to use script-defined identifiers
to avoid this issue.
2022-03-28 15:38:03 -04:00
Matt Gajownik
70924da18d CI: Don't ignore deps directory when formatting
Also add a .clang-format ignore file to the libff dependency.
2022-03-25 19:41:03 +11:00
tytan652
ebd6520f25 flatpak: Reenable AJA and JACK plugins 2022-03-23 10:36:16 -03:00
PatTheMav
184f6f38fb
CI: Fix CMake definition of streaming service options
On master branch, client information for Twitch, YouTube and Restream
integration are set as CMake cache variables. The hashes can contain
otherwise "illegal" characters such as backticks which need to be
enclosed in a string, but also cannot be subject to variable
substition.

Using single quotes should fix this.
2022-03-17 23:21:02 +01:00
PatTheMav
8fba906be4
CI: Add necessary build system changes for universal and M1 builds 2022-03-16 23:23:40 +01:00
PatTheMav
c993b6059a
CI: Update build scripts and Github actions workflow
Also updates main CMakeLists.txt and CMakeLists.txt for unit tests,
also adds additional build directories to .gitignore file
2022-03-16 23:13:26 +01:00
PatTheMav
7a5bffc0a6 CI: Ensure SOVERSION symlinks exist in created App Bundle
Bundles libraries are available via their specific versioned filename
as well as SOVERSION and versionless symlinks. Dylibbundler does _not_
include these symlinks when copying linked libraries into the bundle.

This change ensures that all libraries and their SOVERSION symlinks
exist in the created App Bundle.
2022-02-19 15:40:00 -08:00
tytan652
447b8786ef flatpak: Update librist library
The librist commit is what is used by obs-deps since
this commit https://github.com/obsproject/obs-deps/commit/06fdd5f.
2022-01-27 12:02:53 -03:00
tytan652
54ca895537 flatpak: Update libaom and SVT-AV1
Update the libaom and SVT-AV1 versions and also apply several
cherry-picked commits to FFmpeg for SVT-AV1.

The libaom commit is what will be used by obs-deps once
https://github.com/obsproject/obs-deps/pull/90 is merged.
2022-01-26 13:42:29 -03:00
Luke Yelavich
9ce385d926 flatpak: Enable communication with org.a11y.Bus
This allows Linux accessibility tools such as the Orca screen reader to
be used with OBS.
2022-01-26 12:27:05 -03:00
Matt Gajownik
e9cbe52d96 CI: Bump CEF caches to fix cookie crash bug
Manually backported a CEF 97 bug fix to CEF 95 and rebuilt for all
platforms. More info:
https://bitbucket.org/chromiumembedded/cef/issues/3193/#comment-61679139
2022-01-22 21:20:07 +11:00
Matt Gajownik
a1e0d2f538 CI: Use GitHub mirror for PipeWire repository 2022-01-08 12:12:36 +11:00
tytan652
183a0a4d0e flatpak: Use same commit hash for LuaJIT as macOS 2022-01-05 20:02:19 +11:00
tytan652
02409c46fa flatpak: Add SVT-AV1 support 2022-01-02 16:21:52 -03:00
tytan652
6fdfc88467 flatpak: Add libaom support
It also add FFmpeg libaom patches from obs-deps.
2022-01-02 16:21:52 -03:00
tytan652
9167a7177d flatpak: Add RIST support to FFmpeg
Mbed TLS module is moved before librist to allow the latter to be built
with Mbed TLS.

It also add FFmpeg librist patches from obs-deps.
2022-01-02 16:21:52 -03:00
tytan652
f74c37043e flatpak: Update FFmpeg to 4.4.1
It also apply obs-deps FFmpeg patches.
And cherry-pick the following commit to fix issues with VAAPI:

avcodec/vaapi_encode: Fix segfault upon closing uninitialized encoder
https://git.ffmpeg.org/gitweb/ffmpeg.git/commit/d1b47f3

nv-codec-headers are also updated.

Note: The actual used commit hash is two commits after n4.4.1 tag.
2022-01-02 16:21:52 -03:00