7679 Commits

Author SHA1 Message Date
Jim
22af1f2a97
Merge pull request #2433 from jpark37/wgc-crop
WGC improvements: context-specific options and client area toggle
2020-02-24 23:38:52 -08:00
Jim
eb5abf2ae5
Merge pull request #2431 from cg2121/t-bar-size
UI: Make t-bar smaller
2020-02-24 23:27:13 -08:00
Colin Edwards
aeb1ba9eff
Merge pull request #2434 from jpark37/invalid-vao
libobs-opengl: Fix Mac VAO created without context
2020-02-25 00:18:18 -06:00
jpark37
1733705070 libobs-opengl: Fix Mac VAO created without context 2020-02-24 22:08:28 -08:00
jpark37
2111a3a02f libobs-winrt: win-capture: Support client area toggle for WGC 2020-02-24 21:31:53 -08:00
jpark37
cce9fb7f95 win-capture: Hide settings if Automatic is WGC 2020-02-24 19:42:46 -08:00
Richard Stanway
3667e556db UI: Use deleteLater() rather than explicit delete
When an audio source is removed, it signals its "destroy" callbacks.
One of the callbacks is OBSSourceLabel::SourceDestroyed.  When its Qt
destroy signal is fired, it causes a call to LoadAudioSources to refresh
the source list.  LoadAudioSources deletes the old layout, and so the
QWidget that the OBSSource is based on is freed while it's still in the
middle of running the signal callback, resulting in access to freed
memory.
2020-02-24 15:34:36 -08:00
Richard Stanway
45d0b8ccee UI: Reserve correct number of elements in vector 2020-02-25 00:24:05 +01:00
jp9000
9646fd38b4 cmake: Copy a few missing dependency files 2020-02-24 14:51:38 -08:00
Richard Stanway
bc7946f8a8 UI: Reserve correct number of elements in vector 2020-02-24 21:51:02 +01:00
Clayton Groeneveld
5f937e26ff UI: Make t-bar smaller 2020-02-24 13:28:23 -06:00
jp9000
d3b125ef38 obs-browser: Fix formatting 2020-02-24 04:18:07 -08:00
jp9000
c2e055c901 deps/media-playback: Fix formatting
Apparently CI did not catch this.
2020-02-24 04:17:03 -08:00
jp9000
faca94dcc5 obs-browser: Update browser to 2.8.0 2020-02-24 04:16:32 -08:00
Jim
4b3a27c0fa
Merge pull request #2429 from jpark37/linux-leak
libobs: Pump graphics loop one final time for cleanup
2020-02-23 21:38:03 -08:00
jpark37
3703581472 libobs: Pump graphics loop one final time for cleanup 2020-02-23 19:43:10 -08:00
Dillon Pentz
0dd4e34518
Merge pull request #2428 from Rosuav/remove-build-warning
UI: Fix compilation warning re signed/unsigned
2020-02-24 14:36:46 +13:00
Chris Angelico
2036c06b91 UI: Fix compilation warning re signed/unsigned 2020-02-24 12:31:39 +11:00
Jim
704d2c9e11
Merge pull request #2423 from cg2121/fix-launch-return
UI: Return 0 when launch cancelled or failed
2020-02-23 00:21:21 -08:00
Jim
faf1535ad5
Merge pull request #2422 from cg2121/remove-ci-script
CI: Remove unused Linux script
2020-02-23 00:19:46 -08:00
Jim
4d15e76c5b
Merge pull request #2208 from jpark37/screen-capture
Windows Graphics Capture support
2020-02-23 00:18:14 -08:00
Jim
718aaaa5bf
Merge pull request #2420 from WizardCM/profile-import
UI: Fix Import Profile in Portable Mode
2020-02-23 00:17:52 -08:00
Jim
3318776ee9
Merge pull request #2417 from WizardCM/theme-fixes
Acri theme fixes: Tables
2020-02-23 00:16:38 -08:00
Jim
c97c36c8ee
Merge pull request #2407 from tbodt/vt264-drops
mac-vth264: Manually mark priority bits for VideoToolbox frames
2020-02-23 00:16:06 -08:00
Jim
e755b973ef
Merge pull request #2401 from cg2121/media-buffering-fix
deps/media-playback: Fix buffering/sync issues
2020-02-23 00:15:43 -08:00
jp9000
572ce73115 win-capture: Add 'auto' method to window capture
Adds an "Automatic" method to the capture method property of window
capture.  This allows the ability for window capture to automatically
determine the best capture method to use.  Primarily, it prefers BitBlt
in most cases, but will use WGC when it detects the window is a browser,
microsoft office, or a UWP program.

This was implemented because the new capture method has a number of
undesired effects associated with it -- the issue of the capture border
that we can do nothing about, the fact that we can't control the capture
of the cursor, and the fact that Microsoft designed it to switch the
cursor away from hardware cursor mode when the capture is active (there
was absolutely no reason to do this because even OBS can capture the
hardware cursor with no issue).  Until we get a new version of this API
that doesn't absolutely blow, we're stuck preferring BitBlt instead.

