Commit graph

14266 commits

Author SHA1 Message Date
Lain f71a67cd3a
Merge pull request #10608 from derrod/obs-mp4-muxer
Native Hybrid MP4 Muxer
2024-05-28 21:55:58 -07:00
gxalpha 9eca7b7525 UI: Fix Qt 6.7 checkbox signal deprecations
qt/qtbase@3512fb1ec5 deprecated the
stateChanged signal of QCheckBoxes in favor of a new checkStateChanged
signal. The signals are the same, except that now the enum type is
passed explicitly (before the enum was passed as an argument but defined
as an int).
2024-05-28 16:29:26 -04:00
Tunghohin 51fd7fbaff UI: Removed unused friend classes 2024-05-28 15:04:05 -04:00
Kamal Mostafa d813b7837a cmake: Do not write build number file if OBS_BUILD_NUMBER set
Allows for configuration and build from a read-only-mounted source dir
by setting the build number externally. For example:
`cmake -DOBS_BUILD_NUMBER=1`
2024-05-28 14:33:44 -04:00
Ryan Foster 8c48f8c7b5
Merge pull request #10706 from derrod/ci-attestation
CI: Generate/Verify Attestation for Windows builds
2024-05-28 14:13:47 -04:00
derrod 609ddd075e CI: Verify build attestation during patch generation 2024-05-28 13:47:37 -04:00
derrod dfc842bfc4 CI: Update signing workflow commit and permissions 2024-05-28 13:47:37 -04:00
derrod b5b457d7b0 CI: Attest signed Windows build 2024-05-28 13:45:42 -04:00
derrod 8ac8118b7f UI: Add chapter frontend API and hotkey 2024-05-26 23:11:48 +02:00
derrod 4503f0a056 UI: Add Hybrid MP4 to format selection 2024-05-26 23:11:48 +02:00
derrod df2a75fe4b obs-outputs: Add native MP4 muxer 2024-05-26 23:11:48 +02:00
derrod e54af0d559 docs: Document newer JSON serialization functions 2024-05-25 17:29:28 -07:00
derrod 94d158c425 libobs: Add functions to serialize JSON with default values 2024-05-25 17:29:28 -07:00
gxalpha a92852f96b mac-avcapture: Improve av_capture_sync_info formatting 2024-05-25 17:14:24 -07:00
derrod 79632f96dd libobs: Fix buffer overrun in video_frame_init 2024-05-25 17:12:34 -07:00
gxalpha 175b0cbc83 UI: Update edit menu on source filter changes
Currently, when adding a filter to a source and then right-clicking it
or using the menu bar edit menu, it's not possible to copy the source's
filters. This is because the edit menu does not update on filter
changes.
Listening to the new global filters add/remove signal and updating the
edit menu will enable the copy option if a filter get added or disable
the option if the last filter gets removed.
2024-05-25 17:08:42 -07:00
gxalpha a1e0626c14 libobs: Add global source filter add/remove signals
Adds global signals for when a filter is added to or removed from a
source. These will be helpful for listening for changes to a sources
filters without having to attach and detach a signal handler, which
would be annoying in the context of for example context menus which
change sources rapidly.
2024-05-25 17:08:42 -07:00
gxalpha 4cf18a9abf UI: Add undo/redo to Paste Filters on audio mixer and scenes
Copy-Pasting filters on a scene or on a source via the audio mixer
context menu would not add an undo/redo action. This commit factors the
undo/redo logic out into a generic paste filters function that can be
used for pasting filters everywhere.
2024-05-25 17:06:21 -07:00
gxalpha 8184fa10a3 UI: Inline OBSBasic::ThemeChanged()
The majority of this method got removed in a prior commit [1]. Let's
inline the rest.

[1] 8dcfae9a39
2024-05-25 17:04:58 -07:00
tytan652 34d577d748 UI: Enforce completely Fusion Qt style on Linux
As of 8dcfae9a39, indicating the base
style to the proxy is completely functional.

It also bypasses QT_STYLE_OVERRIDE and -style, but since the system
theme is no longer available on Linux this is a non-issue.
2024-05-25 16:58:26 -07:00
Warchamp7 76bde59e22 UI: Adjust multiview border size 2024-05-25 16:55:02 -07:00
Warchamp7 40885b6b19 UI: Calculate label position using height and border 2024-05-25 16:55:02 -07:00
Warchamp7 8500515d27 UI: Adjust appearance of multiview labels 2024-05-25 16:55:02 -07:00
cg2121 5eeae2d8b2 UI: Change how the status bar gets weak stream output
The changes obs_output_get_weak_output to OBSGetWeakRef to be
consistent with the other UI code.
2024-05-25 16:21:10 -07:00
Ryan Foster cffdc15aac UI: Fix Grid Mode not persisting from View Menu
When clicking Grid Mode or List Mode from the context menu within the
Scenes list, whether or not Grid Mode is enabled persists between OBS
sessions. When clicking Grid or List from the View Menu, the setting
does not persist between OBS sessions. This seems to be a regression
from fc8c428521.

