Commit graph

14019 commits

Author SHA1 Message Date
Georges Basile Stavracas Neto 31b10f3634 CI: Don't manually commit screenshots to OSTree
The flatpak-github-action action does that for us, and even better, it
properly handles the build arch.
2024-02-13 15:44:29 -05:00
Georges Basile Stavracas Neto 06bb6f0be7 CI: Pass mirror-screenshots-url to build workflow
This allows flatpak-builder to set up and commit the screenshots on our
behalf.
2024-02-13 15:44:29 -05:00
Georges Basile Stavracas Neto d8308f289b CI: Use flathub-infra images
Flathub provides Docker images with the tooling we need, and the
pre-installed runtimes. Let's use that.
2024-02-13 15:44:29 -05:00
tytan652 ae1ab38de3 build-aux: Update Flatpak audio plugins branch
The KDE Runtime 6.6 relies on the Freedesktop SDK 23.08 and so the branch of audio plugins should be updated too.
2024-02-11 19:09:11 -03:00
Kurt Kartaltepe 288ed51269 obs-ffmpeg: Receive packets while frame queue is full
Previously, we always assumed we could push more frames before an encoded
packet would be available. Actually, we can get EAGAIN when the
frame queue is full and before any encoded packets have been completed.

Instead, attempt to read packets more often as the worst that can
happen is we get EAGAIN again.
2024-02-10 17:25:14 -06:00
jcm e71149697f UI: Include audio devices in macOS microphone permissions prompt 2024-02-10 17:14:00 -06:00
Exeldro 4251e32366 UI: Fix source remove log scene 2024-02-10 17:11:52 -06:00
jcm 3f1a868e05 libobs: Use 'important' usage key for macOS disk space calculations 2024-02-10 17:10:25 -06:00
PatTheMav 5af8c10b0e win-dshow: Add generated Windows resource file to virtualcam sources 2024-02-10 01:50:06 -05:00
Kurt Kartaltepe e1b4c026df obs-qsv11: Disable texture encoder on linux
After adding proper adapter enumeration the linux code ends up entering
the texture encoding paths, but these paths are not correctly
implemented on linux yet.

fixes #10221
2024-02-09 20:19:55 -05:00
tytan652 848d76f52c docs: Fix circlebuf deprecation note 2024-02-08 18:21:37 -05:00
tytan652 ec17688a90 docs: Add deque to libobs/util table of content 2024-02-08 18:21:37 -05:00
tytan652 a4db1c760b docs: Fix title underline of obs_encoder_roi
Also remove unecessary whitespaces
2024-02-08 18:21:37 -05:00
Ryan Foster 29b71c14d2 CI: Fix incorrect commit hash for signing workflow
When merging the PR for the previous commits, I forgot the note that
stated that it required a merge commit to preserve the pinned commit
hash for the workflow. Thus, when I merged with "Rebase and merge", the
commit hash changed, and the workflow broke.

Update the commit hash to the correct version and fix my mistake.
2024-02-08 14:23:15 -05:00
derrod 780cbacca1 CI: Explicitly set commit hash for signing workflow 2024-02-08 13:38:04 -05:00
derrod ffd5879ec9 CI: Move Windows signing to reusable workflow 2024-02-08 13:38:04 -05:00
derrod d3291eb983 CI: Ignore pdbs zip in Steam workflow 2024-02-08 13:16:14 -05:00
vico-shang 7af6a0fc51 win-dshow: Fix YUY2 line size error 2024-02-07 12:27:38 -06:00
pkv 60bd03e45e UI: Fix RTMP check in Advanced output
RTMP was not being recognized due to a case-sensitive comparison; this
changes to a case insensitive comparison to fix the issue.
Fixes a bug found in beta channel.

Signed-off-by: pkv <pkv@obsproject.com>
2024-02-06 21:36:37 -05:00
Ryan Foster 66978c4d23 CI: Switch to macOS 14 runners and Xcode 15.2
The macOS 14 runners are M1-based and more performant than the macOS 13
runners. They also seems less prone to random failure.

