1684 Commits

Author SHA1 Message Date
jp9000
cac2ff31f4 cmake: Put decklink-captions in source folders 2020-11-14 04:40:47 -08:00
jp9000
8b30204946 UI: Move "changed" when recreating output res widget 2020-11-14 02:45:19 -08:00
jp9000
3805a11955 UI: Show service max resolution/framerate values to user
If a service has a maximum resolution and/or maximum framerate, shows
that to the user in the stream section of settings where the maximum
video/audio bitrate are shown.
2020-11-13 18:24:00 -08:00
jp9000
592cdfb039 UI: Add service res/fps limitation support to settings
Allows services to limit and enforce resolution and framerate values the
user can select in the UI if "ignore service recommendations" is not
checked. If the "ignore service recommendations" option is not checked,
the user will not be able to select or use a resolution and/or framerate
in the user interface that the service does not support. If "ignore
service recommendations" is checked, it will work as it normally would,
allowing any value to be used as per normal.

Fortunately, and hopefully for the foreseeable future, there is only one
service that enforces resolutions and framerates.
2020-11-13 18:23:24 -08:00
jp9000
ebbe8d1bf9 libobs: Change service max res. to res. list
(This commit also modifies rtmp-services and UI)

Changes the maximum resolution size to a resolution list, and splits the
maximum FPS to its own function.