But hey, at least people will be able to capture browser windows now.
2020-02-22 21:02:33 -08:00
jp9000
cc5918fdb4 CMake: Add check for Win SDK 10.0.18362.0 or above
The graphics capture changes require Windows SDK version 10.0.18362.0 or
above to function, so check for that in CMake.
2020-02-22 21:02:33 -08:00
jp9000
039c08144a CMake: Rquire CMake 3.16
The recent graphics capture changes require CMake 3.16 or above to
function on Windows, so add a requirement check for 3.16 if on Windows.
2020-02-22 21:02:33 -08:00
jpark37
74c7375096 libobs-winrt: Add PCH
Reduces compile time from six seconds to less than a second.
2020-02-22 21:02:33 -08:00
jpark37
ffc48dbbab win-capture: Windows Graphics Capture support
Users will now have the option of legacy window capture via BitBlt, or
Windows Graphics Capture, which is new to Windows 10.

There are two annoyances with the new capture method though. One is that
there is a bright, yellow border added to the original window (but not
the OBS view of it). The other is that the mouse cursor is always
captured, and we won't be able to capture without cursor until a later
version of Windows 10 is released.

It should also be noted that DPI scaling is now applied, which may
result in blurrier images caused by Windows rescaling.
2020-02-22 21:02:33 -08:00
jpark37
d6d27cfab1 libobs-winrt: Add module for WinRT functionality
Currently wraps Windows Graphics Capture API.
2020-02-22 21:02:33 -08:00
jpark37
ab53f31eb5 CI: Use VS 2019 and windows-2019 VM image 2020-02-22 21:02:33 -08:00
jpark37
d4ca08c4c7 win-capture: Add support for finding windows via EnumWindows
The top-level window appears to be preferred for upcoming Windows
Graphics Capture support, at least for UWP apps.
2020-02-22 21:02:33 -08:00
jpark37
9cff2ae6bb libobs: Add extra reference when source is displayed
This provides a chance to clean up resources on the graphics thread in
the hide callback, which Windows Graphics Capture requires.
2020-02-22 21:02:33 -08:00
jpark37
82cdc6e8c6 libobs: Pump Win32 messages on the graphics thread
Necessary for upcoming Windows Graphics Capture support.
2020-02-22 21:02:33 -08:00
jpark37
f27f858ab3 libobs: Support device loss registration
Complex external systems using the D3D11 device may need to perform
their own device loss handling, the upcoming Windows Graphics Capture
support for example.
2020-02-22 21:02:33 -08:00
jpark37
82797eb367 libobs: Make ComPtr header self-sufficient
Don't make someone else define IUnknown.
2020-02-22 21:02:33 -08:00
Richard Stanway
862f16285f libobs: Don't strip whitespace from config values
A plugin that saves whitespace-only data would crash OBS on startup as
the whitespace stripping would send the string length negative. While
that bug is fixed in this commit, there is also no good reason that OBS
is stripping whitespace to begin with. All data going into the configs
should be well formed and some plugins legitimately wish to save
whitespace as a config option (eg for search / replace characters).
2020-02-23 04:02:42 +01:00
Clayton Groeneveld
d6e8fbf0d1 UI: Return 0 when launch cancelled or failed 2020-02-22 19:22:43 -06:00
Clayton Groeneveld
c44a0e3fe7 CI: Remove unused Linux script 2020-02-22 19:12:02 -06:00
Richard Stanway
ee4cbb1199 obs-outputs: Properly reset stream count on RTMP_Close
Every addStream call would increment this counter. After merging the
mbedTLS fixes, we no longer have extraneous RTMP_Init calls which were
masking the prescence of this bug. This caused every stream after the
first stream to have the wrong channel index, and eventually OBS would
crash due to an out of bounds write if the counter reached
RTMP_MAX_STREAMS.
2020-02-23 01:04:14 +01:00
Richard Stanway
28cdebdc9e UI: Don't set audio encoder track index in Adv Output
The audio track should always be 0 for RTMP output. The previous code
accidentally used the audio track index to set the encoder track index.
If the chosen audio track was track 2, this enabled the experimental
multi-track RTMP output code. This then caused streams to fail as if
there were network problems, as popular RTMP services like Twitch don't
understand the multi-track RTMP stream and the connection hangs.
2020-02-23 01:04:04 +01:00
Matt Gajownik
2cbe64a79a UI: Fix Import Profile in Portable Mode
QDir.mkpath seems broken with relative paths

Also adds a check for existing profiles
2020-02-23 10:57:11 +11:00
Jim
2f22139670
Merge pull request #2419 from cg2121/update-id
obs-scripting: Update text source IDs
2020-02-22 04:02:20 -08:00
Clayton Groeneveld
44bb7e690b obs-scripting: Update text source IDs 2020-02-21 22:54:34 -06:00
Jim
d93951e11e
Merge pull request #2413 from whalebonetv/whalebone
rtmp-services: Add Whalebone.tv
2020-02-21 05:43:20 -08:00
Matt Gajownik
c988f6487d UI: Allow custom browser delete button to fill the cell 2020-02-21 22:05:37 +11:00
Matt Gajownik
3f053dbd87 UI: Fix table heading visibility in Acri 2020-02-21 22:05:37 +11:00
jp9000
1f6f183a02 win-ivcam: Fix build issue with CMake 3.16
There is no 'data' dir for this plugin, so don't attempt to copy it.
2020-02-21 00:02:01 -08:00
jp9000
61fd81f7b4 image-source: Increase slideshow limit to 400MB
Increases the image slideshow size limit -- this is a temporary solution
until a newer revision of the image slideshow can be written.
2020-02-19 02:27:54 -08:00