0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 13:08:50 +02:00
Commit Graph

93 Commits

Author SHA1 Message Date
Clayton Groenveld
5a5efa0b3e UI: Add preview/program labels in studio mode 2019-03-03 22:38:23 -06:00
jp9000
01c78bffc5 UI: Do not display threaded message boxes on startup
The message boxes that tell you that the browser is initializing or that
you're authenticating with twitch are annoying on startup.  It makes
sense to do it in the settings/autoconfig dialogs where you sort of need
to know what's going on while waiting for it to connect, but on startup
it's not really necessary and can be kind of annoying.
2019-02-20 17:35:02 -08:00
jp9000
d17ee20863 obs-frontend-api: Make a few frontend API thread-safe
Additionally, check for null output handlers.
2019-02-18 19:28:26 -08:00
jp9000
9fee895359 UI: Use hardware encoding by default if available
If the user doesn't use the auto-configuration on first use, set the
default encoders used in simple output mode to hardware encoders.
2019-02-07 17:00:46 -08:00
jp9000
67bb8d7028 UI: Add auth. support to settings/autoconfig
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).
2019-02-07 14:47:16 -08:00
jp9000
08fb29a035 UI: Add Auth and OAuth classes
Allows the ability to authenticate to a specific service.  Typically via
OAuth.
2019-02-07 14:47:15 -08:00
jp9000
1b8bc55f6a UI: Add func to load browser/cookies, but show dialog
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.
2019-02-07 14:47:15 -08:00
jp9000
fe043f2b2a UI: Add per-profile browser panel cookie management
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).
2019-02-07 14:47:15 -08:00
jp9000
dcf48e8ffc UI: Add function for adding extra docks to main window 2019-02-07 14:47:02 -08:00
jp9000
b89c2b76d3 UI: Add function to get main window more easily
Adds OBSBasic::Get() to just quickly return the main window.
2019-02-07 14:47:01 -08:00
pkv
62fa2b0086 UI: Fix a series of mem leaks (#1614)
* 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
2019-01-30 20:33:15 -06:00
Terje Gundersen
8b98568bbc UI: Don't transition if already transitioning (studio mode)
Closes obsproject/obs-studio#1304
2018-10-01 19:37:33 -07:00
Jim
e08e3c9c29
Merge pull request #1441 from cg2121/auto-remux-refactor
UI: Add option to auto remux
2018-09-21 15:47:46 -07:00
cg2121
7f9109091d UI: Add ability to resize output based on source size 2018-09-18 23:13:12 -05:00
cg2121
2fedcab987 UI: Add option to auto remux 2018-09-18 20:55:12 -05:00
Shaolin
823c34f848 UI: Fix system tray context menu creation
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.

Closes obsproject/obs-studio#1252
2018-09-16 16:25:17 -07:00
jp9000
e51adb0fdf UI: Undo/fix stats dock changes to main window
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.
2018-09-16 12:47:21 -07:00
Marvin Scholz
8c4b496ea0 UI: Add 4th aux audio input device
Closes obsproject/obs-studio#1343
2018-09-15 12:34:53 -07:00
cg2121
36b0ef5b7e UI: Add about dialog 2018-09-07 06:08:31 -05:00
jp9000
f239740d7b UI: Make sure quick transition hotkey is not zeroed
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.
2018-08-29 09:36:19 -07:00
Ryan Foster
3f7458fe51 UI: Remove QNetworkReply from window-basic-main.hpp
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.
2018-08-05 01:44:12 -04:00
jp9000
16ead25dd3 UI: Add ability to join discord server from help menu 2018-08-01 18:41:57 -07:00
VodBox
0dca4318b2 UI: Add Color Coding to Source Tree Widget
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.
2018-08-02 08:23:12 +12:00
jp9000
b6665f9cc0 UI: Use QScopedPointer (not QPointer) where applicable
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.

Closes obsproject/obs-studio#1367
2018-07-31 21:14:52 -07:00
cg2121
8f4edede4a UI: Add confirmation dialog if there are no sources
This adds a confirmation dialog for streaming or recording if
there are no sources.

Closes obsproject/obs-studio#1344
2018-07-31 04:28:43 -07:00
jp9000
a032bcc798 UI: Add intro startup page (windows)
Allows the ability to show a web page via CEF to the users on startup to
present and announce new features.
2018-07-29 23:32:23 -07:00
jp9000
573d5719d8 UI: Fix signals for sub-items of groups
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.
2018-07-16 19:03:34 -07:00
jp9000
256b7b793d UI: Add OBSBasic::SavingDisabled() function 2018-07-16 19:03:34 -07:00
Colin Edwards
618a1c5faf UI: Add frontend event for when OBS finishes loading 2018-06-26 22:14:05 -05:00
Jim
446dc9fd4b
Merge pull request #1310 from vokama/updated-hotkey-names
libobs, UI: reset hotkey description on target rename
2018-06-16 23:09:06 -07:00
Shaolin
d7fd29351f UI: Fix mixer dock widget minSize being too big
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.
2018-06-12 23:25:38 -03:00
vokama
54ab27bda6 UI: Update hotkey label on quick transition rename 2018-06-05 01:38:19 +03:00
jp9000
88b6c63964 UI: Add grouping 2018-06-04 04:01:39 -07:00
Shaolin
c7c328dc83 UI: Add Vertical Mixer option 2018-05-19 00:17:58 -03:00
Ilya Melamed
c768f703ad UI: Add obs_frontend_add_scene_collection API call
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)