(Note: ABI has not been modified because the last changes still haven't
been released yet, so it's safe to modify this as long as the changes
haven't been officially released)
2020-11-13 18:22:53 -08:00
jp9000
4f74ffe993 UI: Allow blocking all signals if resetting downscales
Allows the ability to block all the signals if resetting downscale
values, which will prevent values from triggering a widget update
unintentionally, forcing the user to have to save settings.
2020-11-13 18:09:14 -08:00
jp9000
97491ee91a UI: Add SetComboItemEnabled
Replaces SetComboItemDisabled in context-bar-controls.cpp with a global
function in qt-wrappers called SetComboItemEnabled, which allows both
enabling and disabling items in a combo box.
2020-11-13 18:07:20 -08:00
PatTheMav
9ac92f61be
UI: Use macOS app icon for Qt app on macOS 2020-11-13 17:17:45 +01:00
PatTheMav
8110b8bd65
UI: Fix tray icon menu handling on macOS 2020-11-13 17:17:45 +01:00
PatTheMav
84b2558995
UI: Update macOS app icon 2020-11-13 17:00:05 +01:00
PatTheMav
35e6f5e17a
UI: Update tray icons to use masks on macOS 2020-11-12 23:39:32 +01:00
jp9000
ade054eeaa UI: Fix compiler-specific error
Return value between ternary options are ambiguous on GCC/clang
2020-11-11 10:19:06 -08:00
jp9000
546dcc7a14 UI: Move "enforce" setting to "ignore" stream section
Moves the "Enforce streaming service bitrate" option from simple output
mode to the stream section, renames it to "Ignore streaming service
setting recommendations" (inverting it). When trying to check it, it
will now also display a message box warning the user that it's generally
a not-so-good idea.

Also displays recommended settings for the service.
2020-11-11 09:48:39 -08:00
jp9000
005863a346 UI: Refactor to make it easier to get service object
Refactors a bit of code to make it easier to get the current stream
service object in the settings
2020-11-11 09:48:10 -08:00
jp9000
6b81c106d8 UI: Add VOD track support in advanced output
Adds a VOD track option (specific to Twitch) that allows a user to
specify which audio track to use for their Twitch VODs, which uses a
separate encoder to encode the track. This allows users the ability to
choose what audio goes on their VOD, separately from the live stream.
2020-11-04 00:15:25 -08:00
Colin Edwards
5b8f89d86e decklink: Clean up warnings introduced by caption code 2020-11-03 17:00:14 -08:00
Colin Edwards
7b0d7c6357 Remove BUILD_CAPTIONS build flag 2020-11-02 22:46:55 -06:00
Colin Edwards
923f06bfa6 decklink: Add ability to ingest/embed cea 708 captions
(This commit also modifies libobs, UI)
2020-11-01 22:28:49 -08:00
Richard Stanway
9a64adb4d1 UI: Don't update source context bar when hidden 2020-10-31 20:59:12 -07:00
Ryan Foster
7f4e375e12 UI: Disable stream encoder setting in simple output with active output
We disable the stream encoder setting in Advanced Output Mode when an
output is active, so let's also disable the stream encoder setting in
Simple Output Mode when an output is active.
2020-10-31 02:52:24 -07:00
Jim
b32abbe33f
Merge pull request #3083 from pkviet/srtfix4
UI: Enable sps/pps (video headers) repetition (for srt/mpegts)
2020-10-30 23:25:24 -07:00
Christian Lockley
ad528bef17 UI: Detect other instances of obs on Linux
fixes: obsproject#3053
2020-10-30 11:50:47 -07:00
Richard Stanway
57bed7923e UI/installer: Use random temp directory for security
Using a fixed path would allow malware on a compromised system to
perform a DLL planting attack. Reported by Erik Wynter.
2020-10-30 17:10:34 +01:00
jp9000
6af26d3290 UI: Add max cx/cy/fps clamp (if service specifies) 2020-10-30 00:28:44 -07:00
Johann Garces
ade4c4cf49 UI: Run Autoconfig Wizard on New Profile Creation
New profile state is similar to first start: settings are wiped, encoders
not setup. It may make sense to show the auto configuration wizard when
a new profile is made as well.

There is a checkbox option to show the wizard. If a profile is created
with the checkbox off, the checkbox will remain defaulted to off next
prompt.
2020-10-29 14:15:57 -07:00
Matt Gajownik
bc7afb0fae UI: Report detailed output errors for Replay Buffer
Same changes as 0c0ffb341cfb521473479cdcd391c3507b05cf46
2020-10-21 18:10:05 -07:00
hgonomeg
4390eb5591 UI: Fix replay buffer saved event in advanced mode
AdvancedOutput::AdvancedOutput(OBSBasic *main_) lacked
a proper event handler connection
2020-10-18 12:17:31 -07:00
Mikhail Kochegarov
117d35433f UI: Detect other instances of obs on macOS
Detect other instances of the obs by inspecting running applications
with same bundle ID.

fixes: #3053
2020-10-16 05:48:37 -07:00
Exeldro
64869bac46 UI: Add duplicate filter 2020-10-16 05:38:10 -07:00
craftwar
7331a43aee UI: Update Twitch Get Stream Key link 2020-10-16 05:12:16 -07:00
jpark37
dbf318a388 UI: Apply minimum width to Stats fields
Helps prevent Stats dock from resizing OBS when long text is set.
2020-10-16 05:11:53 -07:00
Clayton Groeneveld
2b50263d5c UI, libobs: Add ability to copy/paste single filter 2020-10-15 10:14:22 -07:00
Clayton Groeneveld
8a674137d7 UI: Keep showing time when paused 2020-10-15 10:12:46 -07:00
TobiasGSmollett
af28c940f8 UI: Fix text clipping on non-English locales in certain locations
Fix #3514 on MacOS and Ubuntu.
2020-10-14 06:42:38 -07:00
Maya Venkatraman
336c1994ad UI: Find YouTube via starting string, not full match
Allows the ability to get the stream key for YouTube regardless of
whether using the normal RTMP or HLS versions of YouTube.
2020-10-13 13:29:17 -07:00
Maya Venkatraman
41f4a0b0b9 UI: Add support for "More Info" link from service
(Jim) Allows the ability to get a link from the service's settings about
a specific service selection the user chooses and display it as a "More
Info" button that the user can click to find out more information about
that particular service.
2020-10-13 13:29:17 -07:00
jp9000
3d51602690 UI: Fix replay buffer frontend event not triggering
The frontend API event OBS_FRONTEND_EVENT_REPLAY_BUFFER_SAVED was not
being triggered when hotkeys were used because it was only set to
trigger when the replay buffer button was clicked, not when a hotkey was
used. This fixes it so that the frontend event sends a signal to the
frontend so that hotkeys will actually work.
2020-10-12 16:59:26 -07:00
jp9000
a38cd03e06 UI/obs-frontend-api: Fix replay buffer save event ABI break
New events must go at the bottom of the list, not at the top, otherwise
ABI will be broken.
2020-10-12 16:59:26 -07:00
hgonomeg
d3ec3e99d5
UI: Add replay buffer saved event to the frontend api (#3592)
* obs-frontend-api: add the event of saving replay buffer

Add OBS_FRONTEND_EVENT_REPLAY_BUFFER_SAVED as given by RFC 33

* UI: Emit the replay buffer saved event to the api

Send the OBS_FRONTEND_EVENT_REPLAY_BUFFER_SAVED to api (as in rfc33)

* docs/sphinx: Add replay buffer saved event

Documentation provided for OBS_FRONTEND_EVENT_REPLAY_BUFFER_SAVED (RFC33)
2020-10-10 17:53:13 -07:00
Scratch
a94c0e055b UI: Prevent disabling replay buffer if it's active 2020-10-10 17:29:30 -07:00
Joshua Berenhaus
f56ab9a38b UI: Set focus back to label after source rename
Fixes obsproject/obs-studio#3465
2020-10-09 14:01:25 -07:00
jp9000
3486c0b363 UI: Fix selecting correct transition when deleting
When deleting a transition, it would sometimes select the one that
replaces it, which could be the separator.  This would cause undefined
behavior.  This fixes it so that it selects either the one that replaces
it (if a valid one replaces it), or the transition at the bottom of the
known list and not the separator.
2020-10-06 08:49:58 -07:00
jp9000
da8547c112 UI: Fix non-default transitions going below add vals 2020-10-06 08:25:03 -07:00
jp9000
18db1c6841 UI/installer: Add avutil/swscale to file in use check 2020-10-06 07:56:10 -07:00
jp9000
86e04d00ec Revert "UI: Delete existing fullscreen projector"
This reverts commit 01fe9c990c74599b01abac3bbf7ef859ccbba357.
2020-10-04 22:32:17 -07:00
jp9000
f4f2d383b1 UI: Greatly improve main window repaint performance
The VolumeMeter widgets were apparently being drawn as transparent
widgets, which meant that it was necessary to redraw everything under
the widgets in order to properly draw the widgets, so the entire mixer
section of the window was being redrawn every time the meters updated.
This caused a significant perf hit when the only thing wanted/desired
was just to update the meters. This was more noticeable after changing
the audio meter update rate to 60hz from 30hz.

The fix is to simply mark them as opaque widgets, and paint the
background ourselves rather than rely on what's under the window. CPU
perf for painting the main window has been vastly improved because of
this; CPU usage of Qt in the main window is now reduced by at least half
of what it was, if not more.
2020-10-03 08:27:01 -07:00
Scratch
8a1ad18674 UI: Fix tab order for controls dock 2020-10-02 07:01:40 -07:00
Ed Maste
92076f5c8c UI: Skip ChromeOS test on FreeBSD
As with Windows and macOS there's no need to check for ChromeOS on
FreeBSD.
2020-10-02 06:27:04 -07:00
Programatic
f79737d479 UI: Implement exit on CTRL + Q for linux
Fixes #3106
2020-10-02 03:40:26 -07:00
PatTheMav
cab32e7e67 UI: Disable QT's implicit colourspace conversion on macOS
Fixes issues as described in https://bugreports.qt.io/browse/QTBUG-47660
and halves CPU usage of OBS' UI by about 40-50%.
2020-10-01 23:54:58 -07:00