The "Custom" service has been moved, and is now an item called "Custom"
in the "Services" combo box. This simplifies the stream page of
auto-configuration and removes an unnecessary widget. Overall a minor
but nice slimline/improvement on user experience.
This change means that the modified callback for a scripts properties is
always called when first loaded or on a reload. This behavior matches
the properties view for sources, where all modified callbacks are called
when the window opens. This change therefore treats reloading as
equivalent to reopening.
The first audio track was not recorded following the API changes for
custom ffmpeg recording (adding multi-track support).
This fixes the issue (spotted by EposVox, thanks to him for the report).
* UI: Fix mem leak with projectors
* UI: Fix mem leak with ScaleFilteringMenu
* UI: Fix mem leak with sourceProjector
* UI: Fix leak with preview projector in Source menu and Preview
* UI: Fix mem leaks with background color menu
* UI: Fix leak with deinterlace Menu
* UI: Fix leak with scene transition override menu
* UI: Fix leak with scene projector menu
* UI: Fix leak with filter shortcut in Main
* UI: Fix leak with filter shortcut in stats
Fixes the narration reading (for the blind) for items in the sources
list; previously they would not be read due to the new custom model.
This issue is solved by returning the name of item in the form of a
QVariant of a QString returned from the QAbstractItemModel::data virtual
function when the Qt::AccessibleTextRole role is used.
Although log files are saved with the date in the name of the log file,
it's also nice to be able to see it inside the log file itself,
especially when uploaded to a text service.
On Linux the preview widget scaling uses only the integer part of the
scale. This results in a partially non-repainting window that looks
buggy and annoying.
A mono input with surround output is upmixed by swresampler by routing
it to FC (front center) by default which corresponds to third channel
for 3.0, 4.0, 4.1, 5.0, 5.1, 7.1. (The other channels are muted.)
But the volume meters are set to show the first channel for mono sources.
Therefore although audio is processed, it would not show on the meter.
This fixes this display issue.
Closesobsproject/obs-studio#1540
Fixes an issue when it's hard to perform drag-by-mouse move of the
scrollbar while handle is at corner and has minimum size.
Info: the handle minimum size styled as 20px, while add/sub-line is
14px, thus only 6px left for mouse drag when handle resides at corner.
While handle styled to cover whole bar including, subcontrol elements,
it is better to remove the hidden subcontrols completely.
If there's a delay, it will *also* be ommitted after the appropriate
number of seconds.
I was originally going to add a new event for this, however this is
consistent with STREAMING_STARTING, which is emitted at the start
of the delay, not the end.
The UI currently is dependent on browser source files being present,
when in actuality the files may not have been fetched (i.e. not fetching
submodules). This fixes that by using a macro to detect whether it's
available or not.
Closesobsproject/obs-studio#1490
Fixes an issue with horizontal scrollbar when it was hard to drag it by
mouse in Acri theme, because active area was thinner than the visible
scroll handle.
Fixes an issue when it was hard to drag by mouse the scroll handle in
Dark theme if scroll handle size is close to full size
(https://obsproject.com/mantis/view.php?id=466) or close to minimal
size.
Also, the mouse pointer was misaligned to the scroll handle when
moving: the scroll handle always moves faster than mouse pointer itself
and finishes first.
On KDE and Unity some QT events aren't triggered as explicit stated
by QT doc. This is needed to at least show a fixed Context Menu.
Closesobsproject/obs-studio#1252
The stats dock was incorrectly added to the .ui file, causing the stats
dock to show by default on startup, and just generally causing a bad
default startup UI appearance. This fixes that by adding the stats dock
programmatically/dynamically instead of modifying the .ui file.
This changes the remux dialog to support a collection of input/output
pairs, presented as a QTableView. Standard Qt icons are used to
indicate the state of each entry during a remux operation. Drag/drop
support is added to populate the list quickly. Both Dark and Rachni
themes are updated to make QTableView look reasonable.
Relevant text is added in the localization files.
Closesobsproject/obs-studio#1153
Makes Visual C runtime libraries consistent across
Debug/MinSizeRel/Release/RelWithDebInfo, rather than just changing those
flags for RelWithDebInfo. Also adds /Zl for statically linked
libraries.
Closesobsproject/obs-studio#1421
Variables path and dir with the same declared size triggers a compiler
warning about possible truncation. Although, depending on the path
where profiles are stored, its still possible to go beyong the declared
size and the path will be invalid. This will not trigger any
compilation warning and all invalid paths will be cought by the already
check in the os_glob function.
OBS Studio currently does not support retina rendering for any of the
images in the app. This adds support for retina pixmap rendering as
well as adding higher resolution versions of each icon that was not
a high enough resolution to support 2x. The icons work when switching
themes and will only render the 2x versions when the device pixel
ratio is greater than or equal to 2.
I also added credits to the readme for images that were already being
used that require credit to the author. If the OBS community has
paid for these images already, I can remove the credits from the
readme. The credit is for the invisible, visible, and gear icons.
It would only check whether it should download a package if the 32bit
version existed. This would cause it to not download all files
correctly to update 64bit installs (post 22.0.1).
Fixes a bug where removing quick transitions with no hotkey would
unintentionally remove the "start streaming" hotkey. Hotkeys must be
initialized to OBS_INVALID_HOTKEY_ID (-1) instead of 0. Hotkeys should
really be one-based rather than zero-based.
This was triggered by openning a fullscreen projector and trying to alt
tab. The projector was still on top but the first click on a KDE system
was returning a NULL activeWindow.
Normally on macOS, scrollbars are supposed to appear/disappear as you
scroll, but they would be on top of the content you're scrolling.
However, Qt has a bug where if you apply a custom theme to scroll bars,
they no longer disappear. This causes things under the scrollbar (such
as the lock icons in the sources list) to disappear under the scrollbar,
because macOS normally expects those scrollbars to face out. This fixes
that issue by adding a space to the end of the sources list box items to
allow space for the scrollbar.
In commit 57f8c5e3, a stretch spacer was put in to the filter window UI,
which was meant to be used when there's no video for the source.
However, it was always put in, and would stretch the layout even when
there was video. This fixes that issue by only inserting a stretch
spacer when there's no video for the source.
When a user adds an item (either by adding or copying an item), select
it. Fixes a bug with copying and pasting sources where the pasted
source will not have the copied transform applied to it.
Due to reports of issues with Windows 7, if the user is on windows
version 7 or below, set the default for "Browser Source Hardware
Acceleration" to false instead of true. This ensures optimal user
experience and still allows those who had it working to continue using
it if they so choose.
Exact cause for this issue on Windows 7 is currently unknown.
This is a weird one. On KDE just clicking in the options or right
clicking the empty space areas of the mixer dock would trigger a layout
change.
This fixes mantis #1256
Sub-items would incorrectly calculate as having bounds of {0,0} - {0,0}
because it did not enumerate group sub-items, so group sub-items would
not snap correctly. This fixes group sub-item snapping so that bounds
of group sub-items are calculated, transformed by their group, and added
to the snapping boundary. Bounds of group sub-items will now snap as
though they were normal items.
The ability to use multiple separate QSV encoders was added in Pull
Request #1341 (commit 3a08e858a6).
This error message was left in place, so let's remove it now.
This hides the dock icon when minimizing OBS to the tray on OSX. This
also fixes the bugs with minimizing on startup (and hides the dock icon
correctly in that case as well).
Closesobsproject/obs-studio#1430
If a group's sub-item is selected in the list box and you select the
group via the preview, the sub-item would be deselected, but that
deselection would not be applied to the sub-item in the list box despite
being deselected.
When a group's transform was scaled down, that scale would not apply to
grabbing the handles of sub-items, so the "handle radius" would
incorrectly be miscalculated (the handle radius calculation for the
sub-item would be scaled down by the parent's scaling, making it too
small to grab). Instead of calculating relative to the current parent,
this fixes the issue by operating in screen space at all times.
Fixes a design flaw where if renaming a source, the source's name would
revert if you de-focused (clicked away) from the rename edit widget.
Instead, the functionality for revert should really only just be when
the user presses the Escape key.
Allows the ability to specify release candidate versions in the
whatsnew.json in order to allow startup information dialogs to be
displayed to the user which are specific to release candidates.
This commit explicitly puts "32-bit" in the title bar and OBS log for
32-bit versions of OBS. It also changes "64bit" to "64-bit" to match the
string used for Windows version info.
QNetworkReply was added here in commit
5ba8b09c9c. Qt5Network was replaced in
commits 13bed1a448 and
39d1cda4e9, but this one line referring to
QNetworkReply remained. Let's finally remove it.
This commit adds the ability to select a background color for a
scene-item, whether it's a custom color or one of eight presets.
As this is an initial implementation, it lacks theme customizability,
and it also lacks the ability for the user to set their own preset
colors, so only the hard-coded 8 are available.