Commit Graph

514 Commits (master)

Author SHA1 Message Date
Gol-D-Ace 973bc481ce Update translations from Crowdin 2019-06-11 01:42:42 +02:00
jp9000 8cfe219abf UI: Make two-auth message a bit friendlier 2019-06-03 09:24:28 -07:00
jp9000 16edcd991a UI: Use better link for Twitch two-factor warning 2019-06-03 09:16:33 -07:00
Jim f14856a8d0
Merge pull request #1909 from SCG82/fix-settings-list
UI: Fix output icon size. Add padding to settings list items
2019-06-01 17:54:24 -07:00
jp9000 6272409c49 UI: Add two-factor authentication warning for Twitch
Twitch will now return a 403 HTTP error code if you attempt to query
your stream key when your Twitch account does not have two-factor
authentication enabled.  This handles it a bit better and displays an
appropriate error message for users so they know where to go to enable
it.
2019-05-31 21:00:48 -07:00
SCG82 012f24099f UI: Fix output icon size. Add padding to settings list items 2019-05-31 18:51:34 -07:00
Matt Gajownik e751a7c411 UI: Revert Dark theme Scenes font change
This fixes a pixelated font on high-DPI
2019-05-29 09:32:07 +10:00
jp9000 973d31b8c2 libobs: Fix lockup when an encode call fails
(This commit also modifies the UI, obs-ffmpeg, and obs-output modules)

Fixes a long-time regression where the program would lock up if an
encode call fails.  Shuts down all outputs associated with the failing
encoder and displays an error message to the user.

Ideally, it would be best if a more detailed error could be displayed to
the user about the nature of the error, though the primary problem is
the encoder errors are typically not something the user would be able to
understand.  The current message is a bit of a generic error message;
improvement is welcome.

Another suggestion is to try to have the encoder restart seamlessly,
though it would take a significant amount of work to be able to make it
do something like that properly, and it sort of assumes that encoder
failures are sporadic, which may not necessarily be the case with some
hardware encoders on some systems.  It may be better just to use another
encoder in that case.  For now, seamless restart is ruled out.
2019-05-17 01:51:12 -07:00
Matt Gajownik 8fa404a186 UI: Dark theme consistency for Scenes vs Sources
- Selected but unfocused Source colour
- Scenes font
- Padding when editing Source name
2019-05-16 22:50:08 +10:00
Clayton Groeneveld c9b8c227ad UI: Remove unused hotkey qss items 2019-05-14 03:14:51 -05:00
Clayton Groeneveld 988d18c10b UI: Fix theme issues with hotkey icons 2019-05-14 03:14:46 -05:00
VodBox 16484e07e9 UI: Add Transition Previews
This commit adds a preview to the properties window for transitions.

The preview will play back the transition at the global transition
duration or the transitions fixed duration, between two private scenes
with an A and B label, and different background colors.
2019-05-12 21:13:21 -07:00
Clayton Groeneveld 03c9d930da UI: Change volume to dB in adv audio properties 2019-05-08 16:41:17 -07:00
Clayton Groeneveld b2e0d93990 UI: Use icons for hotkey buttons 2019-05-02 08:54:13 -07:00
Clayton Groeneveld e284289c56 UI: Improve look of Dark theme 2019-05-02 08:54:10 -07:00
Clayton Groeneveld 507cfe3ea0 UI: Fix theme issues with vis/lock checkboxes 2019-04-27 01:06:41 -05:00
James Park a86710ec5b libobs: Support limited color range for RGB/Y800 sources
libobs: Add support for limited to full color range conversions when
using RGB or Y800 formats, and move RGB converison for Y800 formats to
the GPU.

decklink: Stop hiding color space/range properties for RGB formats, and
remove "YUV" from "YUV Color Space" and "YUV Color Range".

win-dshow: Remove "YUV" from "YUV Color Space" and "YUV Color Range".

UI: Remove "YUV" from "YUV Color Space" and "YUV Color Range".
2019-04-25 15:13:05 -07:00
Clayton Groeneveld 2ca71fc9d6 UI: Fix group checkbox icons not working in Dark theme 2019-04-22 06:21:28 -05:00
Clayton Groeneveld 189e48835d UI: Change icons to svg
This changes all of the icons from png to svg. With svgs, scaling is
unlimited. With the svgs, the issue of the @ symbols with the Windows
updater is no longer an issue.