https://github.blog/changelog/2024-01-30-github-actions-macos-14-sonoma-is-now-available/
https://github.blog/changelog/2024-01-30-github-actions-introducing-the-new-m1-macos-runner-available-to-open-source/
2024-02-03 18:47:11 -05:00
Chris (Flaeri) 0c2f3f8049 image-source: Fix crash when randomize with 0 files 2024-02-03 17:36:26 -06:00
Patrick Heyer 32ec6c17b5
libobs: Fix free disk space calculation on macOS (#10187)
New space availability keys seem to have very specific file system
requirements not documented anywhere. Using the opportunistic free
space key opportunistically (and falling back on the legacy value
otherwise) should always yield a "good-enough" free disk space value.
2024-02-03 17:35:09 -06:00
Evgeny Pavlov b79ba49252
obs-ffmpeg: Fix wrong framerate in AMF VUI header
Frame rate should be defined before AMF encoder initialization,
because this information is used for setting vui_time_scale in SPS.
If frame rate isn't defined before initialization,
then AMF encoder set default frame rate into VUI header (30 fps).
2024-02-03 17:31:00 -06:00
Kurt Kartaltepe d2e50c8c38 libobs-opengl: Specify display attributes
This is functionally a no-op, but works around a driver bug that
prevents use of eglQueryDisplayAttribEXT. This makes us more likely to
not trigger the driver bug and that gs_enum_adapters works correctly.
2024-02-03 17:23:01 -06:00
cg2121 b6e2face96 UI: Use vector for signals in source tree/transform
Cleans up signal code.
2024-02-03 17:19:51 -06:00
Exeldro a0e666d8e3 deps/obs-scripting: Fix lua tick crash 2024-02-03 17:08:53 -06:00
PatTheMav 6af9ae6c87 UI: Update exportOptions template for macOS release code signing 2024-02-01 18:21:32 -05:00
Lain 89288f1cf5 libobs: Update version to 30.1.0 2024-02-01 09:57:22 -06:00
derrod 348793b3f0 CI: Update Google Cloud GitHub Actions 2024-02-01 03:22:09 -05:00
Ryan Foster 73ad575c11 CI: Update peter-evans/create-pull-request GitHub Action
We're currently using peter-evans/create-pull-request v4.1.4 which is
based on the deprecated node16. This was fixed in v6.0.0, so let's
update to that commit.
2024-02-01 00:27:14 -05:00
Ryan Foster a48cae1b01 CI: Update CyberAndrii/steam-totp GitHub Action
We're currently using CyberAndrii/steam-totp c7f636bc64 which is
based on the deprecated node16. This was fixed in 45775c3219, so let's
update to that commit.
2024-02-01 00:27:14 -05:00
Ryan Foster 3576b40f06 CI: Update CyberAndrii/setup-steamcmd GitHub Action
We're currently using CyberAndrii/setup-steamcmd b786e0da44 which is
based on the deprecated node16. This was fixed in 29e114af03, so let's
update to that commit.
2024-02-01 00:27:14 -05:00
Ryan Foster 100e2c196f CI: Update korelstar/xmllint-problem-matcher GitHub Action
We're currently using korelstar/xmllint-problem-matcher v1.1.0 which is
based on the deprecated node16. This was fixed in v1.2.0, so let's
update to that version's commit.
2024-02-01 00:27:14 -05:00
derrod 700017fec3 CI: Do not install python on macOS
macOS and the GitHub runners have python3 preinstalled.
We only needed to specify a version because aiohttp wasn't compatible
with 3.12, but that's no longer the case.
2024-01-31 17:21:47 -05:00
Ryan Foster c36e5e1e6e CI: Update upload-artifact from v3 to v4 for Sparkle appcast job
Implement the new merge sub-action from upload-artifact as a separate
job that requires the Sparkle appcast creation job so that we still get
a single combined artifact for the Sparkle appcast. This lets us update
upload-artifact from v3 to v4.

GitHub Actions has deprecated Actions based on node16. The v4 actions
are based on node20.

See:
https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/
2024-01-31 14:04:11 -05:00
CrackThrough 7d25a80610 UI: Fix null pointer dereference
strcmp(obs_get_encoder_codec(option), "opus") causes the application to
segfault while loading service if find_encoder(id) returns NULL. Add a
null pointer check to prevent that from occurring.
2024-01-31 02:13:36 -06:00
Lain 10c82e638c win-dshow: Add support for newer Elgato devices 2024-01-31 00:54:14 -06:00
Kurt Kartaltepe ccfcbc2699 libobs: Copy both converted textures on stall for OpenGL
As the comment mentions this only occurs during an encoder stall on the
first frame. On D3D both gs_texture_t's are actually a single D3D
texture object and both planes are copied during gs_copy_texture, for
everyone else we need to copy the textures separately as they are
independent OpenGL textures.
2024-01-30 22:15:41 -06:00
Ryan Foster fbbfbc6858 CI: Update first-party GitHub Actions from v3 to v4
GitHub Actions has deprecated Actions based on node16. The v4 actions
are based on node20. Replace first-party v3 actions with their v4
counterparts.

See:
https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/
2024-01-29 22:36:53 -05:00
derrod ae5000dd1a CI: Switch to production codesigning cert 2024-01-29 20:10:28 -05:00
derrod 20d8779d30 libobs: Prevent encoder reconfiguration after initialization 2024-01-29 17:35:11 -05:00
Azamat H. Hackimov d9b3969bc5 Add CheckSymbolExists module for FindMbedTLS.cmake
FindMbedTLS.cmake uses `check_symbol_exists` macro which requires
`include(CheckSymbolExists)` before invocation (see
https://cmake.org/cmake/help/latest/module/CheckSymbolExists.html).

Signed-off-by: Azamat H. Hackimov <azamat.hackimov@gmail.com>
2024-01-29 16:57:15 -05:00
Translation Updater ac484a066f Update translations from Crowdin 2024-01-29 20:47:38 +00:00
Sean DuBois 752abdc0fc obs-webrtc: Add AV1 Support 2024-01-28 02:11:51 -06:00
tytan652 7c2b39436b cmake: Skip PDB install for interface target 2024-01-28 11:00:01 +11:00
tytan652 cdca983733 cmake: Skip generate export header if interface in legacy path
It backports a behavior from CMake 3.0 to CMake 2.0
2024-01-28 11:00:01 +11:00
tytan652 76eb88d984 obs-webrtc: Require libdatachannel 0.20 or newer 2024-01-27 17:54:23 -06:00
Kurt Kartaltepe 14f068a6b2 obs-qsv11: Use the new gs_enum_adapters 2024-01-27 17:51:33 -06:00
Kurt Kartaltepe 3e49e89611 libobs,libobs-opengl,libobs-d3d11: Add opengl gs_enum_adapters
This adds gs_enum_adapters and gs_get_adapter_count to the opengl
backend and promotes these to multiplatform graphics functions.

However we need to make an internal device change, device_enum_adapters
must pass in the current device on opengl to ensure that adapter #0 is
the display adapter. We do this to avoid changes to plugins already
checking against obs_video_info.adapter which is always 0 and expected
to be the device OBS was initialized on.

The actual implementation reports the dri render node (or /Software).
This allows plugins to query non-video features of the adapters like
VA-API/NVENC/etc or other cross device functionality. `/Software` is
chosen to avoid opening random files in the current directory if its
passed along as a file path like the regular dri render nodes.
2024-01-27 17:51:33 -06:00
Kurt Kartaltepe 477c3be050 deps/glad: Add EGL_EXT_device_base related extensions 2024-01-27 17:51:33 -06:00