Commit graph

13269 commits

Author SHA1 Message Date
Lain 2a2472e326 UI: Add func to disable properties view deferring 2023-08-03 16:27:55 -07:00
Lain d2d3e46e14 Revert "UI: Only defer property updates for input and transition sources"
This reverts commit 58fb63030c.

This is not the ideal fix for the fact that scripts can use a deferred
update flag because it makes it so that filters in general cannot use
flags. We need to disable this via other means.
2023-08-03 16:09:31 -07:00
PatTheMav 499ddfb32c CI: Fix detaching of temporary macOS disk images during image creation 2023-08-03 12:06:01 -04:00
tytan652 27d65b64c2 build-aux: Update Flatpak modules
- Update mbedTLS to 3.4.0
- Update aom to 3.6.1
- Update libsrt to 1.5.2
- Update SVT-AV1 to 1.6.0
- Update LuaJIT to 8635cbabf3
- Update Asio to 1.28.0
2023-08-03 10:25:05 -04:00
cg2121 620eff0768 libobs: Make video frame header public
This fixes compilation of third party plugins that need this
header.
2023-08-03 16:02:56 +02:00
Yuriy Chumak 81b588137a UI: Add "YouTube Control Panel" dock panel
New dock panel with integrated youtube studio live control room.
This commit also modifies CI files.
2023-08-02 17:49:05 -07:00
Ryan Foster 807c8a9106 CI: Update deps to 2023-08-02 release
Notable changes:
 * deps.ffmpeg: Add macOS dSYMs
 * deps.ffmpeg: Update libpng to 1.6.40
 * deps.ffmpeg: Update opus to 1.4
 * deps.ffmpeg: Update SVT-AV1 to 1.6.0
 * deps.ffmpeg: Update aom to 3.6.1
 * deps.ffmpeg: Update mbedTLS to 3.4.0
 * deps.ffmpeg: Update libsrt to 1.5.2
 * deps.ffmpeg: Update AMF to 1.4.30
 * deps.macos: Add macOS dSYMs
 * deps.macos: Add Carla 2.6.0-alpha1
 * deps.macos: Add Libqrcodegencpp
 * deps.macos: Update LuaJIT to 2.1 8635cbabf3
 * deps.macos: Update libpng to 1.6.40
 * deps.macos: Update FreeType to 2.13.1
 * deps.macos: Update Asio to 1.28.0
 * deps.macos: Fix SWIG version number
 * deps.macos: Update Sparkle to 2.4.2
 * deps.macos: Update Syphon Framework to 5.0 cb3d8ec506
 * deps.windows: Add Carla 2.6.0-alpha1
 * deps.windows: Add VPL v2023.3.0
 * deps.windows: Add Lidqrcodegencpp
 * deps.windows: Re-enable mbedTLS build
 * deps.windows: Update mbedTLS to 3.4.0
 * deps.windows: Update curl to 8.1.2
 * deps.windows: Update LuaJIT to 2.1 8635cbabf3
 * deps.windows: Update Asio to 1.28.0
 * deps.windows: Update Zstandard to 1.5.5
 * deps.qt: Add macOS dSYMs
 * deps.qt: Update Qt6 to 6.5.2 for Windows
 * deps.qt: Update Qt6 to 6.5.2 for macOS

