Commit graph

12423 commits

Author SHA1 Message Date
Exeldro a5e9c94e4b libobs: Add obs_view_get_video_info 2023-03-18 15:54:38 -07:00
cg2121 b0fbf25e24 UI: Fix media controls shortcuts being global
The play, pause and restart shortcuts were being called as global
shortcuts, being triggered no matter what. This fixes this by calling
the shortcut actions only when the media controls widget has focus.
2023-03-18 15:51:05 -07:00
Jonathan Bennett 73dea7c475 libobs: Fix Pulseaudio audio monitoring listing sources
The Pulseaudio implementation of audio monitoring was actually listing audio sources.
This change corrects that, so all possible outputs are available.
2023-03-18 15:45:36 -07:00
9p4 23ce4fe2f1 linux-v4l2: Fix fallback framerate for camera 2023-03-19 09:39:36 +11:00
Richard Stanway c9dd230a72 obs-outputs: Explicitly close RTMP socket on send error
Some send() errors are not treated as fatal but the connection gets shut
down regardless. When this happens, librtmp may send an FCunpublish
message which various services interpret as an "end of stream" message
and disable features like "disconnect protection". Instead, let's
explicitly close the socket so that the remote end is aware that this is
an unclean disconnect.
2023-03-18 15:38:54 -07:00
Norihiro Kamae 4ea0b69974 libobs/util: Simplify implementation of os_get_path_extension
To avoid a false use-after-free warning from GCC's -Wuse-after-free
option, revise the implementation without using memory allocation.
2023-03-18 15:36:41 -07:00
Norihiro Kamae e4496c7afa docs: Clarify a dot is included in the extension 2023-03-18 15:36:41 -07:00
Norihiro Kamae 7bd27b4da8 test: Add a test for os_get_path_extension 2023-03-18 15:36:41 -07:00
Norihiro Kamae af01bea6a0 test: Fix unused-parameter warnings in test-input 2023-03-18 15:35:24 -07:00
Norihiro Kamae 434bdc1768 libobs: Fix possible use-after-free of obs_scene_t
When creating a group, a newly allocated group `sub_scene` is released
just after calling `obs_scene_add_internal`.
If another thread released the scene-item, which is the sub_scene,
use-after-free might happen.
2023-03-18 15:34:47 -07:00
Norihiro Kamae 0959a22de3 UI: Fix possible use-after-free of obs_scene_t 2023-03-18 15:34:47 -07:00
Norihiro Kamae 23a0b7cacd UI: Fix possible use-after-free of obs_source_t
Also removes an implicit pair of successive obs_source_getref and
obs_source_release calls from OBSSource.
2023-03-18 15:34:47 -07:00
gxalpha 8ce4a2a154 UI: Fix macOS crash when saving general settings without Sparkle 2023-03-18 15:32:56 -07:00
gxalpha 283b6a4789 deps/file-updater: Use LOG_INFO log priority for info logging 2023-03-18 15:32:35 -07:00
gxalpha c958ffa9f4 UI: Properly update filter properties after resetting 2023-03-18 15:31:00 -07:00
tytan652 a0905d3972 obs-outputs,UI: Disable Windows-only options on non-Windows
"New Socket Loop" and "Low Latency Mode" RTMP options are only available
on Windows.

Those options should be ignored and forced-disabled on non-Windows
builds.
2023-03-18 15:29:50 -07:00
Richard Stanway e305b0f172 UI: Add old Vtuber Maker versions to DLL blocklist
This DLL is based on Unity Capture and suffers from the same deadlock
bug as many similar filters. A fixed version was released on 2023-03-14.
https://store.steampowered.com/news/app/1368950/view/3674412925835790027
2023-03-18 15:23:52 -07:00
derrod 09b6786f1a UI: Add Help menu action to show What's New dialog 2023-03-18 15:21:52 -07:00
derrod 5083c2a2e2 UI: Remove Windows 7 browser hwaccel check 2023-03-18 15:19:48 -07:00
derrod 5aecbebc98 obs-outputs: Remove Windows 7 sndbuf auto-tuning check 2023-03-18 15:19:48 -07:00
Norihiro Kamae 8938aeebfa obs-ffmpeg: Remove an empty clause
The empty clause was originally introduced to set a cutoff settings as a
hack at a commit ae862c16a and later removed at a commit a89470d2e. At
this time, the clause became empty but another commit aa58b9cf5 reuse
the clause and finally a commit 9baedb1c6 removes so that the clause is
empty now.
2023-03-18 15:16:44 -07:00
Norihiro Kamae b742938a6f aja: Remove an empty clause
Remove an `if` statement that test a variable `rd`, which is an `enum
class RasterDefinition` type .
2023-03-18 15:16:44 -07:00
Norihiro Kamae 3d5c4ff56e UI: Remove empty clause 2023-03-18 15:16:44 -07:00
tytan652 6181325ed9 flatpak: Add missing CMAKE_BUILD_TYPE
CMake defaults to a type commonly named "None".
Setting the type to "Release" is required to have optimization flags
applied.
2023-03-19 09:16:01 +11:00
Richard Stanway 7e9b071a6c
obs-ffmpeg: Add GeForce MX450 variant to unsupported NVENC list 2023-03-18 13:31:42 +01:00
tytan652 3eab477211 flatpak: Use Github mirror for nv-codec-headers
git.videolan.org repo seems to be inconsitent.
2023-03-18 11:28:00 +01:00
Kurt Kartaltepe 9bde0afc74 linux-pipewire: Report modifiers in hex
Use hex for modifiers because they are generally formed from a high byte
and low bytes. This makes it easier to see these bytes and identify
unusual modifiers.
2023-03-17 10:48:51 -03:00
tytan652 e6873d3278 UI: Refactor integration and browser docks
Use the QAction provided by QDockWidget with new Qt connection rather
than creating a new one for each dock.

