Commit Graph
7717 Commits
Author SHA1 Message Date
jp9000 e40f2cc155 win-capture: Fix registry lookup bug
The make_filename command was misplaced.  Was meant to be right below
the get_programdata_path call.
2020-02-29 10:32:20 -08:00
Jim 1a071982aa Merge pull request #2156 from LittleMatth/master
Vulkan Game Capture
2020-02-29 05:37:44 -08:00
jp9000 7e78c17ace win-capture: Check hook version before capture init
Checks the hook version to ensure compatibility with hook DLL.  It's
unlikely it'll ever be necessary to increment the hook version, but this
is just a precautionary thing that allows a hook DLL to make sure it's
rejected by an older OBS version if needed.  Again however, very
unlikely that the major version will ever be incremented.
2020-02-29 04:53:29 -08:00
74acbd7ed0 win-capture: Add Vulkan capture
Co-authored-by: jp9000 <obs.jim@gmail.com>
Co-authored-by: jpark37 <jpark37@users.noreply.github.com>
2020-02-29 04:53:28 -08:00
jpark37 5c38c6455f win-capture: Refactor create_hook_info 2020-02-29 00:15:54 -08:00
jp9000 72e770458f win-capture: Use full DLL path for inject helper
The inject helper should be able to specify the full path rather than
assume the path of the hook DLL.  This change allows us to modify the
hook's location.  This needs to be done because the hook needs to be
relocated to ProgramData to prevent the possibility of multiple Vulkan
capture hooks.
2020-02-29 00:15:54 -08:00
jpark37 39dc64f0f8 win-capture/graphics-hook: Refactor mutex check
OpenMutex doesn't return INVALID_HANDLE_VALUE, so there's no need to
check for that.  Also only call CloseHandle if the call was successful.
2020-02-29 00:15:54 -08:00
jp9000 a20f1168a7 win-capture/graphics-hook: Don't allow multiple hooks
Prevents multiple separate hook DLLs from being loaded in to a target at
once.  This is done just in the off-chance that someone might add
another hook to the Vulkan layer registry.
2020-02-29 00:15:54 -08:00
jp9000 e55a2b4331 cmake: Add FindVulkan module 2020-02-29 00:15:54 -08:00
jp9000 675530204e libobs/util: Add dll version compare func 2020-02-28 23:48:12 -08:00
jp9000 46c8ef615d libobs/util: Use MAX_PATH for absolute path funcs
Makes these functions a bit more consistent with the rest of the
project.
2020-02-28 23:48:12 -08:00
jp9000 3e3521b9e1 win-capture/graphics-hook: Fix OBS detection
Fixes where the graphics hook would try to detect if OBS is currently
active or not.
2020-02-28 23:48:11 -08:00
jp9000 ef6a6827f4 win-capture/graphics-hook: Add flog and flog_hr
Allows automatically outputting the function name as part of the hook
logging.  This really doesn't need to be a manual process.  Makes code a
bit cleaner when used.
2020-02-28 23:48:11 -08:00
Jim 0f214bcce6 Merge pull request #1871 from VodBox/game-window-check
win-capture: Fix hook collisions with multiple game captures
2020-02-28 23:47:48 -08:00
Jim f916dcb9f5 Merge pull request #2443 from dbkr/master
CI: Fix case of PlugIns directory
2020-02-28 22:20:57 -08:00
David Baker dc17171617 CI: Fix case of PlugIns directory
'PlugIns' is normal for MacOS and whatever is generating qt.conf
(macdeployqt?) is using 'PlugIns', so this both builds and generates
an app that works on case insensitive filesystems but fails to load
on case sensitive filesystems.

I haven't tested building the installer, only modifying the
qt.conf in the installed copy of OBS.app.

Fixes https://github.com/obsproject/obs-studio/issues/2302
2020-02-28 17:28:59 +00:00
jp9000 1e4789f829 obs-outputs: Update FTL sdk to latest version 2020-02-27 06:45:43 -08:00
jp9000 ca4b04754c Revert "libobs: Fix audio keyframe issue"
This reverts commit ff22c20019.

This caused a bug in FTL output, which started hitching after this
commit.  Presumably due to opus; it's likely you're not supposed to do
this with all audio encoders.
2020-02-27 06:44:20 -08:00
jp9000 9b37b9273a obs-browser: Fix crash with replay buffer events 2020-02-27 04:59:48 -08:00
jp9000 764d5a2d3f win-capture: Preserve current window setting
This re-uses the game capture code for checking whether the original
window still exists or not.  If it doesn't or the name changed, it'll
insert the value at the top of the list so it doesn't automatically
select another when the user opens properties.

Basically, this fixes an issue where opening properties could sometimes
cause it to instantly capture whatever window was at the top of the
list, which is undesirable.

Closes obsproject/obs-studio#2421
2020-02-27 04:45:21 -08:00
jp9000 ffe4c767c3 win-capture: Move window capture method below window 2020-02-27 03:22:04 -08:00
Jim 19701e3bbc Merge pull request #2439 from cg2121/decklink-stuff
frontend-plugins: Refactor Decklink out UI
2020-02-27 00:42:25 -08:00
Jim ca0cc9fcf6 Merge pull request #2438 from cg2121/dock-margins
UI: Remove dock margins
2020-02-27 00:41:51 -08:00
Jim eeb2a7b7a2 Merge pull request #2440 from cg2121/fix-decklink-crash
Decklink: Fix crash when no device selected
2020-02-27 00:20:08 -08:00
Clayton Groeneveld e57d542625 Decklink: Fix crash when no device selected 2020-02-27 01:27:46 -06:00
Clayton Groeneveld fa9dccb7be frontend-plugins: Refactor Decklink out UI 2020-02-26 23:06:20 -06:00
Clayton Groeneveld ef3f842f0e UI: Remove dock margins 2020-02-26 19:55:07 -06:00
Jim ad1f74e312 Merge pull request #2435 from brittneysclark/enable_nv12_on_intel
libobs-d3d11: Enable NV12 for Intel on newer platforms
2020-02-26 09:52:33 -08:00
brittneysclark b8754f89fb libobs-d3d11: Enable NV12 for Intel on newer platforms
Check Intel Device IDs and only disable NV12 on legacy Intel GPUs. NV12
copy times on new platforms (ICL+) is minimal.
2020-02-26 05:49:13 -08:00
Jim 535e94dc0e Merge pull request #1759 from cg2121/enable-linux-browser
obs-browser: Enable Linux support
2020-02-26 04:46:38 -08:00
jp9000 389032baa3 obs-browser: Update to 2.8.2 2020-02-26 04:45:26 -08:00
Clayton Groeneveld 0ca8424c66 UI: Fix compiling error with older QT 2020-02-25 22:38:12 -06:00
Clayton Groeneveld 0b33df9b2f CI: Build CEF on Linux 2020-02-25 22:38:12 -06:00
Clayton Groeneveld 61aeaa5ca3 obs-browser: Enable Linux support
This requires CEF >= 3683
2020-02-25 22:38:12 -06:00
Richard Stanway 269ebd2983 libobs: Handle empty path in os_get_path_extension
os_readdir might return an empty path if the OS filename doesn't fit
into the buffer after os_wcs_to_utf8. If this empty path is then passed
to os_get_path_extension it causes a crash.
2020-02-25 21:31:25 +01:00
Jim 267874ad92 Merge pull request #2427 from Rosuav/retry-pipe-write
libobs/util: Retry pipe writes to avoid spurious failures on short write.
2020-02-24 23:41:48 -08:00
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