I changed the colors of the icons to a light gray (#d2d2d2), in the
dark themes, because I thought they looked better with this color.

The mute, unmute, plus, minus, up, down and expand icons are from the
Feather Icons set. https://feathericons.com/

The visibility icon is from the Octicons set. https://octicons.github.com/

The locked and unlocked icons are from the Open Iconic set.
https://github.com/iconic/open-iconic
2019-04-22 01:50:03 -07:00
Jim 7925ac1402
Merge pull request #1747 from cg2121/recording-time-left
UI: Estimate recording time left until disk is full
2019-04-21 06:55:33 -07:00
Gol-D-Ace 3a01fefe1e Use proper capitalization for string
Windows is a product name in this case.
2019-04-19 05:38:21 +02:00
SuslikV e2be33956b UI: Correct custom property implementation
- Fixes Q_PROPERTY macro syntax
- Removes excessive notification declaration and slot
- Removes unneeded dynamic property
- Improves Themes versatility
2019-04-17 07:10:12 -07:00
Clayton Groeneveld 171f811669 UI: Estimate recording time left until disk is full 2019-04-14 22:45:31 -05:00
Jim 3a05466baf
Merge pull request #1760 from Vainock/master
Improve locales
2019-04-14 05:00:31 -07:00
Clayton Groeneveld e89283d172 UI: Add hotkey to toggle preview 2019-04-14 04:51:34 -07:00
Jim d14fa715e8
Merge pull request #1641 from WizardCM/move-settings
UI: Refactor Audio Settings UI and move Monitoring Device from Advanced
2019-04-14 04:10:15 -07:00
Colin Edwards ff72e9efc3 UI: Show a message in the empty source list 2019-04-12 04:17:39 -07:00
Jim 820385cf6a
Merge pull request #1817 from Gol-D-Ace/remove-double-spaces
Remove double spaces from localization
2019-04-08 23:50:09 -07:00
Clayton Groeneveld 977dea4ff0 UI: Add ability to center items vertically/horizontally 2019-04-08 22:52:39 -07:00
Clayton Groeneveld 94b3f80305 UI: Rename Default theme to System
The system theme was named Default even though the default theme is Dark.
This addresses that by renaming Default.qss to System.qss. I've made it
backwards compatible so users already using this theme are not affected.

The theme list now shows up as:
-System
-Dark (Default)
-Acri
-Rachni

I have also made it so that you can specify the default theme in the
UI config file.
2019-04-08 19:56:56 -05:00
Gol-D-Ace 9fc1069e9b Remove double spaces from localization 2019-04-08 16:02:32 +02:00
Jim a345b50966
Merge pull request #1807 from SuslikV/patch-14
UI: Fix incorrect padding usage in Rachni theme
2019-04-06 16:44:11 -07:00
Gol-D-Ace e78ac5ebef Update translations from Crowdin 2019-04-04 16:19:51 +02:00
SuslikV 2990a83c09
UI: Fix incorrect padding usage in Rachni theme 2019-04-04 09:59:03 +02:00
Clayton Groeneveld e321005b02 UI: Fix issue where space/esc hotkeys would be blank
This also modifies libobs.

This only happened on Linux.

Fixes https://obsproject.com/mantis/view.php?id=1018
2019-03-31 05:10:02 -05:00
Matt Gajownik 31d3669154 UI: Refactor Audio Settings tab structure
- Now uses a QVBoxLayout with a QScrollArea for the container
- Uses QGroupBox for each section
- Moved Monitoring and ducking settings out of the Advanced tab
- Push-to hotkeys are no longer in a child scroll area
- Renamed device labels for consistency
2019-03-31 17:37:36 +11:00
Vainock d38f45ba2d Improve locales 2019-03-20 21:50:35 +01:00
James Park 8b1d701b27 UI: Remove Area downscale filter option
Originally added for completeness but wasn't actually implemented
correctly. Can be added back later if desired.
2019-03-14 10:05:50 -07:00
Colin Edwards 5c16a96770
Merge pull request #1715 from jpark37/area-filter
Add "Area" scale filter
2019-03-13 23:30:25 -05:00
Vainock a99f71ef1c Adjust locales for better consistency 2019-03-12 06:27:47 +01:00
Colin Edwards 0377a34095
Merge pull request #1725 from derrod/bwtest-cbox
UI: Add checkbox for Twitch bandwidth test mode
2019-03-11 23:37:23 -05:00
derrod 4595d49e98 UI: Add confirmation dialog for bandwidth test mode 2019-03-10 08:37:29 +01:00
Colin Edwards 5b9e96c15b
Merge pull request #1584 from cg2121/settings-icons
UI: Redo settings icons
2019-03-09 18:49:05 -06:00
Clayton Groeneveld 4b64aef555 UI: Change HDD to Disk in locale 2019-03-09 03:25:01 -06:00
derrod 51bfb9d899 UI: Add checkbox for Twitch bandwidth test mode 2019-03-09 02:54:41 +01:00
James Park 7d811499e0 Add "Area" scale filter
This new scale filter computes pixels by weighing the coverage area of
source pixels over the target pixel. This algorithm works well for both
upsampling and downsampling, but was mainly designed to upscale
high-quality low-resolution sources like RGB/HDMI retro consoles. I've
heard of people using odd workarounds like scaling up to very high
resolutions before scaling back down to preserve pixel shartpness. This
algorithm directly addresses this use-case in a much more direct
fashion.

The Area scale filter does a better job of preserving the thickness of
thin features than the Point filter.

The Area scale filter does not look at source pixels that lie outside
of the target pixel, leading to a much sharper image than Bilinear,
Bicubic, and Lanczos filters.

This filter should interpolate pixels in linear space, but OBS is not
equipped to do that at the moment.

libobs: Add GPU effect, and wire up scene serialization.

obs-filters: Add Area as an option for scale_filter.

UI: Add Area as an option for both scene items, and canvas downscaling.
2019-03-06 20:53:15 -08:00
Alex Anderson 7e23d1b63e UI: Add Twitch Activity Feed
Closes obsproject/obs-studio#1721
2019-03-06 14:28:49 -08:00
Clayton Groeneveld 80875768ad UI: Redo settings icons 2019-03-05 19:54:12 -06:00
Clayton Groeneveld b40d000648 UI: Add (Do not show again) checkbox to dock closing warning
Closes obsproject/obs-studio#1717
2019-03-05 15:33:03 -08:00
jp9000 4450843aa0 UI: Warn when closing dock widgets for first time
Users don't realize that dockable windows can be closed (hidden) and can
be shown again via the View menu.  This adds an explicit warning when
the user first closes a dockable window for their first time.  In future
versions, this should be changed to a dialog box with a "Do not show
again" checkbox.
2019-03-05 14:39:24 -08:00
Colin Edwards ed374645aa
Merge pull request #1703 from cg2121/preview-program-labels
UI: Add preview/program labels in studio mode
2019-03-03 22:42:38 -06:00
Clayton Groenveld 5a5efa0b3e UI: Add preview/program labels in studio mode 2019-03-03 22:38:23 -06:00
derrod 89fbc5449e UI: Show video container warning when selecting MOV
MOV and MP4 are closely related and the warning message applies to both
of these container formats.

Closes #1683
2019-03-02 23:28:50 -06:00
pkv f1cd604b62 UI: Fix locale for 'disabled' devices in audio settings 2019-02-25 23:06:10 +01:00
jp9000 8181f77609 UI: Rename a bunch of bad file names 2019-02-25 12:19:22 -08:00
Gol-D-Ace 98f78fe3a7 Update translations from Crowdin 2019-02-25 15:11:33 +01:00
Gol-D-Ace d5e7ba511d UI: Refine strings for About dialog 2019-02-25 00:28:08 +01:00
Gol-D-Ace ec42739ad5 Update translations from Crowdin 2019-02-24 23:26:47 +01:00
Colin Edwards 0170278ae2 UI: Fix scene list text edit sizing on dark theme 2019-02-20 20:24:55 -06:00
Gol-D-Ace c3711bdd5e Update translations from Crowdin 2019-02-20 22:26:07 +01:00
Jim 6378a77a82
Merge pull request #1663 from Vainock/patch-3
UI: Remove unused "Beta" texts
2019-02-17 15:30:18 -08:00
Vainock ee27d19390 UI: Fix inconsistent use of ellipsis
Closes obsproject/obs-studio#1660
2019-02-17 15:27:20 -08:00
jp9000 066c11c307 UI: Add back auth for custom RTMP servers
This was a feature that was available when you chose custom RTMP server;
it was not considered when making the new version.  Note: it looks
unslightly, but it works for now.
2019-02-14 23:12:55 -08:00
Vainock 63de5c78fb
UI: Remove unused "Beta" texts
Release 22.0.2: - Removed the "Beta" warning from the Auto-Configuration tool
The texts that the Auto-Configuration tool is in beta remained.
2019-02-14 20:55:08 +01:00
jp9000 83f0b98387 UI: Fix encoder preset locale text 2019-02-11 16:58:45 -08:00
SuslikV a497d22659
UI: Add missing text string for Remux dialog 2019-02-11 18:48:36 +02:00
Warchamp7 b9510dac52 UI: Adjust Acri and Rachni themes
Various tweaks and adjustments to Acri and Rachni for 23.0

Closes obsproject/obs-studio#1652
2019-02-09 00:16:16 -08:00
VodBox f095cb2d0e UI: Add scene item canvas overflow to preview 2019-02-08 20:38:53 +13:00
jp9000 a88b440290 UI: Add Twitch integration 2019-02-07 16:28:19 -08:00
jp9000 4710c04204 UI: Add Mixer integration 2019-02-07 16:28:19 -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 24bcfacea5 UI: Improve/refactor autoconfig/settings service UI
Makes it so that services can have custom handling on a per-service
basis.  The bottom part of the service pane is now a stacked widget
which can now be customized for different types of services
(particularly OAuth services).
2019-02-07 14:47:02 -08:00
jp9000 dcf48e8ffc UI: Add function for adding extra docks to main window 2019-02-07 14:47:02 -08:00
jp9000 c482f463e0 UI: Remove "service type" from auto-config stream page
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.
2019-02-05 18:45:05 -08:00
SuslikV 7656ee95db
UI: Remove scrollbar line controls for Dark theme
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.
2018-10-26 18:46:24 +02:00
Clayton Groeneveld e8687b0965 UI: Fix typo with resize output text 2018-09-27 18:46:41 -05:00
Clayton Groeneveld b85f9236d8 UI: Change resize output text
The text for resizing the output based on source is inaccurate
because base and canvas are the same thing.
2018-09-23 20:42:05 -05: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
SuslikV a6c8cdec00
UI: Fix scrollbar misalignment for Acri theme
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.
2018-09-17 14:41:46 +02:00
SuslikV ac783946d0
UI: Fix scrollbar handle alignment for Dark theme
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.
2018-09-17 14:29:29 +02:00
Marvin Scholz 8c4b496ea0 UI: Add 4th aux audio input device
Closes obsproject/obs-studio#1343
2018-09-15 12:34:53 -07:00
nleseul 797b3dc121 UI: Batch remux and drag/drop support on remux dialog
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.

Closes obsproject/obs-studio#1153
2018-09-14 02:04:28 -07:00
Jim 4659efc791
Merge pull request #1486 from cg2121/about-dialog-styling
UI: Change about dialog bottom color (light theme)
2018-09-13 19:53:03 -07:00
Clayton Groeneveld 11cd83edf5 UI: Change about dialog bottom color (light theme)
This changes the bottom area color for the about dialog
for the light theme. This color makes it more consistent
for the theme.
2018-09-13 19:46:11 -05:00
Jim 179239b471
Merge pull request #1450 from WizardCM/dark-theme-updates
UI: Dark theme padding and alignment fixes
2018-09-13 01:09:50 -07:00
cg2121 0ae8a7c0ac UI: Add ability to style preview background color 2018-09-10 04:55:15 -05:00
Matt Gajownik 643b2538d7 UI: Dark theme padding and alignment fixes 2018-09-10 19:03:14 +10:00
Jim 8e53932afd
Merge pull request #1406 from VodBox/hotkey-search
UI: Add Search to Hotkeys settings menu
2018-09-10 01:08:38 -07:00
VodBox 22f6d3fea5 UI: Add Filter to Hotkeys settings menu
This commit adds a filter bar to the top of the hotkeys settings menu,
with it set to look for matches anywhere in the string label for that
hotkey.
2018-09-10 09:31:04 +12:00
Jim 413e8e6a7b
Merge pull request #1442 from cg2121/stereo-audio-balancing
UI: Implement stereo balancing
2018-09-07 21:28:56 -07:00
cg2121 a4a7deeed6 UI: Implement stereo balancing 2018-09-07 09:27:14 -05:00
cg2121 8882cfc484 UI: Remove license agreement dialog 2018-09-07 06:08:31 -05:00
cg2121 36b0ef5b7e UI: Add about dialog 2018-09-07 06:08:31 -05:00
DungFu d70352a6ce UI: Add retina support and updated icons
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.
2018-08-31 23:00:23 -07:00
Ryan Foster e7a961e0c3 UI: Remove warning when using separate QSV encoders
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.
2018-08-17 23:35:31 -04:00
Gol-D-Ace 415b8a3197 Update translations from Crowdin
Missed one string.
2018-08-18 04:34:06 +02:00
Gol-D-Ace a79aaa28ab Update translations from Crowdin 2018-08-18 04:16:35 +02:00
Joel Bethke b58f5c7d4b UI: Update Acri theme 2018-08-17 12:16:20 -05:00
Joel Bethke 98b9f7036d UI: Fix dark theme link color 2018-08-16 16:46:22 -05:00
Joel Bethke 0cdd8fab32 UI: Update Rachni theme
Fixes a few small issues with the new SourceTree, warning/error
labels, and properties view colors.
2018-08-16 16:46:13 -05:00
jp9000 4d38e054e3 UI: Add adv. settings checkbox for browser HW accel
Adds a checkbox to advanced settings that allows the user to
enable/disable browser source hardware acceleration on windows.
2018-08-10 06:33:41 -07: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
Ryan Foster b5e0544c2b UI: Fix disabled items in Dark theme being too light
In the Dark theme, disabled UI elements had text that was too close in
color to enabled UI elements. This commit switches them to use the
"light" palette color instead of the "lighter" palette color.
2018-07-31 12:10:13 -04: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 e1ab9a0fc4 UI: Add ability to parse OBSStyle from qss
Adds the ability to set the current palette for the program via adding
"OBSTheme" objects to the qss files.  The values for the OBSTheme object
are the values used by QPalette::ColorRole.

Modifying the global palette allows the ability to easily/quickly look
up application theme colors (especially if you would like to use them
for QML), as well as the ability to fix the hyperlink color issue.  (On
dark themes, links would still be dark blue, causing them to be
difficult to see)
2018-07-21 19:14:36 -07:00
Joel Bethke 5f3464f9cc UI: Update Acri theme for disabled buttons 2018-06-27 19:04:49 -05:00
jp9000 88b6c63964 UI: Add grouping 2018-06-04 04:01:39 -07:00
Shaolin c145b129f3 UI: Add new Multiview Layout for up to 24 scenes
The variable name changes were done with the intent to ease the
abstraction of the scene, preview and program width/height size
so its not related with the canvas size but directly related with
our concept of scenes.
2018-05-20 23:20:52 -03:00
Shaolin b8966802ef UI: Add option to toggle multiview draw safe area 2018-05-20 23:20:52 -03:00
Shaolin 4649783b1e UI: Add option to toggle multiview scene names 2018-05-20 23:20:52 -03:00
Shaolin e0e2cc57a0 UI: Add option to toggle multiview mouse switching 2018-05-20 23:20:52 -03:00
Shaolin 2420d4d31d UI: Move multiview settings to its own groupbox 2018-05-20 23:20:52 -03:00
Shaolin a142261edd UI: Clarify multiview layout names 2018-05-20 23:20:52 -03:00
Shaolin c7c328dc83 UI: Add Vertical Mixer option 2018-05-19 00:17:58 -03:00
jp9000 051c58eeb7 UI: Add opt. to enable/disable in-focus hotkey blocking
Adds an option to enable/disable blocking hotkeys when the window is in
focus which is normally used in order to prevent hotkey/shortcut
conflicts.  This does not apply to the settings window; the hotkey
behavior is unchanged with the settings window (in order to prevent
hotkeys from being used while setting hotkeys for example).

Closes obsproject/obs-studio#1267
2018-05-06 17:14:04 -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
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
Gol-D-Ace 88282c168c Update translations from Crowdin 2018-03-15 09:00:28 +01:00
Warchamp7 0029bce7ae UI: Acri theme adjustments
Fixing a reference to Rachni theme folder, some minor tweaks and
reverting volume meter foreground colors to original brightness.

Closes jp9000/obs-studio#1169
2018-01-22 14:21:15 -08:00
jp9000 ee563f874f UI: Reduce size of "refresh" icons 2018-01-22 07:29:50 -08:00
Gol-D-Ace ae22886f67 Update translations from Crowdin 2018-01-22 04:55:52 +01: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
Richard Stanway bba37a7069 UI: Optimize theme PNG images (smaller files) 2018-01-19 08:24:09 +00:00
Warchamp7 303ba1dfbd UI: Add Acri theme
Closes jp9000/obs-studio#1150
2018-01-18 01:45:49 -08:00
Joel Bethke 5c5f4033ff UI: Fix tab bars for docked widgets in Dark theme 2018-01-13 18:22:17 -06:00
Colin Edwards ed917657eb UI: Fix qpushbutton menu icon
Closes jp9000/obs-studio#1141
2018-01-09 18:36:38 -08:00
Colin Edwards 3f5c28d631 UI: Style dock widgets in dark and rachni themes
Closes jp9000/obs-studio#1141
2018-01-09 18:36:31 -08:00
Jim e7aab8b4b8
Merge pull request #1128 from takev/volume-meters
UI: Rework volume-meters, adding more information
2018-01-07 13:57:21 -08:00
Jim 09049bdbc0
Merge pull request #1118 from admshao/multiview-click-to-change
UI: Add Click capabilities and Multiple Layouts to Multiview
2018-01-05 22:52:29 -08:00
Shaolin abc26b87fe UI: Add Multiview Layout Options 2018-01-05 19:26:30 -02:00
Joel Bethke 2959b22bfb UI: Add help portal link to help menu 2018-01-05 15:20:39 -06:00
Tjienta Vara 50ce228455 UI: Rework volume-meters, adding more information
The following features have been added to the audio-meters:
 * Stereo PPM-level meter, with 40 dB/1.7s decay rate.
 * Stereo VU-level meter, with 300 ms integration time.
 * Stereo Peak-hold meter, with 20 second sustain.
 * Input peak level color-squares in front of every meter.
 * Minor-ticks for each dB.
 * Major-ticks for every 5 dB.
 * Meter is divided in sections at -20 dB and -9 dB.

The ballistic parameters chosen here where taken from:
 * https://en.wikipedia.org/wiki/Peak_programme_meter (SMPTE RP.0155)
 * https://en.wikipedia.org/wiki/VU_meter

In the rework I have removed any ballistic calculations from
libobs/obs-audio-controls.c making the calculations here a lot more
simple doing only MAX and RMS calculations for only the samples in
the current update. The actual ballistics are now done by just
the UI/volume-control.cpp because ballistics need to be updated
based on the repaint-rate of the user-interface.

The dB to pixel conversion has been moved from
libobs/obs-audio-controls.c to UI/volume-control.cpp as well to reduce
coupling between these two objects, especially when implementing the
major- and minor-ticks and the sections.

All colors and ballistic parameters are adjustable via QT style sheets.
There are slight differences in colors for each of the themes.
2018-01-05 11:01:25 +01:00
Jim e1133f0982
Merge pull request #1121 from Fenrirthviti/theme-fixes
UI: Fix minor Rachni theme bugs
2018-01-04 19:35:51 -08:00
jp9000 4fd43f55fb UI: Add refresh/reload button icons 2018-01-03 17:04:03 -08:00
Joel Bethke c3badc4a54 UI: Fix minor Rachni theme bugs
The tab bars in the Rachni theme had an issue related to an attempted
property of qproperty-drawBase: 0 in the .qss file. This, in theory,
should have worked and removed the base of the tab bar, but there is a
bug that prevents this from consistently applying, as detailed here:
https://bugreports.qt.io/browse/QTBUG-2982

This fix removes that property, and adjusts the styling of the tabs
themselves for a more consistent experience. Tabs should no longer be
cut off or displayed improperly.

In addition, this also corrects an issue with the scene/source rename
QLineEdit field displaying improperly.
2017-12-23 21:31:04 -06:00
jp9000 8a38d8e60e UI: Move multiview options to view menu
Moves the multiview (fullscreen/window) options to the view menu to
reduce context menu clutter, and allow using it even when not in studio
mode.

Also adds missing translation strings.
2017-12-02 16:12:03 -08:00
Shaolin 721cb3dea5 UI: Add Multiview projector
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

Closes jp9000/obs-studio#1068
2017-12-01 12:14:02 -08:00
cg2121 60e1d7e90b UI: Implement per-scene transition overriding
Allows the ability to override what specific transition a scene may use
when transitioning to it.

(Original proposal by cg2121, reworked by Jim)

Closes jp9000/obs-studio#1052
2017-11-30 05:10:25 -08:00
Ryan Foster f140104da8 UI: Add Studio Mode layout option for portrait mode displays
This commit adds a checkbox to general setting to allow users to enable
a vertically oriented layout for studio mode.

This commit addresses mantis issue 827:
https://obsproject.com/mantis/view.php?id=827

Closes jp9000/obs-studio#1072
2017-11-28 22:24:57 -08:00
Ryan Foster 9fce162137 UI: Add Studio Preview Projector
This commit allows a user to create projectors for the preview scene
instead of the program/live scene.

Close jp9000/obs-studio#1071
2017-11-27 00:28:03 -08:00
cg2121 3a43a047d4 UI: Add transition on double-click studio mode option
This adds the ability to switch to a scene by double-clicking it when in
studio mode.

(Edit by Jim: In case this change is undesired by the user, this has
been changed to be an option in general settings; disabled by default)

Closes jp9000/obs-studio#1029
2017-11-26 19:05:50 -08:00
pkviet bbac3280c1 libobs: Add surround sound audio support
(This commit also modifies the following modules: UI,
deps/media-playback, coreaudio-encoder, decklink, linux-alsa,
linux-pulseaudio, mac-capture, obs-ffmpeg, obs-filters, obs-libfdk,
obs-outputs, win-dshow, and win-wasapi)

Adds surround sound audio support to the core, core plugins, and user
interface.

Compatible streaming services: Twitch, FB 360 live
Compatible protocols: rtmp / mpeg-ts tcp udp
Compatible file formats: mkv mp4 ts  (others untested)
Compatible codecs: ffmpeg aac, fdk_aac, CoreAudio aac,
		   opus, vorbis, pcm (others untested).
Tested streaming servers: wowza, nginx
	 HLS, mpeg-dash : surround passthrough
Html5 players tested with live surround:
	 videojs, mediaelement, viblast (hls+dash), hls.js
Decklink: on win32, swap channels order for 5.1 7.1
         (due to different channel mapping on wav, mpeg, ffmpeg)
Audio filters: surround working.
Monitoring: surround working (win macOs linux (pulse-audio)).
VST:	 stereo plugins keep in general only the first two channels.
	 surround plugins should work (e.g. mcfx does).
OS: win, macOs, linux (alsa, pulse-audio).
Misc: larger audio bitrates unlocked to accommodate more channels
NB: mf-aac only supports mono and stereo + 5.1 on win 10
         (not implemented due to lack of usefulness)

Closes jp9000/obs-studio#968
2017-11-26 03:41:53 -08:00
cg2121 e86754c2a0 UI: Add ability to rename audio sources from the mixer
This adds the ability for users to change the names of audio sources
from the mixer including desktop and mic/aux sources.

Closes jp9000/obs-studio#1055
2017-11-25 00:59:01 -08:00
nleseul d22a75401d UI: Make streaming/recording buttons checkable
This makes it so the buttons appear "pressed" while streaming/recording
to more visibly help indicate that they are currently active.

Closes jp9000/obs-studio#1039
2017-11-23 00:54:06 -08:00
jp9000 7bd06e7f26 Update translations from Crowdin 2017-10-17 05:39:22 -07:00
Jim 34b0f29dc5 Merge pull request #1003 from Fenrirthviti/theme-updates
UI: Allow volume peak to be customized via .qss
2017-09-15 09:33:52 -07:00
cg2121 76b6266689 UI: Allow hiding/unhiding sources in the mixer
Allows the ability to hide/unhide sources in the mixer that the user
doesn't care about or doesn't necessarily want to see (such as video
sources that have audio but don't have any audio playing).  If all
sources are hidden, the user can right-click the mixer's empty area and
choose "unhide all" via a context menu.

Closes jp9000/obs-studio#1002
2017-09-13 21:17:44 -07:00
Joel Bethke 5576823f24 UI: Allow volume peak to be customized via .qss
With the addition of the peak volume indicator, themes may wish to change
these colors but there was no way to do so. This change updates the
VolumeControl widget to allow a stylesheet to adjust all possible colors
for the volume bar. In addtion, the Rachni theme is updated to demonstrate
this new capability.
2017-08-11 21:07:31 -05:00
Gol-D-Ace 8d8c2e5a22 Update translations from Crowdin 2017-08-10 16:07:40 +02:00
jp9000 25bb8a444f UI: Add modular UI
Changes the UI to an adjustable user interface, allowing the user to
fully customize how the scenes list, sources list, the mixer,
transitions, and the buttons are oriented on the main window window.
2017-07-27 12:17:18 -07:00
Richard Stanway d69652503b
UI: Add "Below Normal" priority option 2017-07-26 23:45:40 +02:00
Jim 9ad8e0c5f0 Merge pull request #947 from Fenrirthviti/new-theme
UI: Add new theme, update theme capabilities
2017-07-01 15:48:05 -07:00
cg2121 2d84da2f7e UI: Add "Defaults" button to filters/properties windows
This adds a "Defaults" button in the source and filter properties, which
will clear and reset all settings.

Closes jp9000/obs-studio#875
2017-06-26 17:44:34 -07:00
cg2121 b8d907f399 UI: Add fullscreen UI option to view menu
(Edit by Jim: Removed "Fullscreen Preview" because that's already sort
of served by the normal fullscreen projector option via the preview
context menu)

Closes jp9000/obs-studio#846
2017-06-26 09:49:43 -07:00
Joel Bethke 432e285257 UI: Add new theme, update theme capabilities
I have always felt that the out of the box themes for OBS were quite
lacking, and have spent a lot of time going through and sorting out the
difficulties with the current setup. I've added a new themeID parameter to
several elements that were otherwise impossible to target with QSS in a
theme. Since Qt has pushed for the use of QML over QSS at this point,
these should be considered workarounds. Included is the theme I was
working on that can serve as a base. I'm hoping to encourage others to
make their own themes, so we can grow the available themes for OBS.

I am happy for any feedback on the theme itself, or other updates that
can me made to make creating new themes easier overall.
2017-06-13 14:37:59 -05:00
Gol-D-Ace 5d25d800ad Fix German locale inconsistencies 2017-05-20 20:24:46 +02:00
Gol-D-Ace 3d2cacd782 Update translations from Crowdin 2017-05-20 10:18:41 +02:00
jp9000 96ce9633e0 UI: Warn user if multiple instances of the UI are open
Uses a named mutex to detect if multiple instances of the program are
open, and if so warns the user.  When running in portable mode, uses a
separate unique mutex name mapped to the user's config directory to
ensure that no two portable builds use the same config directory.  This
way, portable builds do not conflict with normal builds or other
separate portable builds.
2017-05-14 15:25:34 -07:00
jp9000 b40f940b51 UI: Add option to show stats on startup to general 2017-05-13 20:47:47 -07:00
jp9000 35454f7fc5 UI: Fix a few locale items, and add a few missing ones 2017-05-13 13:01:56 -07:00
jp9000 0e1ae62355 UI: Add stats dialog
Shows performance stats, and streaming/recording stats, and helps warn
the user when they have less-than-optimal values with coloring on the
values (e.g. yellow when getting low on disk space, red when getting
really low)
2017-05-13 01:52:54 -07:00
jp9000 ee734c17a5 UI: Add themeID values for colors to style sheets 2017-05-13 01:52:53 -07:00
jp9000 4049a5a882 UI: Add auto-configuration wizard
The auto-configuration wizard is designed to allow first-time or
novice/uneducated users or to set up video and encoding settings in a
very quick and easy way.  It'll automatically perform a bandwidth test,
and/or test the user's video settings to determine the most ideal
settings for streaming and recording (assuming a 1-pc setup).
2017-05-08 02:12:03 -07:00
jp9000 51e5f5fc64 UI: Remove colon from a few locale items
The colon makes it difficult to use these locale items for other
purposes, and the colon isn't used much elsewhere, so just remove them.
2017-05-06 12:12:37 -07:00
Richard Stanway a23c009a69 Various: Optimize bundled PNG files
By losslessly recompressing and removing redundant metadata, this saves
around 910 KB.
2017-05-05 19:56:00 +00:00
cg2121 71c5753207 UI: Add ability to output to window
Closes jp9000/obs-studio#841
2017-05-04 17:07:36 -07:00
mntone 9efd2b87aa UI: Add option to disable audio ducking on windows
The audio subsystem of windows is by default configured to lower the
volume of other things while a communications device (mic) is currently
active.  This patch prevents that from being enabled with OBS.  If the
user needs audio ducking enabled again for whatever reason, there is now
an option to re-enable it in advanced settings.

Closes jp9000/obs-studio#884
2017-05-03 11:05:30 -07:00
cg2121 5e65254f2c UI: Add window name to remux dialog 2017-04-09 01:31:50 -05:00
cg2121 bcd491a3d6 UI: Add copying/pasting of sources/filters
Closes jp9000/obs-studio#860
2017-03-25 04:29:49 -07:00
cg2121 66dbf8f258 UI: Add workaround to fix deleting final scene bug 2017-03-13 13:18:10 -05:00
Gol-D-Ace dbf95bdc15 Update translations from Crowdin 2017-03-05 23:40:11 +01:00
Gol-D-Ace de1bbf4342 Update translations from Crowdin 2017-03-04 07:04:03 +01:00
Gol-D-Ace a13c0a3c29 Update translations from Crowdin 2017-02-27 20:54:02 +01:00
cg2121 d74372c9e0 UI: Fix typo in general settings 2017-02-25 13:28:16 -06:00
Jim 5c1984366e Merge pull request #787 from derrod/mp4-warning
UI: Add warning for recording to mp4 format
2017-02-25 09:30:52 -08:00
derrod f7be55e451 UI: Add warning about recording to mp4 format 2017-02-25 18:25:45 +01:00
derrod 3fe2a79c81 UI: Add codec compatability checkbox to ffmpeg output
Closes jp9000/obs-studio#804
2017-02-25 09:16:46 -08:00
derrod 1fd302218b UI: Add gop size option for custom ffmpeg output
Closes jp9000/obs-studio#804
2017-02-25 09:08:01 -08:00
derrod 379b41aa0e UI: Add options for new socket loop 2017-02-25 06:21:24 -08:00
jp9000 db345e2e48 UI: Improve accessibility text on main window 2017-02-24 03:38:41 -08:00
jp9000 c1c84e9101 UI: Add front-end auto-updater 2017-02-20 22:45:34 -08:00
jp9000 8bc516afe7 UI: Clean up general pane of settings dialog
So many checkboxes were together almost senselessly.
2017-02-20 22:45:32 -08:00
derrod 6bc1ecc794 UI: Add warning if starting the output fails
This is mainly to give visual feedback to those affected by NVENC not
working with older driver versions. Currenlty obs fails silently which
could go unnoticed for users who are using hotkeys as well as confuse
users who are not trained to read their logs when issues occur.

Closes jp9000/obs-studio#788
2017-02-14 19:21:19 -08:00
jp9000 7639b277ce UI: Add audio monitoring to settings/adv audio props.
Adds audio monitoring selection to advanced audio properties, and adds
the ability to select the device in advanced settings.
2017-02-06 11:44:04 -08:00
Gol-D-Ace e181db7845 UI: Fix locale text alignment 2017-02-06 01:39:44 +01:00
jp9000 be7389ed2e UI: Clarify "Always minimize to tray" option
Makes it a bit more clear that this always minimizes to system tray.
2017-01-30 18:39:53 -08:00
dennis 21584fa2c0 UI: Add auto-start replay buf. opt. when stream starts
Closes jp9000/obs-studio#748
2017-01-29 19:09:23 -08:00
cg2121 29f22e72a8 UI: Add option to save projectors
This adds an option to the general settings to save the opened
projectors on exit.

(Note: Fixed conflicts -Jim)

Closes jp9000/obs-studio#743
2017-01-29 06:02:15 -08:00
SuslikV abe4bfd96e UI: Add option to always minimize to tray
Closes jp9000/obs-studio#737
2017-01-25 20:22:45 -08:00
Gol-D-Ace e4f32aa54a Update translations from Crowdin 2017-01-16 12:44:07 +01:00
Gol-D-Ace 6223ed6520 Update translations from Crowdin 2017-01-07 00:23:16 +01:00
Gol-D-Ace 69f0bc244a Update translations from Crowdin 2016-12-23 20:46:47 +01:00
jp9000 09a12fcf98 UI: Update locale for 6 tracks 2016-12-21 17:41:59 -08:00
cg2121 9f0c48d9c7 UI: Add import/export of scene collections & profiles
Closes jp9000/obs-studio#721
2016-12-19 04:44:57 -08:00
Ryan Foster 42a646f28e UI: Add ability to copy-paste scene item transforms
This commit adds the ability to copy a scene item's transform and crop
settings and paste those settings onto another scene item in any scene
or scene collection. It also changes the menu shortcut key for the
Transform action "Center to screen" from "C" to "n" because "C" is the
standard shortcut key for "Copy" in most other applications.

Closes jp9000/obs-studio#719
2016-12-18 17:21:58 -08:00
jp9000 f790d0fe08 UI: Separate replay buffer from recording
Replay buffer and recording should be separate in case the user wants to
start recording from a specific point rather being forced to reconfigure
for regular recording.

Creates a new button on the main window below the recording button for
turning on/off the replay buffer.
2016-12-09 14:47:03 -08:00
jp9000 8f36d122be UI: Clarify replay buf. hotkey error message
It should specify that the user specifically needs to set the "save"
hotkey, not just "the replay buffer hotkey".
2016-12-09 14:46:17 -08:00
jp9000 752c118f2e UI: Add replay buffer options to simple output mode 2016-12-08 03:36:19 -08:00
Gol-D-Ace 2d47dc4e2c Update translations from Crowdin 2016-11-20 12:22:26 +01:00
Gol-D-Ace 90e805ad9b Update translations from CrowdIn 2016-11-16 00:32:47 +01:00
Joseph El-Khouri 3b616823a1 UI: Add preview scaling options
Adds preview scaling to the right-click context menu for the preview
pane.  This allows the ability to, for example, zoom the preview and
edit the preview 1:1 (canvas/base resolution).  This was a missing
parity feature.  Additionally, also allows scaling to the
"output/scaled" resolution the program is set to.

When the preview is in scale mode and is the focused widget, you can
hold space and drag with left click to change the zoomed position.

(Notes added by Jim)

Closes jp9000/obs-studio#687
2016-11-09 14:21:47 -08:00
jp9000 ed85b22534 Update translations from CrowdIn 2016-11-03 13:32:52 -07:00
jp9000 d0e186497f UI: Allow the ability to use deprecated sources 2016-11-03 12:28:33 -07:00
cg2121 7e5c7da542 frontend-tools: Add output timers
This adds streaming and recording timers to the frontend tools.

Closes jp9000/obs-studio#625
2016-10-17 02:47:29 -07:00
Gol-D-Ace aadc7263c0 Update translations from Crowdin 2016-09-28 01:17:24 +02:00
Michael Fabian Dirks 857cf00a39 UI: Implement simple output mode presets for AMD
Closes jp9000/obs-studio#630
2016-09-26 18:51:03 -07:00
cg2121 883f9f204b UI: Add reset/close buttons to transform dialog
Adds a reset and close button to the transform dialog.

Closes jp9000/obs-studio#612
2016-09-16 20:30:52 -07:00
jp9000 8836592d92 UI: Add front-end API library
Allows manipulating and modifying the front-end via plugins.
2016-09-06 22:01:48 -07:00
jp9000 01b274f1da UI: Rename 'obs' dir to 'UI'
This is to prevent confusion both when prefixing commits and when
reading the directory structure for the first time.
2016-08-27 20:19:45 -07:00