Commit graph

12865 commits

Author SHA1 Message Date
Kurt Kartaltepe f0f704249f linux-pipewire: Only consider chunks with size set
Compositors did not agree on how to communicate invalid buffers until
recently, so e0a4d8628d resulted in
regressions on KDE. This restores our old behavior which is too
conservative but mostly works on old and new compositors (which contain
similar workarounds to pass in invalid but non-zero sizes for dma-bufs).

Once all old compositors are out of use we can remove this workaround
and then compositors can remove their random size workaround.
2023-04-22 16:45:50 -07:00
gxalpha 9da4a37cbc docs: Remove obs_sceneitem_group_from_scene/source
These function were removed in 35704c4 (and never got into a release).
2023-04-22 16:44:28 -07:00
WarmUpTill 0d6588fa8c docs: Fix obs_frontend_get_scene_collections() description 2023-04-22 16:43:07 -07:00
tytan652 3c1733b40d UI: Fix the license in the AppStream metadata
The "or later" must be specified in the identifier or it will be seen
as "only".
2023-04-22 16:41:13 -07:00
gxalpha f05b719950 docs: Clarify that data for source/encoder properties can be null 2023-04-22 16:34:56 -07:00
tt2468 681093616a libobs: Check for extension validity in os_generate_formatted_filename
In some cases (ffmpeg_mux), the extension and format values are a
direct passthrough from arbitrary data. Instead of always postfixing
a `.` at the end of a generated path if the extension is invalid,
don't postfix the `.` at all.

Before: `my_formatted_string.`
After: `my_formatted_string`
2023-04-22 16:29:30 -07:00
Exeldro f75fa626d8 obs-scripting: Fix loading lua utf8 path 2023-04-22 16:22:33 -07:00
tytan652 41cec5540c rtmp-services: Bump format version to v5 2023-04-22 16:17:40 -07:00
derrod ff06927c71 UI: Disable auto-remux for AV1+PCM, use MOV for PCM 2023-04-22 16:16:40 -07:00
derrod 3bb101d7a2 libobs: Finalise source creation before firing signal
Fixes a possible crash when renaming a source during the source_create
signal callback as it has not been added to the hash table yet.
2023-04-22 16:13:17 -07:00
gxalpha a4ea51b2b1 cmake: Add properties and log viewer UI files to sources list 2023-04-22 16:01:47 -07:00
derrod 72759ae69d obs-outputs: Don't set DTS offset for enhanced FLV SEQ start/end packets
Sequence start and end packets never have a valid DTS, but with a
non-zero offset the timestamp in the packet would end up also being
non-zero, which leads to librtmp attempting to calculate a timestamp
delta and underflowing.

As a fix, simply remove the ability to even set a DTS offset for
start/end packets and always keep it at zero.
2023-04-17 17:42:15 -04:00
derrod 64f3070753 obs-outputs: Fix enhanced RTMP frame type not being set 2023-04-17 16:39:13 -04:00
derrod 90b8e3585e cmake: Set C11 for CMake < 3.21 2023-04-17 14:55:44 -04:00
Ryan Foster ba263ee4fa Revert "libobs: Improve util_mul_div64 outside MSVC"
This reverts commit c977417747.

Reverted due to a regression.
2023-04-16 20:29:47 -04:00
jpark37 c977417747 libobs: Improve util_mul_div64 outside MSVC
Use inline assembly for x86_64 speed/accuracy.

Sacrifice speed for accuracy on other processors.

Continue to use original implementation for ARM on Windows.
2023-04-15 17:08:04 -07:00
PatTheMav ea60fc2869 mac-virtualcam: Fix DAL plugin entrypoint not being exported
With the recent change to enforce C17 standard for compilers, default
visibility was also enforced to be hidden. This also automatically hid
the `PlugInMain` symbol required for DAL plugins. Adding the
`__exported` decorator makes the symbol explicitly visible.
2023-04-15 16:51:18 -07:00
gxalpha 597ceb2ff0 UI: Make hotkey edit layout margins symmetrical 2023-04-15 16:38:18 -07:00
gxalpha 4d2f7ef009 docs: Add note about instance methods as callbacks in scripting 2023-04-15 16:36:32 -07:00
pkv dfac68b189 obs-outputs: Log encoder incompatible with dynamic bitrate
This logs that dynamic bitrate is disabled when a codec which does not
support bitrate reconfiguration is used, such as aom, svt-av1 ...