Previously, SceneTree's SetGridMode would set this config value. If the
intent is to not have SetGridMode directly set the config value, then
any function that calls SetGridMode other than the OBSBasic constructor
must instead set the config value.
2024-05-25 16:12:39 -07:00
Ruwen Hahn 52660beae2 obs-outputs: Remove FLV byte array style multitrack audio support 2024-05-24 16:22:16 -04:00
Ruwen Hahn 36d3290879 obs-outputs: Remove special handling for audio encoders 1 and 2 2024-05-24 16:22:16 -04:00
Ruwen Hahn 98ab3663d6 obs-outputs: Add eRTMP multitrack audio support 2024-05-24 16:22:16 -04:00
Ruwen Hahn 82193970f4 obs-outputs: Add eFLV multitrack audio support 2024-05-24 16:22:16 -04:00
Ruwen Hahn c419465137 librtmp: Fix incorrect usage of type 3 chunks
Per [1] type 3 chunks/RTMP_PACKET_SIZE_MINIMUM always use
the previously sent (delta) timestamp as their _delta_ timestamp,
so we need to inspect whatever was previously sent, rather than just
looking at the previous packet's absolute timestamp. I.e., type 3
chunks are only permissible in this case if the previously encoded
(delta) timestamp equals the current delta timestamp.

[1] https://rtmp.veriskope.com/docs/spec/#53124-type-3
2024-05-24 16:22:16 -04:00
Warchamp7 8dcfae9a39 UI: Remove unnecessary ProxyStyle usage 2024-05-23 18:55:43 -04:00
Warchamp7 c54393335d UI: Rename MediaSlider to AbsoluteSlider 2024-05-23 18:55:43 -04:00
Warchamp7 aba600cec0 UI: Move VolumeSlider widget to volume control 2024-05-23 18:55:43 -04:00
Jeremy Woertink e79fea301d rtmp-services: Update Joystick.TV servers and recommended settings 2024-05-22 12:27:07 -04:00
Warchamp7 132f3f3d69 UI: Adjust Classic theme mixer button styling 2024-05-22 12:15:17 -04:00
Ruwen Hahn 27fa9b1eed UI: Give unnamed settings labels relevant names 2024-05-20 16:11:08 -04:00
derrod 72924ac1f3 libobs: Deduplicate audio for nested scenes/groups if not transitioning 2024-05-18 16:44:45 -07:00
derrod 8a38e3375b libobs: Mix audio of each source in a scene only once 2024-05-18 16:44:45 -07:00
derrod c815d6ad61 coreaudio-encoder: Fix pts/dts not including encoder delay 2024-05-18 16:32:38 -07:00
derrod adf744e6f0 libobs: Ensure audio offsets are positive 2024-05-18 16:29:01 -07:00
derrod 7cd72781c8 obs-outputs: Adjust HEVCDecoderConfigurationRecord for hvc1 tag
We mux HEVC with the hvc1 tag, which requires the parameter sets'
array_completeness to be set to 1.
2024-05-18 16:17:37 -07:00
derrod 89c7a9608b libobs/util: Add buffered file serializer
Adapted from 898256d416

Co-authored-by: Richard Stanway <r1ch@r1ch.net>
2024-05-18 16:15:41 -07:00
derrod dc4cba7427 libobs/util: Add seeking support to array serializer 2024-05-18 16:10:42 -07:00
Ryan Foster 842d249cb9 rtmp-services: Bump package version
e92accf136 updated services.json, but
didn't bump the package version.
2024-05-17 15:16:38 -04:00
Ruwen Hahn a18305dd3f UI: Keep weak stream output ref in status bar
The status bar doesn't currently own its references to outputs, which
can be a problem if streaming outputs are released soon after stream
stop. The Multitrack Video output does exactly that, so the status bar
will sometimes try to access an invalid pointer for updating its stats.
Keeping a weak reference around and upgrading it to collect stats,
similar to how the stats window behaves.
2024-05-17 13:48:32 -04:00
cg2121 f60d6bcfe2 rnnoise: Fix compilation not working on latest gcc
The latest gcc spits out an error about calloc parameters that are
in the wrong order.
2024-05-16 18:29:06 -04:00
tytan652 7824e164b1 mac-capture: Replace pragmas with availability markers
Also changes clang-format SeparateDefinitionBlocks to Leave on ObjC
files, which avoid having an empty new line after API_AVAIABLE and the
declaration.
2024-05-16 15:25:53 -04:00
Ryan Foster c3c6c6c934 CI: Add additional log group to setup_ubuntu script
Add clear separation between the CEF setup and the apt/apt-get calls.
This makes it easier to see how much time is being spent on each task.
2024-05-16 14:58:46 -04:00
Ryan Foster b3ee2f89b9 CI: Add Ubuntu 24.04
Add a job matrix for the Ubuntu Build so that we can test builds on both
Ubuntu 22.04 and 24.04.
2024-05-16 14:34:08 -04:00
Warchamp7 7843a822e0 UI: Adjust font size on macOS 2024-05-14 17:40:01 -04:00