9366 Commits

Author SHA1 Message Date
Anton Bershanskiy
543f58d4a6 UI: Copy Filters menu is active only if applicable 2021-03-16 21:38:06 -07:00
Anton Bershanskiy
54cbd98d91 libobs: add helper for source filter count
Add function size_t obs_source_get_filter_count(obs_source_t *source)
which returns the number of filters a source has. Update docs for it.
2021-03-16 21:38:06 -07:00
jpark37
7b983f00e3 obs-ffmpeg: Static analysis warnings
Fix various warnings about variable size.
2021-03-16 20:03:45 -07:00
jpark37
f35e37a963 obs-ffmpeg: Use NVENC preset lookahead length
If the preset specifies the lookahead length, use it. Force to previous
setting of 8 otherwise.
2021-03-16 20:03:45 -07:00
jpark37
6826285921 obs-ffmpeg: Align NVENC config values
Hard-code various config values as they appear in FFmpeg.
2021-03-16 20:03:29 -07:00
jpark37
3ddab3ca3e obs-ffmpeg: Align NVENC buffer length
Compute buffer count according to FFmpeg logic.
2021-03-16 20:02:49 -07:00
jpark37
7e8a04bbea obs-ffmpeg: Align NVENC lookahead logic
Force-enable lookahead if nvEncGetEncodePresetConfig says to.
2021-03-16 20:02:20 -07:00
jpark37
eca916527d obs-ffmpeg: PVT for NVENC fallback
Plumb Psycho Visual Tuning setting into fallback encoder.
2021-03-16 19:05:36 -07:00
jpark37
aa7e579f87 obs-ffmpeg: Align NVENC vbvBufferSize
Set vbvBufferSize to match FFmpeg behavior.
2021-03-16 19:04:00 -07:00
jpark37
f253c6dcb3 obs-ffmpeg: Align NVENC aqStrength
If Psycho Visual Tuning is on, switch aqStrength to from 0 to 8 to match
FFmpeg default.
2021-03-16 19:02:50 -07:00
jpark37
0c971276ae obs-ffmpeg: Don't set NVENC max dimensions
Don't set maxEncodeWidth/maxEncodeHeight since FFmpeg doesn't, and we
don't support resolution changes.
2021-03-16 19:01:00 -07:00
jpark37
b150e4fd39 obs-ffmpeg: Align NVENC dts math
Multiply by number of bframes like FFmpeg does.
2021-03-16 18:58:29 -07:00
jpark37
6ee7725c03 obs-ffmpeg: Use av_reduce on NVENC aspect ratio
For example, 1920:1080 becomes 16:9.
2021-03-16 18:58:20 -07:00
Kurt Kartaltepe
346e268a3d UI: Remove x11info dependency
This moves X11 platform to the qt private functions, as x11info was
removed from Qt6 so this is required for a clean Qt5/6 transition.

This is the implementation of x11info::getdisplay so it should still
work on older platforms. This "API" doesnt really guarantee anything
though.

Also clean up wayland only bits as we use them for all windowing systems
now, and the name of the native pointer we want is the same on both
platforms for now.
2021-03-16 18:50:52 -07:00
Richard Stanway
db7daa6eaf obs-filters: Simplify NVAFX SDK path lookup 2021-03-16 20:34:15 +01:00
Richard Stanway
d8a434bcc8 obs-filters: Minor code cleanup
Remove some unused variables, fix const qualifier and remove printfs.
2021-03-16 20:34:15 +01:00
Georges Basile Stavracas Neto
1a05c4f48e flatpak: Update dependencies
- Update LuaJIT according to upstream recommendations (maintainers of
   this project prefer that distributors use the git repository directly,
   instead of archives. Do that, and also update the Lua path for swig.)

 - Update ffmpeg and drop patch which is included in this updated release
   now.

 - Update x264

 - Update nv-codec-headers

 - Update mbedtls
