Commit Graph

11625 Commits (674bd3f821b8db815eda6e3be34e44be92c976a6)

Author SHA1 Message Date
Kurt Kartaltepe 674bd3f821 libobs-opengl: Use a simple 24bit framebuffer
When using EGL the mesa+nvidia stack are unable to offload 32bit
framebuffers despite having this capability on GLX. In practice the X11
server does not support alpha windows so we dont need the alpha
component in our framebuffer. We previously had alpha specified in our
framebuffer since we do alpha texturing but testing shows this isnt
required for mesa/intel or nvidia drivers and we must pick a 24bit
config for users to enable render offloading for mixed gpu systems.

fixes #6984
2022-08-30 15:28:45 -03:00
cg2121 9b13536cfd UI: Fix properties tool button styling
Set toolButton to true with the tool buttons in the properties widget.
2022-08-30 13:26:37 -04:00
cg2121 c3b0787544 UI: Make list widget styles consistent
The script and scene switcher lists were not being styled.

This also sets the spacing to 1 for the filter, script, scene
switcher and properties view lists, the same as other lists.
2022-08-30 13:26:20 -04:00
cg2121 18ae6bb4d7 UI: Fix styling of buttons in scene switcher dialog
Set the tool buttons in the advanced scene switcher dialog to use
tool button styling and remove fixed sizing.
2022-08-30 13:25:54 -04:00
Richard Stanway edca16d77d
UI: Add HTTP header if the update check is manually initiated
With the addition of server-side release rate control, having the server
know if the update check was manually initiated can allow it to deliver
the update to the user even if they would normally not be eligible.
Windows only.
2022-08-30 16:12:56 +02:00
Translation Updater cc2d0791ca Update translations from Crowdin 2022-08-30 09:00:44 +00:00
cg2121 5e67d96996 UI: Fix source tree hovering being inconsistent
When hovering over the source tree items, sometimes the preview
would show the item hovered, sometimes not. This is caused by
the SourceTree mouseMoveEvent/leaveEvent calling the same functions
as the SourceTreeItem enterEvent/leaveEvent, therefore competing
with each other, causing some jankiness.
2022-08-30 18:49:23 +10:00
Matt Gajownik 247b688dea UI: Show sizing grip in dialogs where resizing is useful
Some windows, like the main window and Interact, already do this.
2022-08-30 18:36:04 +10:00
Matt Gajownik 9613fe7d47 UI: Use QDialog for all dialogs
While QWidgets can be opened as dialogs, they don't contain certain
functions/defaults that are expected in a dialog.
2022-08-30 18:29:05 +10:00
derrod 9a5e094cb3 UI/updater: Delete files listed as removed in manifest 2022-08-30 00:22:22 -07:00
Richard Stanway 894bc4078b obs-ffmpeg: Log codec when creating NVENC encoders
With HEVC and H264 settings being near-identical, it was impossible to
figure out which codec was being used by context alone. This applies to
both ffmpeg output and jim-nvenc.

