9836 Commits

Author SHA1 Message Date
jpark37
f9dbde51a7 cmake: Require Windows 10 SDK 20348 2021-09-11 13:00:28 -07:00
jpark37
00941ffc84 libobs-d3d11: Use ALLOW_TEARING if supported 2021-09-11 01:33:55 -07:00
jpark37
7ce2a60a1d libobs-d3d11: Use FLIP_DISCARD on Windows 11
Windows 11 support for DISCARD swap effect seems to be buggy and slow.
Use FLIP_DISCARD instead. Staying with DISCARD on Windows 10 because of
reports of flickering that hopefully won't happen on Windows 11.

We're also not using ALLOW_TEARING because it seems to break after an
OBS cycle of minimize/restore on both Windows 10 and 11. The swap chain
displays a stale image. Not sure if ALLOW_TEARING would be beneficial
even if it was working.
2021-09-10 20:19:24 -07:00
jpark37
aa342ab6fc libobs/util: Const-correct win_version_compare 2021-09-10 20:19:24 -07:00
derrod
1e98c9a0be UI: Disable reconnect for bandwidth test
Trying to reconnect would cause a hard crash of OBS rather than going to
the failed state. Therefore disable reconnects when doing bandwidth
testing.
2021-09-10 10:26:13 -07:00
derrod
85f9a8661b UI: Enable AutoConfig bandwidth test for YT integration 2021-09-10 10:26:13 -07:00
Ryan Foster
bb5820b882 UI: Fix Qt6-incompatible operator usage
Commit 60d95cb5 introduced some code that used the + operator on two
Qt::Modifier items. Using a pipe operator instead fixes the compilation
error on Qt5 and Qt6.
2021-09-10 10:23:24 -07:00
Ryan Foster
fd2aaf92b9 UI: Fix Qt6-incompatible call to QLocale::setDefault
The YouTube integration changes introduced code that does not build on
Qt6. The errors were:

 * void QLocale::setDefault(const QLocale &)': cannot convert argument 1
   from 'QString' to 'const QLocale &'

 * no suitable user-defined conversion from "QString" to "const QLocale"
   exists

This commit creates a new QLocale in place from a QString using the
`QLocale(const QString &name)` constructor, and passing that QLocale to
QLocale::setDefault.
2021-09-10 10:23:24 -07:00
jpark37
0a3cd8fbf6 UI: Update volume controls by callback
Gets rid of the time-critical timeSetEvent thread on Windows.
2021-09-10 10:21:19 -07:00
kiwialec
dda48c99bc rtmp-services: Add Disciple Media 2021-09-08 06:58:25 -07:00
jpark37
920a160600 libobs: FIx missing noexcept warnings
warning C26439: This kind of function may not throw. Declare it
'noexcept' (f.6).
2021-09-05 20:35:46 -07:00
jpark37
f5b65ec5d3 libobs/graphics: Fix gs_generalize_format warning
warning C26819: Unannotated fallthrough between switch labels (es.78).
2021-09-05 20:35:46 -07:00
derrod
e2b7597fb0 UI: Fix YT chat being shown when selecting private event 2021-09-05 10:30:20 +02:00
derrod
d6f00ccfd7 UI: Only start YT check thread if auto-start is disabled 2021-09-05 04:04:46 +02:00
Ryan Foster
f832d14220 UI: Disable hotkeys when a user is expected to type text
Disable hotkeys when a user starts an interaction with the UI where they
are expected to type text and re-enable hotkeys when the interaction is
completed.
2021-09-04 15:22:21 -07:00
derrod
ee30a83a6f UI: Remove obsolete/unused struct members 2021-09-04 01:58:38 -07:00
derrod
d5f3ddabd1 UI: Restore auth reset when switching services
Fixes #5236
2021-09-04 01:58:38 -07:00
derrod
79e21eaea3 UI: Remove unused struct 2021-09-04 01:58:38 -07:00
Warchamp7
6995a7b5ae UI: Fix vertical stretching in audio settings pane
The fixes in #5143 caused the audio pane in settings
to stretch out to fit the available space.

