273 Commits

Author SHA1 Message Date
Colin Edwards
55c1b5bd7b
Merge pull request #1736 from cg2121/icons-from-theme
UI: Use icons from theme on Linux
2019-03-19 19:25:42 -05:00
Clayton Groeneveld
2080051b9f UI: Use icons from theme on Linux 2019-03-16 05:41:12 -05: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
Colin Edwards
1dc3edc805
Merge pull request #1694 from cg2121/audio-mixer-copy-filters
UI: Add ability to copy & paste filters from the mixer
2019-03-13 22:13:54 -05: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
Gol-D-Ace
7c0620b54f UI: Add PAL 25 & 50 FPS as common FPS values 2019-03-10 08:31:08 +01:00
Clayton Groeneveld
e5cca6b2a5 UI: Fix yes/no not using localization in no source dialog 2019-03-09 03:49:58 -06: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
jp9000
ac651aa492 UI: Fix "What's New" showing again each patch version 2019-03-06 19:13:12 -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
Colin Edwards
d40782f71f
Merge pull request #1674 from SuslikV/patch-13
UI: Reset replay buffer button on "stop" signal
2019-03-03 21:56:19 -06:00
jp9000
340b8ec38e UI: Don't show "What's New" for new users 2019-02-26 12:00:27 -08:00
Clayton Groeneveld
ad55f413bb UI: Add ability to copy & paste filters from the mixer 2019-02-26 06:58:53 -06:00
Clayton Groeneveld
178fb21593 UI: Fix replay buffer checked state when no hotkey is set 2019-02-25 07:07:22 -06:00
jp9000
0e4bef09f4 UI: Defer autoconfig to message queue
The Auto-Configuration dialog was being created outside of the Qt
message loop, which could cause a lockup with auth code.
2019-02-20 17:35:02 -08:00
SuslikV
da87eff96f
UI: Reset replay buffer button on "stop" signal
Fixes an issue when Start Replay Button stays at checked state if stop
signal generated (hotkey event for example) instead of mouse click.

Mantis: https://obsproject.com/mantis/view.php?id=1343
2019-02-20 18:09:39 +02:00
jp9000
4722b764ca UI: Set replay buffer check w/ --startreplaybuffer
When starting the program with the --startreplaybuffer command line
parameter, it would not correctly highlight the button.
2019-02-19 19:27:54 -08:00
jp9000
103bec6526 UI: Fix disabling "resize output to source"
This should always be disabled if video output is active.  Additionally,
the expression used to determine whether it should be enabled/disabled
was very unreadable.
2019-02-19 19:26:37 -08:00
jp9000
5fb02c02dc UI: Do not auto-remux if using FFmpeg output 2019-02-19 16:52:31 -08:00
jp9000
0ef96953c3 UI: Use QFileInfo for remux
Using QFileInfo is better than mangling the string together ourselves
manually.
2019-02-19 16:52:31 -08:00
jp9000
cc1db3a944 UI: Clean up code styling of ternary operator usage 2019-02-19 16:52:31 -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
1759d1beae UI: Wait for browser init before "what's new" dialog 2019-02-13 19:31:46 -08:00
jp9000
cf004ba3fe UI: Add default preset for NVENC in simple output 2019-02-12 16:07:14 -08:00
jp9000
3f59e2fb13 UI: Remove help icon from auth/what's new titlebars 2019-02-10 22:31:59 -08:00
jp9000
8c819f9bbd UI: Make "What's New" dialog modeless 2019-02-10 16:27:51 -08:00
jp9000
5d05ab6df6 UI: Do one time reset of dock lock state for v23
In order to make for a better user experience with service integration,
do a one-time reset of the docks locked state, and set the default lock
state to off.
2019-02-09 01:12:18 -08:00
Matt Gajownik
6555db7c45 UI: Start projector user-facing monitor count at 1
Consistent with #1638
2019-02-09 19:34:56 +11:00
VodBox
f095cb2d0e UI: Add scene item canvas overflow to preview 2019-02-08 20:38:53 +13: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
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
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
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
940fd23cb4 UI: Switch to new browser panel code 2019-02-07 14:47:14 -08:00
jp9000
dcf48e8ffc UI: Add function for adding extra docks to main window 2019-02-07 14:47:02 -08:00
jp9000
412520c5d0 UI: Make assignDockToggle an actual function
Allows using it outside of the constructor.
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
jp9000
58f4a6390f UI: Unlock UI by default 2019-02-07 14:47:01 -08:00
jp9000
4ba48484ae UI: Only def. BROWSER_AVAILABLE for WIN32 (for now)
Currently, browser panel is only supported on windows.  So rather than
have to check for _WIN32 in the code everywhere, just move the WIN32
check to cmake, that way we don't have to have _WIN32 checks in the code
everywhere the browser panel code is used, and do not have to remove a
whole bunch of unnecessary _WIN32 #ifdefs for other operating systems
when browser panel support is added for them.
2019-02-05 19:20:59 -08:00
ty2570
a20aeb8362 UI: Clear out previous projectors when loading saved projectors
Closes obsproject/obs-studio#1544
2019-01-31 21:46:32 -06: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
Jim
4f706a1b78
Merge pull request #1523 from cg2121/fix-saved-projectors-bug
UI: Fix bug when loading saved projectors
2018-12-03 05:28:14 -08:00
Jim
1db398ad8c
Merge pull request #1518 from fredemmott/stopping-on-delay-stop
ui: Emit STREAMING_STOPPING when stop queued
2018-12-03 04:27:18 -08:00
Clayton Groeneveld
271322bf65 UI: Fix bug when loading saved projectors
This fixes a bug on Linux where fullscreen projectors wouldn't
quite be fullscreen when loaded on start.
2018-10-22 00:32:57 -05:00
Fred Emmott
bab9d6e96d
UI: Emit STREAMING_STOPPING event immediately
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.
2018-10-17 18:52:20 -07:00