Fixes #6976.
2022-08-29 21:43:04 -07:00
Richard Stanway e58485e0b2 UI: Fix padding on context bar buttons in System and Dark themes 2022-08-29 21:42:25 -07:00
jpark37 8f6f761631 obs-ffmpeg: Rename NVENC type for clarity 2022-08-29 20:41:42 -07:00
jpark37 26fce825a7 obs-ffmpeg: Fix NVENC HEVC regression
Forgot to switch enableEncodeAsync to 0.
2022-08-29 20:41:42 -07:00
Clayton Groeneveld 80f6faedfa
UI: Fix scene list spacing (#7202)
The reason why the scene list spacing would never work is because
spacing was always set to 0 in the resize event.
2022-08-29 18:14:30 -05:00
Ryan Foster 11bc39fe7c UI: Get correct coordinates for items in Scene Grid Mode
The x() and y() values of coordinates for events inside a scrollable
QWidget are relative to viewport's scrolled origin, the coordinates of
the upper left corner of the visible space, not the widget's true
origin. Since we do not allow horizontal scrolling, the value of x() is
okay. However, the value of y() needs to be adjusted by an offset of the
top()/y() value for the first widget in the SceneTree. When not
scrolled, this offset will be 0. When scrolled down, this offset will be
a negative value.
2022-08-29 18:22:45 -03:00
Ryan Foster 5b0ae8c70d UI: Fix scrollbar enablement in Scene Grid Mode
The UI layout math used to determine if scrollbars should be displayed
in the Scenes Dock was off by one pixel. This caused the scrollbar to
disappear when performing actions while scrolled to the bottom, such as
dragging items or resizing the dock.
2022-08-29 18:22:45 -03:00
Ryan Foster fd0c4b7d09 UI: Resize SceneTree after dropEvent
Calling resizeEvent for SceneTree after a dropEvent has occurred
prevents a dropped item from being displayed in the incorrect location
while in Grid Mode. There might be a better way to fix the incorrectly
displayed location of a dropped item, but we already do this in
SetGridMode and rowsInserted, so this is probably okay.
2022-08-29 18:22:45 -03:00
Clayton Groeneveld 1eebf27e9e UI: Change groupbox radius 2022-08-29 18:14:37 -03:00
cg2121 b9342a8f7c UI: Make settings margins consistant
Some settings pages would have different margins than others.
2022-08-29 17:44:14 -03:00
Matt Gajownik ad68380910 UI: Fix position of Sources dock actions on horizontal resize
Attempting to resize the Sources dock to be smaller than when initially
loaded would result in the contents of the list to never shrink.
Switching to another scene & back would temporary fix the sizing.

Fixes an issue introduced in adba393ca8
2022-08-29 10:03:41 -07:00
Norihiro Kamae f393adb7e6 plugins: Rename Partial to Limited in localization files
The commit 9409ce1ea7 rephrased Limited instead of Partial. Other
plugins should follow the updated phrase.
2022-08-29 10:03:12 -07:00
jpark37 5c85f8ae17 obs-ffmpeg: Add AVContentLightMetadata to MPEG-TS 2022-08-29 10:02:49 -07:00
jpark37 b4cc32c4c9 libobs: Extend NVIDIA anti-flicker to desktops 2022-08-29 10:02:32 -07:00
jpark37 29be9bff7a obs-ffmpeg: Don't use NVENC async mode
Fixes hang on stop presumably because header read failed from being too
early?

Our buffering scheme makes async mode moot anyway.
2022-08-29 10:01:57 -07:00
gxalpha 08e4ee6557 UI: Add workaround for scenes being unselected 2022-08-29 23:15:39 +10:00
gxalpha dbcafb62ff
mac-capture: Remove explicit call to setBackgroundColor
This was necessary since the default background color was meant to be
clear, but wasn't set properly. The bug is fixed in macOS 13 Beta 6, so
we can remove this statement.
2022-08-29 14:38:52 +02:00
jpark37 614119db21 obs-ffmpeg: Fix NVENC async usage pattern
Fix async API usage problems reported by NVIDIA.
2022-08-28 17:50:48 -07:00
cg2121 d69c749aaf UI: Fix crash with adding source
Bug introduced with adba393ca8

OBS would crash when adding a new source because the source tree item's
widget would be NULL in the sizeHint function when the list item is first
created.
2022-08-29 09:11:38 +10:00
cg2121 adba393ca8 UI: Fix source item widget color height
The background color of the source tree item widgets wouldn't be
rendered properly.
2022-08-28 09:45:00 +10:00
gxalpha a4f486517f obs-filters: Clarify that HDR Tone Mapping filter is optional 2022-08-27 16:39:53 -07:00
jpark37 37389ff243 libobs: Avoid display clear workaround if possible 2022-08-27 16:32:50 -07:00
jp9000 07df6548fd libobs: Increase texture encode buffering
Seems to solve lag encountered on the new AMF encoder. The SubmitInput
call in the AMF encoder can occasionally stall for quite a long amount
of time, but most take microseconds, so we can compensate by simply
increasing the buffering (3 to 10 textures).
2022-08-27 14:29:28 -07:00
Jim 2e5f900fe6 obs-ffmpeg: In AMF, use bframe count + 1 as DTS offset
Recommended by Mikhail. Seems to work fine. Should also fix the DTS
regression.
2022-08-27 09:39:46 -07:00
Jim 4c3e671819 obs-ffmpeg: Set max AMF consecutive bframes to 3 by default
The AMF documentation states that this value is recommended to be 3 if
the bframe picture pattern property is a non-zero value.
2022-08-27 09:32:38 -07:00
jpark37 e5a1ef91e3 obs-filters: Fix HDR tonemap filter for scRGB
JXR images work now.
2022-08-27 08:38:12 -07:00
jpark37 a9c68c4623 mac-capture: Replace false with 0
Param is uint32_t, not bool.
2022-08-27 08:37:44 -07:00
Matt Gajownik 7e065e9366 UI: Widen Edit Transform inputs to fit suffix in Yami 2022-08-27 12:21:35 +10:00
Be1erafon a709bc4a73 rtmp-services: Update Streamvi 2022-08-26 19:04:32 +02:00
PatTheMav b81ab5a32b UI: Fix small font size on macOS and fallback font
Qt uses a default font size of 13pt for QWidgets on macOS. By setting
the default font size to 10pt, text becomes too small for comfortable
use on macOS.

This PR patches the font files copied into the macOS bundle to use a
larger font-size of 12pt. It also sets the fallback font to the more
modern SF Display-based `.AppleSystemUIFont` used by default in macOS
if Open Sans is not found.
2022-08-25 18:02:22 +02:00
jp9000 896de392cd UI: Copy va_list in strprintf on non-Windows
On operating systems other than Windows, va_list has to be copied when
you pass it to a new function otherwise it becomes corrupted
2022-08-24 20:23:13 -07:00
Jim 2ca0e7cc1a
Merge pull request #7112 from GeorgesStavracas/gbsneto/more-yami-consistency
More Yami consistency and cleanups
2022-08-24 08:31:18 -07:00
Georges Basile Stavracas Neto 20892a172d UI: Force expand.svg in menu arrows
This should fix the inconsistency in macOS.
2022-08-24 05:47:04 -07:00
Georges Basile Stavracas Neto bf035f5b67 UI: Increase QGroupBox title padding
So that it matches the padding declared just a few lines above.
2022-08-24 05:47:04 -07:00
Georges Basile Stavracas Neto faefd6cb54 UI: Unify context menus
- Make context menus match list style
 - Add padding around menus, like lists
2022-08-24 05:47:04 -07:00
Georges Basile Stavracas Neto fd6633f74d UI: Cleanup QMenu QSS
Trivial cleanup. The same selector was declared twice in every file.
2022-08-24 05:47:04 -07:00
Georges Basile Stavracas Neto 2403dd70f4 UI: Unify all border radii
Make the border radius value of combo boxes, entries, and toolbar
buttons consistent at 4px.
2022-08-24 05:47:04 -07:00
PatTheMav 2bb0818fb4 libobs: Use system header notation for pthread.h include
Using a relative path for the pthread.h header by w32-pthreads breaks
compilation of plugins which include threading.h from libobs (as
w32-pthreads will exist at a different location relative to the
libobs header).

As w32-pthreads (and its include directory) is added to the libobs
target by CMake, the pthread.h header will be found even when using
system header notation.

Fixes https://github.com/obsproject/obs-studio/issues/7155
2022-08-24 05:40:37 -07:00
Chris 7c36cba065 obs-ffmpeg: Change AMF bitrate to kbps
Move multiplication to when its passed to the encoder, so that bitrate
is kept in kbps. Changed for both for H264 and HEVC. Other encoders
(x264 and NVENC) already display bitrate in kbps in the log,
so it makes sense to mimic this with AMF. It's difficult to tell the
exact bitrate with bps.
2022-08-24 05:34:21 -07:00
Richard Stanway ac55328e7f UI: Simplify multiview projector removal 2022-08-24 05:33:47 -07:00