Add a spacer so the pane only uses the space it needs.
2021-09-03 21:28:16 -07:00
Richard Stanway
9411c548d3 obs-outputs: Disable Windows socket loop when using RTMPS
Since this is activated after starting the output, it assumes there is
no need to read anything from the connection as RTMP is send-only from
that point on. However with TLS, reading protocol messages is required
for proper operation, causing it to immediately fail on RTMPS
connections. This is a complex fix due to the way it interacts with
librtmp and mbedTLS so let's just disable it for now to avoid breaking
things for users.
2021-09-03 18:15:17 +02:00
derrod
a04bd742d7 UI: Use OBS locale for YouTube categories API 2021-08-31 17:59:51 -07:00
jpark37
1eb20ad5aa libobs/util: Improve SetThreadDescription usage
Fix warning about potential passing of NULL to FreeLibrary, and switch
from Kernel32.dll to KernelBase.dll based on MS documentation.
2021-08-30 22:33:17 -07:00
derrod
aba94c71e2 UI: Fix missing broadcast state reset on force-stop 2021-08-30 22:30:27 -07:00
derrod
5ea7aa3b7e UI: Start YouTube check thread after output starts
Fixes #5199
2021-08-30 22:30:27 -07:00
derrod
c52d127286 UI: Actually set AutoConfig bitrate max to 51 Mbps
Somebody snuck in an extra 0...
2021-08-30 13:50:12 +02:00
derrod
fe34a4f974 UI: Change YouTube description input to QPlainTextEdit 2021-08-29 22:55:59 -07:00
derrod
d16af0180d UI: Bump AutoConfig bitrate maximum to 51 Mbps
Several of the services included in OBS support bitrates higher than
10,000 kbps, YouTube being the new maximum at 51,000.
2021-08-30 03:29:08 +02:00
derrod
7ae6f328a1 UI: Add missing properties to ResetBroadcast 2021-08-29 01:19:16 +02:00
Exeldro
ffa9cd15e4 UI: Fix crash when output source 0 is null 2021-08-28 01:45:28 -07:00
Jim
9b6cc99828
Merge pull request #5180 from jpark37/leaks
Fix a bunch of pthread leaks
2021-08-27 22:55:58 -07:00
jpark37
c5e7a6f23b win-capture: Clear stale pointers for game capture
Fixes shmem crashes when using Alt+Tab.
2021-08-27 22:46:17 -07:00
tt2468
3e4c275efc libobs/util: Remove old ifdefs
These defs inadvertently redefinine `std::strtoll` in C++ code
that includes the header, causing lots of problems. They only
serve to provide compatability with very old MSVC versions.
As such, they can just be removed entirely.
2021-08-27 08:12:53 -07:00
Warchamp7
b34e6ae76b UI: Fix disabled auto-start/stop checkboxes
The YouTube integration auto-start and auto-stop checkboxes are only
made visible when scheduling an event. However, they are disabled by
default so users can't change them when they're visible.

I suspect these checkboxes used to always be visible and were on an
enable/disable flip which got changed to a visibility flip.
2021-08-27 13:01:10 +02:00
Willy Liu(HQ ENG)
e276b23f94
rtmp-services: Remove 17LIVE 2021-08-26 13:55:37 +02:00
Clayton Groeneveld
6c10e9c3ac UI: Update png to svg in ui files
The icons in the main and filter ui files, were still using
png instead of svg.
2021-08-25 19:54:52 -07:00
columbarius
f50c178951 docs: Clarify only DMA-BUFs with a single modifier are supported
The gs_texture_create_from_dmabuf function is a wrapper for
eglCreateImageKHR, which can set a different modifier for each plane.
The documentation should advice against that, since this should be
rejected by the driver.

While DMA-BUFs started to have one modifier per plane, this decision was
rolled back to having one modifier for the whole buffer / all planes.
While some apis like EGL were designed with a modifier per plane,
drivers are expected to reject any request using different modifiers per
plane.
2021-08-25 19:48:22 -07:00
columbarius
ed5749e466 pipewire: Create textures from multiplanar DMA-BUF
The gs_texture_create_from_dmabuf function is able to create textures
from multiplanar DMA-BUF data. However, the only in-tree consumer of
this function - the PipeWire capture - does not use that.

Make PipeWire create textures from multiplanar buffers.
2021-08-25 19:48:22 -07:00
gxalpha
4382591be3 UI: Remove "Fullscreen Interface" menu on macOS
Removes the "View" -> "Fullscreen Interface" menu entry on macOS, since
macOS automatically adds an entry doing the same thing by itself.
2021-08-25 19:39:58 -07:00
Warchamp7
2f637ede0f UI: Fix source toolbar shifting when nothing is selected
#5125 added icons to the source toolbar but no icon is displayed when nothing is selected.

This adds a spacer on the right side of the label that gets toggled inversely to the source icon, to maintain the same width
2021-08-25 11:40:43 -07:00
Warchamp7
6e566f9b23 UI: Adjust minimum size of source toolbars
Sets a minimum size on the source toolbar itself to prevent shrinking the main window too small for it to be useable in some cases.

Also sets some sane limits on the toolbars with dropdown menus and the image source toolbar filepath
2021-08-25 02:09:51 -07:00
jp9000
8f97e32227 UI: Allow overriding keyframe interval if smaller
Allows the ability to override the default keyframe interval via
advanced output mode as long as that interval is smaller than the
recommended keyframe interval.

Fixes an issue where it was impossible to set a lower keyframe interval
than the recommended keyframe interval.
2021-08-24 19:41:43 -07:00
jp9000
a6fdc47535 UI: Cache YouTube channel name
This prevents having to look up the YouTube channel every time the
settings window is opened.

Closes obsproject/obs-studio#5154
2021-08-24 18:44:34 -07:00
Colin Edwards
083461698d
Merge pull request #5166 from cg2121/decklink-activate-fix
decklink: Fix deactivate when not showing
2021-08-24 20:10:21 -05:00
Jim
84bf08c171
Merge pull request #4720 from jpark37/detours-integration
Finish Detours integration for remaining game capture APIs
2021-08-23 23:18:10 -07:00
jpark37
0d282c0715 libobs: Add missing util.hpp to CMakeLists.txt 2021-08-23 23:15:15 -07:00
jpark37
3d342cd1e1 obs-filters: Fix NvAFX mutex leak 2021-08-23 23:15:11 -07:00
jpark37
353868e87c libobs: Fix pthread mutex leaks 2021-08-23 22:57:10 -07:00
jpark37
8a43c55918 libobs/util: Fix pthread mutex leaks 2021-08-23 22:57:10 -07:00
jpark37
0c208f1e62 libobs/media-io: Fix leaks and error handling 2021-08-23 22:57:07 -07:00
jpark37
8075e8bb65 libobs/callback: Fix pthread mutex leaks 2021-08-23 22:31:00 -07:00