This commit also updates the version of Sparkle used in buildspec to
match the version used in obs-deps.
2023-08-02 20:31:06 -04:00
derrod 117534368b libobs: Profile graphics initialisation and shader compilation 2023-08-02 04:48:43 -07:00
Sebastian Beckmann 211a812cc7
CI: Shorten job and step labels in workflow files 2023-08-02 01:07:44 +02:00
derrod c3ac912065 UI: Refactor getting the default encoder for a format 2023-08-01 11:43:38 -07:00
derrod 036f7e8147 UI: Clean up remaining C-isms in FFmpeg utils 2023-08-01 11:43:38 -07:00
derrod 2f78bb7991 UI: Replace FFmpeg encoder alias with long name
The alias is not really helpful and sometimes confusing, e.g. for HEVC
(without libx265) it ends up being "hevc_nvenc (hevc_amf)" since it just
contains the name of the default encoder. So instead of using the name
of the default encoder, show the full name of the encoder instead.
2023-08-01 11:43:38 -07:00
derrod c20bf0271c UI: Refactor FFmpeg utilities codec/format enumeration 2023-08-01 11:43:38 -07:00
derrod c1cd268532 UI: Fix matching FFmpeg formats/codecs 2023-08-01 11:43:38 -07:00
derrod a0ae12981c deps: Remove libff 2023-07-30 15:58:21 -07:00
derrod f0407dd1cd UI: Migrate from libff 2023-07-30 15:58:21 -07:00
Penwywern 182468b373 win-wasapi: Add hook signal and proc for process output capture 2023-07-30 14:06:53 -07:00
Penwywern 82beae249a win-capture: Add hook signal and proc for window capture 2023-07-30 14:06:53 -07:00
Penwywern 9d7a963386 win-capture: Add hook signal and proc for game capture 2023-07-30 14:06:53 -07:00
Penwywern e9c12b7d9d linux-capture: Add hook signal and proc for Xcomposite window capture 2023-07-30 14:06:53 -07:00
cg2121 5e198db647 UI: Add new scene at current row
Instead of having a new scene at the bottom of the list, have
it added after the current item.
2023-07-29 17:20:47 -07:00
derrod 5569139c43 deps/libff: Remove unused code and header files 2023-07-29 17:08:20 -07:00
Exeldro 91f00eac87 UI: Split toggle preview program hotkey into hotkey pair 2023-07-29 16:48:25 -07:00
jpark37 f5f7ae3e7f decklink: Support 10-bit RGB capture
Don't drop to YUV if a pure RGB signal is available.
2023-07-29 16:41:31 -07:00
jpark37 7669da1ea8 libobs: Add VIDEO_FORMAT_R10L
Support 10-bit packed format that DeckLink uses.
2023-07-29 16:41:31 -07:00
jpark37 0934e73902 libobs-opengl: Support mad/uint2/uint3/uint4 2023-07-29 16:41:31 -07:00
tytan652 c6ce50c9a3 deps,libobs,plugins: Remove in-tree Jansson
Jansson is provided by other means on any supported platform.
2023-07-29 16:37:14 -07:00
Ryan Foster f7d3ba7b1b libobs: Check if adapter can safely fast clear 2023-07-29 16:34:47 -07:00
Ryan Foster e5d5df879c libobs: Add function to check fast clear capability 2023-07-29 16:34:47 -07:00
Ryan Foster a8f770fdfc libobs-d3d11: Check if device can perform fast clear on init
NVIDIA GPUs in multi-GPU setups cannot safely perform a fast clear until
driver 527.37. Implement a check against the Vendor ID and driver
version of the adapter to determine if the adapter can safely perform a
fast clear.

Co-authored-by: derrod <dennis@obsproject.com>
2023-07-29 16:34:47 -07:00
Lain 346b93c9c4
Merge pull request #8689 from gxalpha/no-more-signal-slot-macro
UI: SIGNAL and SLOT macros begone!
2023-07-29 16:32:56 -07:00
CodeYan01 a494cf5ce4 libobs: Add obs_source_info.filter_add
If there is filter_remove, it is reasonable to expect that there is also
filter_add. filter_add also enables filters to attach signal handlers
on the parent, and disconnect them in filter_remove.
2023-07-29 16:15:21 -07:00
tytan652 51887595f8 build-aux: Add RNNoise Flatpak module
Replace in-tree RNNoise with a module with the same version as macOS
obs-deps
2023-07-29 16:11:47 -07:00
Norihiro Kamae 9ca55eea43 obs-qsv11: Downgrade minimum required CMake version 2023-07-29 16:07:54 -07:00
Lain 106e28d60f
Merge pull request #9302 from derrod/ui-update-nlohmann
UI: Migrate WhatsNew, update branches, and Windows update check to nlohmann JSON
2023-07-29 16:06:28 -07:00
Norihiro Kamae df70743385 aja: Ignore return value from aja-common functions
The functions `aja::lower` and `aja::replace` overwrite the 1st argument
and just return the reference to the 1st argument. It is not necessary
to use the return value.
2023-07-29 16:04:16 -07:00
CodeYan01 c48bc42a47 docs: Indicate that refcount is not incremented
Edited `obs_filter_get_parent` and `obs_filter_get_target`
2023-07-28 06:15:49 -07:00
Patrick Heyer a2c0d4969a
CI: Add fixes for tagged release runs and assorted minor issues
* Add provisioning profile support for macOS builds
* Fix internal variable names in macOS packaging script
* Add fallback git reference for validator actions
* Add required repository environment to documention deployment jobs
* Pass GitHub pull request number to GitHub CLI explicitly
* Use shortened commit hash for Steam nightly versions
* Ensure that concurrency check for tagged push uses a boolean value
* Update disk image creation function to retry ejection on CI
* Fix repository checkout in Flatpak publish action
* Fix output paths and filenames of generated appcast XML files
* Limit notice about notarization password use to non-CI usage
* Remove architecture-specific suffix from appcast artifact name
2023-07-27 15:26:45 +02:00
Kurt Kartaltepe 6034aa4164 UI: Avoid auto config selecting QSV on linux
Previously we left the QSV -> x264 in the fallback function to deal with
the autoconfig wizard possibly selecting QSV outside of the UI. But this
actually runs for both recording and streaming every time obs starts,
reseting user's config if they selected QSV for recording.

