93 Commits

Author SHA1 Message Date
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
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
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
Clayton Groeneveld
80875768ad UI: Redo settings icons 2019-03-05 19:54:12 -06: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
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
1f317fb80a UI: Hide instead of disable rescale
Hides the rescale option when selecting a texture-based encoder instead
of just disabling.
2019-02-15 16:20:40 -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
Richard Stanway
43fbefb9ef UI: Remove additional unused help icons 2019-02-12 12:55:31 +01:00
jp9000
f3b8b2ec49 UI: Don't enable rescale if on "Use stream encoder"
Fixes a bug where if you set the advanced output recording encoder to
"use stream encoder", then reopened the settings window, that option
would become enabled again.
2019-02-11 17:12:34 -08:00
VodBox
f095cb2d0e UI: Add scene item canvas overflow to preview 2019-02-08 20:38:53 +13:00
jp9000
f5ad8b5d67 UI: If hardware encoder selected, disable post rescale
The post-output rescale option in advanced output mode cannot currently
be used with texture-based encoders, so disable the option when a
texture-based encoder is selected.
2019-02-07 17:00:47 -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
82848d513e libobs: Add obs_video_active() function
(This commit also modifies UI)

Adds a universal function for determining whether video output is
currently active, rather than having to use video_output_active() on the
value returned by obs_get_video().
2019-02-07 17:00:46 -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
pkviet
047e586eaf UI: Add multi-track FFmpeg output support 2018-10-04 20:32:35 -07:00
cg2121
2fedcab987 UI: Add option to auto remux 2018-09-18 20:55:12 -05:00
Marvin Scholz
8c4b496ea0 UI: Add 4th aux audio input device
Closes obsproject/obs-studio#1343
2018-09-15 12:34:53 -07: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
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 3a08e858a68aeecaf6499973b55988db5a903ae5).
This error message was left in place, so let's remove it now.
2018-08-17 23:35:31 -04: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
Dmitry-Me
69f217003b UI: Check pointer before the first dereference 2018-07-30 15:11:41 +03:00
pkviet
15a642291e UI: Fix mem leak with QCompleter 2018-06-07 00:44:29 +02: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
5b642c14de UI: Move multiview setting checks from draw path 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
a142261edd UI: Clarify multiview layout names 2018-05-20 23:20:52 -03:00
Shaolin
b0415621d6 UI: Use enum for multiview layout 2018-05-20 23:20:52 -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
Jim
89c81933d4
Merge pull request #1219 from cg2121/linux-delete-checkforupdates
UI: Remove check for updates on Linux
2018-03-15 17:43:13 -07:00
cg2121
4d478c5ca5 UI: Remove check for updates on Linux 2018-03-12 19:56:07 -05:00
jp9000
d603ffc401 UI: Remove duplicate line 2018-02-22 15:01:31 -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
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
pkviet
67e48ecc2c libobs/media-io: Replace quad with 4.0
(also obs, deps/media-playback, libobs/audio-monitoring, decklink,
linux-alsa, linux-pulseaudio, mac-capture, obs-ffmpeg, win-dshow,
win-wasapi)

Default channel layout for 4 channels is 4.0 in FFmpeg.
Replacing quad with 4.0 will improve compatibility since FFmpeg has
better support of its default channel layouts.
2018-01-05 09:48:52 -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
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
Benjamin Schubert
9cba5660e4 UI: Enable Replay Buffer in Advanced Mode
Replay buffer is currently only supported in simple mode.  This change
adds support to advanced mode and is, for the most part, a mirror of the
addition of replay buffer to simple mode.

Mantis-bug: https://obsproject.com/mantis/view.php?id=792

Closes jp9000/obs-studio#1019
2017-09-16 05:55:18 -07:00
Shaolin
1bae6f3c18 UI: Enable audio monitoring on linux if pulse available
Closes jp9000/obs-studio#940
2017-09-12 03:37:58 -07:00