Commit Graph
14733 Commits
Author SHA1 Message Date
Dennis Sädtler e6edfe5229 obs-nvenc: Migrate to obs_encoder_video_tex_active()
Unlike obs_nv12/p010_tex_active() this accurately reflects the texture
availability in the mix associated with the encoder.
2025-01-29 15:01:19 -05:00
Dennis Sädtler 3b1a66f632 libobs: Add obs_encoder_video_tex_active() 2025-01-29 15:01:19 -05:00
Ruwen Hahn 9e3d0eb31b frontend: Add audio properties to GetClientConfiguration request 2025-01-29 14:37:19 -05:00
Alex Luccisano c67ea47406 libos: Add obs_get_audio_info2()
The `obs_audio_info2` struct is used in libobs
for resetting audio, however there is a need for
obtaining the additional fields present in the struct
beyond `obs_audio_info`.
2025-01-29 14:37:19 -05:00
jpark37 689c0094b8 libobs: plugins: Use MAD for sRGB functions
Also fix stray comment about pow behavior.
2025-01-29 14:11:34 -05:00
Norihiro Kamae 34615760ac aja: Remove holding source settings
The API `obs_source_update` accept NULL for the argument `settings` and
it will just call the `update` callback without changing the settings.
2025-01-29 13:39:58 -05:00
Dennis Sädtler 7e24a6093c frontend: Restart multitrack output if stream key has become invalid 2025-01-29 13:16:47 -05:00
Dennis Sädtler d026c871e0 frontend: Remove multitrack deactivate handlers
With the encoder reference counting fixups this is no longer required.
2025-01-29 13:16:47 -05:00
derrod 6b449c3a0b libobs: Only modify raw_active counter if (dis-)connection succeeded 2025-01-28 17:36:51 -05:00
derrod eda882dd0a libobs: Add video_output_disconnect2() 2025-01-28 17:36:51 -05:00
jcm 83934acb44 obs-scripting: Fix macOS Homebrew Python loading 2025-01-28 15:07:38 -05:00
derrod fb56e06edd obs-outputs: Make MP4 output buffer/chunk size configurable 2025-01-28 14:37:28 -05:00
gxalpha 3911f11306 .gitignore: Remove UI exclusion
Since the frontend refactor, the UI directory no longer exists. Let's
remove its exception in the .gitignore file.
2025-01-27 17:06:18 -05:00
cg2121 449755ee6d frontend: Move media control dynamic properties to ui file
This moves the dynamic properties for the media control buttons
from the cpp file to the ui file.
2025-01-27 16:36:08 -05:00
tt2468 9f4e0c52e1 obs-outputs: Attempt to generate path if one is not specified
Changes the MP4 muxer to attempt to use the path generation logic if
a path is not explicitly specified. This allows MP4 muxer outputs to
be configured with file splitting, without requiring both the `path`
and `directory`+`format` fields to be specified (saving effort on
the side of developers of custom plugins).
2025-01-27 16:02:53 -05:00
tytan652 ecb0381b8e obs-ffmpeg: Fix deprecation with FFmpeg 7.1 2025-01-24 17:38:24 -05:00
Norihiro Kamae 099bc26bd6 libobs/util: Fix tv_nsec becoming 1000000000 in os_event_timedwait 2025-01-24 15:28:57 -05:00
David Rosca 173487afaf obs-ffmpeg: Add QVBR rate control for VA-API 2025-01-24 15:04:50 -05:00
PatTheMav 45a89ab199 cmake: Update macOS development version requirements
To be able to make use of macOS 15 features, development must use the
macOS 15 SDK and in turn Xcode 16.0 (or more recent).
2025-01-23 16:43:37 -05:00
PatTheMav 7f04039afe CI: Update macOS workflows to macOS 15 runners with Xcode 16.1 2025-01-23 16:43:37 -05:00
Ryan Foster 0014f9fa18 libobs: Update version to 31.0.1 2025-01-17 18:40:47 -05:00
PatTheMav 1baa4619e4 frontend: Use filename stem as fallback value on empty collection name
If - for some reason - the name in a scene collection is empty (or
the key doesn't even exist), use the filename stem as a fallback name.

This ensures that the scene collection entry in the cache has a valid
non-empty name.

Using an std::string allows the use of its "empty" method to check for
this otherwise invalid state of the collection data.
2025-01-17 17:32:20 -05:00
PatTheMav 552c19cab2 frontend: Prevent creation of scene collections with empty name
Empty names for scene collections are not allowed, but this constraint
is only enforced by UI code during text input.

Thus frontend API users are able to create valid scene collections with
empty names which will lead to later possible crashes as the scene
collection is malformed.

As the frontend API uses the related function CreateNewSceneCollection
which handles exceptions by this method, no crashes should occur when
an empty string is provided by an API caller.
2025-01-17 17:32:20 -05:00
gxalpha 79f5ba0e1d cmake: Turn off camera reaction by default on macOS 14.4 and later
The reaction effects that macOS adds by default are confusing to users
as they're turned on by default and users don't know where they come
from or where to turn them off. Setting this flag in the apps Info.plist
prevents them from being turned on by default. The macOS UI makes it
very obvious to the user where they can turn them on should they wish to
do so.
2025-01-16 16:33:59 -05:00
Kurt Kartaltepe 22f222600a libobs: Fix underlinking by adding libx11
We directly depend on libx11 for various operations in obs-nix-x11.c,
not just xcb. So be sure to link it in too.

fixes #11667
2025-01-16 15:43:48 -05:00
derrod 41a38f742c image-source: Fix slideshow stopping on last file in random mode 2025-01-16 15:13:50 -05:00
derrod 223015bd54 obs-nvenc: Abort encoder init if custom options are invalid 2025-01-16 14:50:54 -05:00
derrod 7a04980213 obs-nvenc: Fix translation string for 4:4:4 unsupported error 2025-01-16 14:27:46 -05:00
Ryan Foster a8de12cc82 Merge pull request #11622 from PatTheMav/frontend-refactor
UI: Reorganize and refactor entire frontend codebase
2025-01-16 14:04:12 -05:00
PatTheMav 1c4b60057e frontend: Finalize merge of OBSBasic Sources with module sources 2025-01-08 17:35:16 +01:00
PatTheMav 9b8517003b frontend: Merge main OBSBasic source with module sources 2025-01-08 17:34:46 +01:00
PatTheMav 4752be4b95 CI: Update actions and build scripts to use new frontend directory 2025-01-08 17:33:14 +01:00
PatTheMav 49e23e184c build-aux: Replace UI directory with frontend directory for formatters 2025-01-08 17:33:14 +01:00
PatTheMav 7db4a75913 cmake: Update main CMakeLists file to use refactored frontend 2025-01-08 17:33:13 +01:00
PatTheMav 47613a0927 frontend: Migrate frontend plugins 2025-01-08 17:33:13 +01:00
PatTheMav e6430ab1d8 frontend: Migrate Qt UI files 2025-01-08 17:33:13 +01:00
PatTheMav 5abfc7c565 frontend: Migrate OBS Studio data directory 2025-01-08 17:33:13 +01:00
PatTheMav 076efedc82 frontend: Migrate obs-frontend-api 2025-01-08 17:33:13 +01:00
PatTheMav 08a2eb304b frontend: Migrate CMake files 2025-01-08 17:33:13 +01:00
PatTheMav ff3b62422e frontend: Migrate Windows updater 2025-01-08 17:33:13 +01:00
PatTheMav 2be464a21f frontend: Split main application implementation into single files 2025-01-08 17:33:13 +01:00
PatTheMav bcc6880183 frontend: Prepare main application implementation for splits 2025-01-08 17:33:13 +01:00
PatTheMav e1fade1fc6 frontend: Split Qt UI autoconfig implementations into single files 2025-01-08 17:33:13 +01:00
PatTheMav c792be35a1 frontend: Prepare Qt UI autoconfig wizards for splits 2025-01-08 17:33:13 +01:00
PatTheMav 654ddcd409 frontend: Split Qt UI Widget implementations into single files per class 2025-01-08 17:33:13 +01:00
PatTheMav 9f887c76d3 frontend: Prepare Qt UI Widgets for splits 2025-01-08 17:33:13 +01:00
PatTheMav f813121bb9 frontend: Add renamed Qt UI Widgets 2025-01-08 17:33:12 +01:00
PatTheMav a1ba3247c6 frontend: Split UI utility implementation into single files per class 2025-01-08 17:33:12 +01:00
PatTheMav a0668682b7 frontend: Prepare UI utility files for splits 2025-01-08 17:33:12 +01:00
PatTheMav d846b0ba0a frontend: Add renamed UI utility classes and functions 2025-01-08 17:33:12 +01:00