Instead avoid recording from being selected in the UI and by the
auto-config wizard, and revert changes to the fallback function.
2023-07-27 02:34:30 -07:00
derrod 38d10934ee obs-outputs: Set videocodecid to HEVC/AV1 FourCC in E-RTMP 2023-07-26 05:13:43 -07:00
Ruwen Hahn ac8ccf4027 libobs: Fix GPU scaled video encoder media not being cleared
During encoder shutdown `maybe_clear_encoder_core_video_mix` is
called to clear created mixes that are no longer needed; at that
time `obs_encoder_set_video` rejects changes to `media` since
the encoder is still active, so we bypass those checks

This is an issue e.g. when a rtmp stream disconnects (and thus
all encoders are cleared) and subsequently reconnects
2023-07-26 05:03:12 -07:00
Penwywern 23ca4cf704 libobs: Fix flip calculations in bounding box
This fixes flipping behaviour when positional alignement inside the
bounding box is other than centered, bringing it in line with the
behaviour when centered, i.e. flip the item in-place in the bounding
box.
2023-07-25 16:01:04 -07:00
tytan652 cb5f65b529 obs-qsv11: Link against Libva on Linux 2023-07-25 15:29:52 -07:00
Penwywern 6f885770f8 UI: Fix crop on flipped sceneitems in bounding boxes
Same as previous commits, flipped sceneitems in bounding boxes ought
to be treated as not flipped for the purpose of UI interaction in
order to function correctly.
2023-07-25 15:28:16 -07:00
Penwywern a62993d513 UI: Fix drawing of pixel guides on flipped sceneitems in bounding boxes
Flip state of the item should be ignored when drawing guides for items
in bounding boxes, as the UI uses the countour of the bounding box, not
of the flipped item in it.
2023-07-25 15:28:16 -07:00
Penwywern 8d0f043ac6 UI: Fix draw and find of rot handle with bounding box and flip
The preview interaction and decoration of items inside bounding boxes
is based on the bounding box state, not on the item's state. As such,
the flip state of the item should be ignored when drawing and finding
the rotation handle, since the bounding box itself isn't flipped, only
the item inside the bounding box.
2023-07-25 15:28:16 -07:00
Penwywern 28a48c048d UI: Fix rotation handle find angle
The angle at which the rotation handle is drawn is independant from the
sceneitem's flip. As such, this changes `FindHandleAtPos` to use the rotation
angle of the item, free of its flip, instead of doing post-rotation
corrections. This fixes a bug where when the item was horizontally flipped,
the handle was not "found" at its drawn location.
2023-07-25 15:28:16 -07:00
Carl Pédimina b12ed3008b win-capture: Fix leaking framebuffers data
The wrong linked list was used when removing framebuffer data.
Furthermore, a pointer referenced an object on the stack that
was no more valid.
2023-07-25 10:48:10 -07:00
Lain 4b1ba4e605
Merge pull request #9120 from jgh-twitch/happy-eyeballs-rfc-6555
IPv6 with IPv4 fast fallback (RFC 6555) for RTMP
2023-07-24 18:02:46 -07:00
James Hurley 488a96bc4b UI: Add IPv4 / IPv6 selection setting
This commit adds a field in Settings -> Advanced called
'IP Address Family' that allows users to select IPv4 and
IPv6, IPv4 Only, or IPv6 Only.
2023-07-24 17:10:30 -07:00