Separate extra browser docks from extra docks, the latter is meant for
plugin/integration docks.
2023-03-17 20:21:08 +11:00
tytan652 63e3e0acd0 UI: Refactor main docks toggle action
Use the QAction provided by QDockWidget with new Qt connection rather
than creating a new one for each dock.
2023-03-17 20:21:08 +11:00
cg2121 a870ae2fb9 UI: Remove platform string from title bar
This cleans up the title bar text.
2023-03-17 19:06:50 +11:00
田七不甜 03691eb0a9 win-capture: Remove the redundant "-" in the CSGO launch option and Steam url language code 2023-03-15 22:31:06 +01:00
Robert Mader 0a36dc9d80 linux-pipewire: Clear cursor texture on empty bitmap
If we receive an empty cursor bitmap - one without valid size - we
should hide the cursor. Do so by clearing the texture.

This fixes visible cursors when recording various games with Wayland
compositors.

Closes https://github.com/obsproject/obs-studio/issues/4895
2023-03-14 10:52:17 -03:00
derrod b31344d82e updater: Fix building in Debug 2023-03-12 20:50:45 +01:00
Norihiro Kamae baddacc111 Revert "obs-ffmpeg: Use FFmpeg's "fast" AAC encoder by default"
This reverts commit aa58b9cf5f.

FFmpeg has reverted their default AAC encoder from fast to twoloop,
which has much better rate control management, making it closer to CBR,
and it sounds much better.
2023-03-12 10:21:27 -07:00
derrod 02225aa8bf UI: Reset UUIDs in duplicated collection 2023-03-12 01:11:38 +01:00
derrod 1fd50a9324 libobs: Add obs_reset_source_uuids 2023-03-12 01:11:38 +01:00
derrod 29db52ad27 libobs: Save/Load source UUID in scene item data 2023-03-12 01:11:38 +01:00
derrod 30519768ad libobs: Add UUIDs to obs_source objects 2023-03-12 01:11:38 +01:00
derrod f72cc4498f libobs: Add os_generate_uuid() to platform utils 2023-03-12 01:11:38 +01:00
derrod 11f88af880 cmake: Add libuuid finder 2023-03-12 01:11:38 +01:00
gxalpha ab04bb1f55 UI: Don't show Update section in settings when built without Sparkle 2023-03-11 15:37:28 -08:00
gxalpha aee268c944 UI: Don't show video-only async filters for synchronous sources
Expands the filter_compatible check to return false if the source isn't
async and the filter is not an audio filter, filtering out e.g. the
"Video Delay (Async)" filter from browser sources (which have audio but
don't have async video).
Amends 845e056551.
2023-03-11 15:24:07 -08:00
cg2121 b82c8ccdcf UI: Limit preview scrolling
This prevents the preview from being scrolled on forever.
2023-03-11 15:22:23 -08:00
derrod f55b251fa8 UI: Sort and pretty-print exported collections 2023-03-10 23:55:42 +01:00
derrod 4b062a7147 libobs: Add functions for getting/saving pretty JSON 2023-03-10 23:55:42 +01:00
gxalpha bb4e6f9e51 UI: Don't try to make OBSBasic parent of ControlsSplitButton
Passing the parent of a QLayout sets it directly as the top-level layout
(as per the QLayout docs). This is obviously not what is intended here.
Luckily it doesn't even work since the main window of course already has
a layout which would need to be explicitly removed before, but it makes
Qt yell at us for trying.
2023-03-11 09:38:46 +11:00
derrod 705173a0c3 UI: Add fragmented MP4/MOV formats 2023-03-10 17:12:36 -05:00
derrod 05b1be4f27 UI: Add MP4 to remuxable extensions 2023-03-10 17:12:36 -05:00
gxalpha 4c9ebc753c UI: Create OBSPermissions on stack
This fixes the window leaking and may improve performance.
2023-03-10 13:49:52 -05:00
Stefan Murawski 95cbd21a3b UI/installer: Add quotes around UninstallString
This follows recommended practice from NSIS documentation.

This fixes issue #7935.
2023-03-10 12:58:33 -05:00