Signed-off-by: pkv <pkv@obsproject.com>
2023-04-15 16:33:33 -07:00
gxalpha 1578cca9b2 UI: Sort Add Source menu case insensitively 2023-04-15 16:06:36 -07:00
gxalpha 478bbab159 CI: Remove unused pre-cmake 2.0 Info.plist 2023-04-15 16:03:45 -07:00
Norihiro Kamae 593fb3d12d libobs: Remove newly introduced PRAGMA_WARN_STRINGOP_OVERFLOW macro
The macro PRAGMA_WARN_STRINGOP_OVERFLOW was introduced to suppress a
warning -Wstringop-overflow caused by a macro da_push_back_new calling
darray_push_back_new.
Extract the function in the macro to avoid the warning.
This will also enables checking the type check of the returned pointer.
2023-04-15 16:03:10 -07:00
Georges Basile Stavracas Neto 6e25b3198a CI: Bump Flatpak actions to v6.1
Sadly, v6 had an issue where it pushed the build to the `master`
branch regardless of the branch specified in the action config.
This was fixed in v6.1, so let's use that, and publish further
releases on the right branch.
2023-04-14 20:53:03 -04:00
PatTheMav 9f191b5101 cmake: Fix buildspec version parsing for dependencies
VERSION comparison requires semver-compliant version strings, but
obs-deps versions are based on dates, which are not compliant. Fix
version strings to semver variants before comparison.
2023-04-14 20:10:19 -04:00
derrod 36d30cad19 UI: Fix simple mode replay buffer maximum not being set 2023-04-14 19:35:59 -04:00
Richard Stanway 1d7c066cf5 UI: Avoid calling libobs functions with null pointers in projectors 2023-04-14 15:50:59 -07:00
Ryan Foster 099b391e7c CI: Update deps to 2023-04-12 release
Notable changes:
 * deps.qt: Add missing obs-deps version file for Qt packages
 * CI: Add detection for single-arch static libraries

This is mostly to fix plugin builds. No dependency versions have
changed.
2023-04-12 21:33:06 +00:00
Ryan Foster 9292fbbad7 CI: Update apple-actions GitHub Actions
Update actions version to avoid the impending shut down of deprecated
commands on May 31, 2023.

See:
https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
2023-04-12 21:32:59 +00:00
Richard Stanway bacc3ac8ed UI: Add Citrix ICAService to Windows DLL blocklist 2023-04-12 21:32:49 +00:00
derrod f3c075f19f UI: Do not disable events when disabling codecs 2023-04-12 17:17:11 +00:00
PatTheMav b2e66bb401 libobs: Add missing headers for framework export 2023-04-12 17:17:00 +00:00
PatTheMav df4c8d21ad cmake: Remove generated libobs export header from install interface 2023-04-12 17:17:00 +00:00
K.B.Dharun Krishna 1dd6e47215 CI: Bump Flatpak actions to v6 2023-04-11 17:32:39 -03:00
jpark37 bad13c90e0 decklink-output-ui: Don't crash on missing device
Noticed OBS crashing after I removed DeckLink hardware that I enabled
auto-start output against.
2023-04-09 11:53:12 -07:00
jpark37 5adcd51a68 decklink: Ignore "default" output device
obs_get_output_properties leads to a callback with an empty settings
object, so ignore it to avoid adding a dummy entry to the device list.
2023-04-09 11:53:12 -07:00
gxalpha e03a2751f4 cmake: Set CFBundleName to "OBS Studio" 2023-04-09 03:58:40 +02:00
PatTheMav 158a2e10aa cmake: Skip plugin target setup when ENABLE_PLUGINS is not set 2023-04-08 16:33:18 -07:00
PatTheMav d6a5532394 cmake: Skip dependency setup for CEF when using universal architectures 2023-04-08 16:33:18 -07:00
PatTheMav 6e4417018d cmake: Add platform configuration for macOS universal builds 2023-04-08 16:33:18 -07:00
PatTheMav e4ff8fab7a cmake: Fix discovery of existing pre-built dependencies
As there will be multiple directories containing obs-deps (non-Qt and
Qt variants), the search needs to continue after a first failed attempt
and not abort it entirely.
2023-04-08 16:33:18 -07:00
derrod 35d42f77d6 cmake: Set C standard to ISO C17
- Sets CMAKE_C_STANDARD to 17
- Disables C extensions (e.g. gnu17) to force ISO C on macOS/Windows
- Fixes language properties in cmake 3.0 not being set correctly
- Sets Xcode attributes to c17
2023-04-08 19:30:12 -04:00
derrod b3cf98f230 libobs: Fix compiling in ISO C17 mode 2023-04-08 19:30:12 -04:00
PatTheMav 8b186bac9b mac-avcapture: Fix questionable use of comma 2023-04-08 16:26:34 -07:00
PatTheMav 2978f20b06 UI: Replace use of macros for macOS updater with character constants
Also updates unqualified call to `std::move` per modern clang standards
2023-04-08 16:21:40 -07:00
PatTheMav 1172629492 rtmp-services: Remove macro-based constant usage
Macros make the code you see different from the code the compiler sees.
Modern C renders traditional uses of macros for constants and utility
functions unnecessary. Macros should only be used when there is no
other solution available.
2023-04-08 16:12:55 -07:00
gxalpha 1b708b312e cmake: Fix build without Sparkle 2023-04-08 05:44:08 +02:00
PatTheMav 3bfaf6661b cmake: Fix parsing of OBS_VERSION_OVERRIDE cache variable 2023-04-07 21:11:37 +02:00
derrod 50d1b5ccb4 UI: Lower Sparkle update check interval for pre-release builds 2023-04-07 20:59:30 +02:00
derrod 8a2305fd9a cmake: Fix parsing BETA version cache variable 2023-04-07 20:59:30 +02:00