2021-03-16 01:48:51 -07:00
Georges Basile Stavracas Neto
7e36331c98 UI: Only set AA_DontCreateNativeWidgetSiblings on Wayland
It seems this introduced various regressions on X11 (and, potentially, on other
platforms too, but needs confirmation). Let's preserve the old ways on current
platforms, and only use this flag on the new Wayland platform.
2021-03-16 01:48:29 -07:00
pkv
54892b27db obs-filters: Add RTX denoiser
This adds RTX denoiser filter to be used with RTX GPUs.
(from Nvidia Audio Effects SDK)
2021-03-13 12:17:11 -08:00
Ying Yin
a609554b89 rtmp-services: Make YouTube - RTMPS service the default
Remove beta label for YouTube - RTMPS and make it the default. Remove
YouTube - RTMP service and move the legacy RTMP urls to the Server
dropdown list.
2021-03-12 23:48:42 -08:00
jpark37
7e263ab775 win-capture: Better laptop test for auto-selection
Only auto-select WGC for desktop capture if a battery exists and
multiple GPU adapters are present. May false-positive on desktops with
a smart UPS attached, but we don't know of a better test.
2021-03-12 20:59:31 -08:00
jpark37
c03320cfc2 libobs: Add function to count GPU adapters
Only implemented for D3D11 for now.
2021-03-12 20:59:31 -08:00
Matt Gajownik
a86b4a9421 UI: Save video settings after 'Resize output (source size)'
Fixes #4207
2021-03-12 20:53:19 -08:00
Amin Shayan
883ec6fb66 UI: Add recommended settings for Aparat
Closes obsproject/obs-studio#4339
2021-03-12 19:15:44 -08:00
jp9000
4ef0d3bc69 obs-browser: Update version to 2.13.2 2021-03-12 18:57:13 -08:00
Peter "Marenthyu" Fredebold
2a87543d82 UI: Add css on Drag and Drop
Adds parsing for the "layer-css" query param of URLs dragged into the main window, similarly to the other layer-* parameters already used.
2021-03-10 22:59:07 -08:00
Anton Bershanskiy
7d5430f4ea UI: Make drag and drop file ext. case insensitive
Fixes obsproject/obs-studio#4236
2021-03-10 20:40:04 -08:00
Christopher P. Yarger
dcf3e6cd06 docs: Add entries for Frontend API T-bar control 2021-03-10 20:18:36 -08:00
Christopher P Yarger
25a335dc3c UI: Add Frontend API function to get value of T-bar
Also add a Frontend API event for when the T-bar's value changes.
2021-03-10 20:18:36 -08:00
Kurt Kartaltepe
9525943bc0 libobs: Fix crash when no context
If obs was shutting down in very early in initialization like when the
X11 display is missing this context parameter might still be NULL.
Return early to allow shutdown to complete without crashing.
2021-03-10 20:14:01 -08:00
Clayton Groeneveld
40fda5fc08 UI: Remove UpdateSceneCollection function from header
This function wasn't removed in PR 4308.
2021-03-10 20:06:08 -08:00
Ryan Foster
7ed1634530 cmake: Fix some Qt files not being logged in CMake output 2021-03-10 20:05:50 -08:00
Ryan Foster
dfe2f40902 cmake: Require Qt if UI is enabled
In CMakeLists.txt, FIND_MODE is not defined here. This was moved from
UI/CMakeLists.txt in commit cb4d2ff7faa8b52cf219ae85fe6caf1d2fc3f906. In
UI/CMakeLists.txt, FIND_MODE is REQUIRED if DISABLE_UI is false or
undefined and ENABLE_UI is true. Since the same booleans are required
for the if-else branch in CMakeLists.txt where we try to find Qt, we can
set find_package to REQUIRED here as well.
2021-03-10 20:05:24 -08:00
Jim
9ecae253f0
Merge pull request #4314 from WizardCM/fix-group-resize-1
UI: Don't attempt to resize parent group when changing cursor
2021-03-09 20:59:05 -08:00
Jim
fc6e085d32
Merge pull request #4318 from RytoEX/qt6-fixes
UI: Fix Qt6 build issues
2021-03-09 19:34:54 -08:00
Ryan Foster
7214feba73 UI: Set Qt::AA_UseHighDpiPixmaps only on Qt5
Qt6 enables Qt::AA_UseHighDpiPixmaps by default and will emit a warning
if you try to enable it. To prevent the warning, only set this on Qt5.
2021-03-09 10:28:19 -05:00
Ryan Foster
1793515bbf UI: Explicitly include QFile
Explicitly include QFile to prevent a build failure with VS2019 and Qt6.
2021-03-09 09:31:10 -05:00
Ryan Foster
e81f8e3857 UI: Don't use QTextStream::setCodec in Qt6
In Qt6, QTextStream::setCodec has been replaced by
QTextStream::setEncoding. However, all text is assumed to be UTF-8, so
we don't need to specify UTF-8 in Qt6.