Closes obsproject/obs-studio#1232
2018-05-04 15:40:53 -07:00
Ilya Melamed
2d9691fc23 UI: Use "source_create" to add scenes to listbox
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.

Closes obsproject/obs-studio#1226
2018-05-04 11:47:54 -07:00
Tjienta Vara
b0f94afaf2 libobs, UI: Add true peak measurements
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.

Closes obsproject/obs-studio#1189
2018-04-30 03:53:26 -07:00
Cephas Reis
ef41dc53e8 UI: Change remux dialog to be non-modal
Closes obsproject/obs-studio#1266
2018-04-25 06:30:00 -07:00
Jim
7481f5b389
Merge pull request #1195 from admshao/fix-save-projectors-on-exit
Save Windowed Projectors on exit
2018-04-18 19:33:49 -07:00
jp9000
34c14829b6 UI: Defer startup OBSBasic::Load (macOS CEF workaround)
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.
2018-04-12 13:42:15 -07:00
Ilya M
439b9e4d15 UI: Add frontend API to defer saving
Allows the ability to perform multiple actions that would normally save,
and defer the save until all of those actions are complete.

Closes obsproject/obs-studio#1231
2018-04-06 17:34:10 -07:00
Shaolin
8b6641d1a8 UI: Clean up OBSProjector creation 2018-03-18 05:11:44 -03:00
Shaolin
76af4ff36d UI: Clean up save and load projector code 2018-03-18 05:11:44 -03:00
Shaolin
abbcb6ae88 UI: Move ProjectorType enum to projector header 2018-03-18 05:11:44 -03:00
jp9000
3b64610717 UI: Add Help -> Crash Reports submenu
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.
2018-03-16 16:27:49 -07:00
jp9000
341bd9bcec UI: Add subdir param to OBSBasic::UploadLog
Allows the ability to get log files from other configuration
subdirectories (i.e. "%appdata%/obs-studio/crashes")
2018-03-16 16:22:37 -07:00
Shaolin
229feefbb9 UI: Refresh multiview projector menu per click 2018-03-15 04:24:20 -03:00
jp9000
bd0983a89e UI: Add simple output mode encoder fallback
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.
2018-01-20 13:58:02 -08:00
Shaolin
53d936c5dc UI: Add audio meter decay rate option
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)

Closes jp9000/obs-studio#1143
2018-01-19 05:49:21 -08:00
Joel Bethke
2959b22bfb UI: Add help portal link to help menu 2018-01-05 15:20:39 -06:00