Commit Graph
12419 Commits
Author SHA1 Message Date
Richard StanwayandJim 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 KamaeandJim 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 KamaeandJim e4496c7afa docs: Clarify a dot is included in the extension 2023-03-18 15:36:41 -07:00
Norihiro KamaeandJim 7bd27b4da8 test: Add a test for os_get_path_extension 2023-03-18 15:36:41 -07:00
Norihiro KamaeandJim af01bea6a0 test: Fix unused-parameter warnings in test-input 2023-03-18 15:35:24 -07:00
Norihiro KamaeandJim 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 KamaeandJim 0959a22de3 UI: Fix possible use-after-free of obs_scene_t 2023-03-18 15:34:47 -07:00
Norihiro KamaeandJim 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
gxalphaandJim 8ce4a2a154 UI: Fix macOS crash when saving general settings without Sparkle 2023-03-18 15:32:56 -07:00
gxalphaandJim 283b6a4789 deps/file-updater: Use LOG_INFO log priority for info logging 2023-03-18 15:32:35 -07:00
gxalphaandJim c958ffa9f4 UI: Properly update filter properties after resetting 2023-03-18 15:31:00 -07:00
tytan652andJim 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 StanwayandJim 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
derrodandJim 09b6786f1a UI: Add Help menu action to show What's New dialog 2023-03-18 15:21:52 -07:00
derrodandJim 5083c2a2e2 UI: Remove Windows 7 browser hwaccel check 2023-03-18 15:19:48 -07:00
derrodandJim 5aecbebc98 obs-outputs: Remove Windows 7 sndbuf auto-tuning check 2023-03-18 15:19:48 -07:00
Norihiro KamaeandJim 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 KamaeandJim 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 KamaeandJim 3d5c4ff56e UI: Remove empty clause 2023-03-18 15:16:44 -07:00
tytan652andMatt Gajownik 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
tytan652andRodney 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 KartaltepeandGeorges Basile Stavracas Neto 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
tytan652andMatt Gajownik 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
tytan652andMatt Gajownik 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
cg2121andMatt Gajownik a870ae2fb9 UI: Remove platform string from title bar
This cleans up the title bar text.
2023-03-17 19:06:50 +11:00
田七不甜andRodney 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 MaderandGeorges Basile Stavracas Neto 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
derrodandRodney b31344d82e updater: Fix building in Debug 2023-03-12 20:50:45 +01:00
Norihiro KamaeandJim 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
derrodandRodney 02225aa8bf UI: Reset UUIDs in duplicated collection 2023-03-12 01:11:38 +01:00
derrodandRodney 1fd50a9324 libobs: Add obs_reset_source_uuids 2023-03-12 01:11:38 +01:00
derrodandRodney 29db52ad27 libobs: Save/Load source UUID in scene item data 2023-03-12 01:11:38 +01:00
derrodandRodney 30519768ad libobs: Add UUIDs to obs_source objects 2023-03-12 01:11:38 +01:00
derrodandRodney f72cc4498f libobs: Add os_generate_uuid() to platform utils 2023-03-12 01:11:38 +01:00
derrodandRodney 11f88af880 cmake: Add libuuid finder 2023-03-12 01:11:38 +01:00
gxalphaandJim ab04bb1f55 UI: Don't show Update section in settings when built without Sparkle 2023-03-11 15:37:28 -08:00
gxalphaandJim 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
cg2121andJim b82c8ccdcf UI: Limit preview scrolling
This prevents the preview from being scrolled on forever.
2023-03-11 15:22:23 -08:00
derrodandRodney f55b251fa8 UI: Sort and pretty-print exported collections 2023-03-10 23:55:42 +01:00
derrodandRodney 4b062a7147 libobs: Add functions for getting/saving pretty JSON 2023-03-10 23:55:42 +01:00
gxalphaandMatt Gajownik 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
derrodandRyan Foster 705173a0c3 UI: Add fragmented MP4/MOV formats 2023-03-10 17:12:36 -05:00
derrodandRyan Foster 05b1be4f27 UI: Add MP4 to remuxable extensions 2023-03-10 17:12:36 -05:00
gxalphaandRyan Foster 4c9ebc753c UI: Create OBSPermissions on stack
This fixes the window leaking and may improve performance.
2023-03-10 13:49:52 -05:00
Stefan MurawskiandRyan Foster 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
derrodandRodney 198c2b9e86 media-playback: Fix libavutil version check 2023-03-10 08:15:54 +01:00
Bartłomiej PiotrowskiandGeorges Basile Stavracas Neto 853ae5ea6e UI: Set flathub::manifest
Currently, the manifest URL on Flathub Beta website points to the
deprecated manifest hosted on Flathub. The flathub::manifest key
is undocumented attribute that will update the website to use the
proper location.

This key will not affect appstream other than providing enough
information to the Flathub website.
2023-03-09 20:33:44 -03:00
gxalphaandRyan Foster b1c96bba86 UI: Re-raise remux dialog after selecting file on macOS 2023-03-09 16:05:40 -05:00
gxalphaandRyan Foster 9c6a3a1d49 obs-vst: Fix memory leaks on macOS when VST's fail to load
Detected by clang-analyzer.
2023-03-09 15:18:38 -05:00