https://doc.qt.io/qt-5/qtextstream.html#setCodec-1
https://doc.qt.io/qt-6/qtextstream.html#setEncoding
2021-03-09 09:16:19 -05:00
Ryan Foster
05d29aa4e3 UI: Set default string size arg for QT_UTF8 / QString::fromUtf8
Our QT_UTF8(str) macro uses QString::fromUtf8(str) with no size
argument. In Qt5, QString::fromUtf8 uses a default value of -1 for the
size arg. If size is -1, it is taken to be strlen(str). In Qt6,
QString::fromUtf8 doesn't use a default value for the size arg, but has
the same behavior if you manually specify -1 for the size. Let's
manually specify -1 to maintain the same behavior between Qt5 and Qt6.

https://doc.qt.io/qt-5/qstring.html#fromUtf8
https://doc.qt.io/qt-6/qstring.html#fromUtf8
2021-03-09 09:16:16 -05:00
Ryan Foster
37971e7bf9 UI: Force plugins to use version appropriate Qt Network
Make building against either Qt5 or Qt6 easier by checking the Qt
version used and loading the appropriate Qt Network DLL.
2021-03-09 09:16:07 -05:00
Matt Gajownik
b2fb0ca07f UI: Don't attempt to resize parent group when changing cursor
Fixes an issue where resizing a source did not resize the parent group.
2021-03-09 21:15:17 +11:00
Kurt Kartaltepe
513bcb8e35 UI: Cleanup Qt for Qt6
This changes cleans up some deprecated functions that were removed in
Qt6. Some are placed behind version ifdefs and others are replaced for
their non-deprecated Qt5 version.
2021-03-08 21:41:13 -08:00
Mike
40f99da8a2 UI: Fix Qt signal connection warnings
Closes obsproject/obs-studio#4264
2021-03-08 21:39:43 -08:00
Exeldro
901a030adf frontend-tools: Add edit script button 2021-03-08 08:37:37 -08:00
VodBox
e81cf90c1e UI: Disable scroll and keyboard input for t-bar
closes #2951
2021-03-09 01:31:08 +13:00
VodBox
d2e3d0da3c UI: Remove unnecessary code 2021-03-08 23:42:21 +13:00
VodBox
3046f3b578 UI: Fix grid mode scenes overlapping
fixes #2676
2021-03-08 23:33:54 +13:00
VodBox
58b2da73b3 UI: Fix transform dialog for screen readers 2021-03-08 21:51:20 +13:00
Clayton Groeneveld
753de748e5 UI: Remove redundant code
The UpdateSceneSelection function was doing the same thing as the
code in the SetCurrentScene function.
2021-03-07 22:53:08 -08:00
jpark37
a20b4c67eb libobs/util: Compiler barriers for ARM64 atomics
Unsure if the intrinsics imply ordering. Safer to assume they don't.
2021-03-07 21:11:32 -08:00