Adds the ability to connect/login to an account via the settings and
auto-configuration dialogs. Checks registered Auth objects, and if the
Auth object matches the currently selected service in the settings
window or auto-configuration dialog, will display "connect account"
buttons for the user to be able to click (which are optional, they can
still use stream keys if they'd prefer).
Adds a function for initializing browser and cookies in a separate
thread while, and while waiting for it to complete, show a dialog
stating that the browser is currently being loaded. Allows the ability
to safely prevent the user from taking any action without actually
freezing up the UI thread.
Allows the ability to switch cookies between profiles. Allows the
ability to, for example, switch streaming service accounts between
profiles for proper access to the pages displayed by the browser panels
(such as chat windows).
* 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
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.
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.
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.
Contrary to what the name would have you believe, QPointer<> is not used
to delete a pointer when it leaves its specific scope. Instead, it's
used to check to see if the pointer is still valid. For most
QWidget-based objects, this is actually fine because QWidgets that are
assigned to layouts or other widgets will automatically be destroyed --
however, for non-widget objects, this can cause a memory leak.
This patch replaces QPointer with QScopedPointer where applicable to
prevent memory leaks.
Closesobsproject/obs-studio#1367
Because sub-items of groups can no longer reroute their signals to the
parent scenes of groups, delegates removal handling to SourceTreeItem
instead of OBSBasic.
When the vertical volume meter was introduced it set in the OBSBasic.ui
mixer dock definition a min width/height that was valid for both
widgets. QStackedWidget hints the minimum size as the higher w/h
of its children so this workaround is necessary.
Allows the ability to add a new scene collection via the frontend API.
Blocks until the scene collection has been successfully added to ensure
synchronization between the calling thread and the UI thread.
(Jim: Added detailed description to commit message)
Closesobsproject/obs-studio#1232
Instead of manually having to call AddScene each time a scene needs to
be added, use the "source_create" global OBS signal to detect when a
scene has been created, and add the scene to the list automatically.
Allows the ability to add scenes to the main user interface via libobs
API.
Closesobsproject/obs-studio#1226
Add a new algorithm to calculate the true-peak. It implements the
Whittaker- Shannon interpolation from four samples to create 4
intermediate samples (5 x oversampling) inbetween the middle two
samples.
With 4 samples and 4 intermediate samples the algorithm can be
implemented as a 4x4 vector-matrix cross product, which is ideal for
SSE.
I've also replaced the sample-peak algorithm using SSE as well to
improve performance.
Closesobsproject/obs-studio#1189
Adds an alternative means of isolating the CEF initialization process
from Qt's initialization process. This is an unpleasant hack, but is
far more preferable than isolating the entire browser plugin to a
separate process and overly complexifying the browser plugin to the
point to where no one wants to touch the plugin or contribute to it.
Allows the ability to perform multiple actions that would normally save,
and defer the save until all of those actions are complete.
Closesobsproject/obs-studio#1231
Adds the ability to upload crash reports, making it easier for users to
give us crash data. This should be considered a temporarily solution,
as automated crash reporting should be the ideal solution as soon as
time permits.
Prevents simple output mode from getting stuck on an encoder that may
not be available suddenly for whatever reason (system device changes,
driver issues, etc). If the encoder is no longer available, falls back
to x264 to ensure that the user can continue to use the program.
The decay rate of the audio meters can now be selected in the audio
settings. The values are:
- "Fast" (OBS default, 40 dB / 1.7s)
- "Medium" (Type I PPM, 20 dB / 1.7s)
- "Slow" (Type II PPM, 24 dB / 2.8s)
Closesjp9000/obs-studio#1143
Jim note:
- Refactored code significantly
- Added a context menu option to exclude specific scenes from projectors
- Made it so multiview projectors update when scenes are
added/removed/renamed
- Increased text quality
- Removed the color sources and replaced them with simple solid
rectangles
- Increased the border size of "program" and "preview" scenes in the
lower scene list
Closesjp9000/obs-studio#1068
If a preview projector was created in normal mode, it would become a
studio projector in studio mode. The window title of the window
projector would reflect that it was in fact a preview projector and not
a program projector.
Allows the ability to override what specific transition a scene may use
when transitioning to it.
(Original proposal by cg2121, reworked by Jim)
Closesjp9000/obs-studio#1052