Commit Graph

311 Commits (91c292d394d46856d5ab56fafec3e8650d524091)

Author SHA1 Message Date
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 7eee8de331 UI: Do not quit program when last windows are projectors
Prevents the program from unintentionally quitting if the program is
minimized to the task tray and the user closes all projectors

Closes jp9000/obs-studio#737
2017-01-25 20:23:03 -08:00
SuslikV d473b2da96 UI: Hide/show dialogs when minimizing to tray
Hides dialogs when minimizing to tray, and shows again when restoring
from tray.

Closes jp9000/obs-studio#737
2017-01-25 20:22:55 -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
cg2121 9fe127ec04 UI: Add separate timers to status bar
This adds separate timers for streaming and recording to the status bar.
2017-01-25 00:15:59 -06:00
cg2121 cdf8a40bf1 UI: Add connection status square to status bar
Closes jp9000/obs-studio#720
2017-01-24 15:54:59 -08:00
jp9000 85c43cd666 UI: Protect debug text static string var with mutex 2017-01-24 12:49:47 -08:00
Lionheart Zhang 9050febf06 UI: Convert to wide before outputting debug text (win)
Fixes an issue where non-english debug text wouldn't display correctly
in the debugger output on windows.  Also, only output debug text when
actually debugging.

Closes jp9000/obs-studio#734
2017-01-24 12:32:23 -08:00
shiina424 36bf5988d2 UI: Fix bug with uncopied profile import/export files
streamEncoder.json and recordEncoder.json are missing.  Thess files are
generated when the output mode is advanced, and the user modifies
encoder settings.

Closes jp9000/obs-studio#741
2017-01-16 03:55:20 -08:00
Gol-D-Ace e4f32aa54a Update translations from Crowdin 2017-01-16 12:44:07 +01:00
cg2121 7c98edccc5 UI: Add more command line options 2017-01-11 15:48:59 -06:00
Gol-D-Ace 6223ed6520 Update translations from Crowdin 2017-01-07 00:23:16 +01:00
shiina424 5133353d92 frontend-tools: Fix output-timer translation bug
Don't use tr() to translate, use obs_module_text().

Closes jp9000/obs-studio#735
2016-12-24 04:16:31 -08:00
SuslikV fae5082b8b UI: Fix Export QFileDialog parent 2016-12-24 13:44:41 +02:00
jp9000 9e7daff511 frontend-tools: Set buddied controls for captions dialog 2016-12-24 03:01:48 -08:00
jp9000 5e19fa7cd9 frontend-tools: Don't include colon in "Audio Source"
Makes it consistent with how UI locale is with the rest of the program.
2016-12-23 20:23:38 -08:00
jp9000 950f677cc2 frontend-tools: Reset stop event before starting captions
In case the stop event has already been set and hasn't had a chance to
unset for whatever reason.
2016-12-23 20:21:56 -08:00
jp9000 d32f7c95a2 frontend-tools: Detach caption thread if critical failure
Prevents the thread from being considered "active" if a critical failure
occur, so calling the stop function won't be necessary.
2016-12-23 20:21:55 -08:00
jp9000 869692098a frontend-tools: Add ability to select caption language
Also, default to current user UI language.
2016-12-23 20:21:54 -08:00
Gol-D-Ace 69f0bc244a Update translations from Crowdin 2016-12-23 20:46:47 +01:00
jp9000 b8e078f2bf frontend-tools: Add caption generation tool (windows)
Allows generating captions via the windows speech recognition API
(SAPI).

This is currently marked as experimental due to speech recognition
technology still being less than ideal.  Speech recognition technology
in general is probably never going to be anywhere near perfect.
Microsoft's speech recognition in particular requires a bit of training
via the windows speech recognition tool to ensure it can dictate better.
Clear speech with a good mic is recognized fairly well, but casual
speech and/or speaking with a poor microphone will have some significant
issues.  Captions can often be way off when speaking casually rather
than with clear diction.
2016-12-23 10:37:13 -08:00
jp9000 2cbb3c2505 frontend-tools: Move source helper functions to a header 2016-12-23 10:37:10 -08:00
jp9000 fb60a5f1e9 UI: Fix settings window stacked widget index 2016-12-22 07:04:15 -08:00
jp9000 579a5019d8 UI: Fix video initialization failure error message
It incorrectly assumed windows systems before, now it uses an
appropriate platform-independent error message.  Also fixes a missing
word.
2016-12-22 06:57:26 -08:00
jp9000 a2c92b1c69 UI: Add default audio track bitrates
Closes jp9000/obs-studio#732
2016-12-22 06:54:44 -08:00
jp9000 94a4228904 UI: Fix buddy controls with new audio tracks 2016-12-22 06:53:01 -08:00
jp9000 c11572fddf UI: Clarify startup error messages related to video 2016-12-21 19:22:16 -08:00
jp9000 2df7e16b44 UI: Use 64bit desktop link by default in installer 2016-12-21 18:43:52 -08:00
jp9000 005fd823cb UI: Fix endif in installer 2016-12-21 18:43:30 -08:00
jp9000 09a12fcf98 UI: Update locale for 6 tracks 2016-12-21 17:41:59 -08:00
jp9000 c4ec1bc28a UI: Increase maximum audio tracks to 6 2016-12-21 17:14:24 -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
SuslikV ee019c7761 UI: Make close button default in transform dialog
Improves ease of use.

Closes jp9000/obs-studio#731
2016-12-18 06:28:08 -08:00
Michael Fabian Dirks db7632e7fd UI: Use dedicated GPU on Hybrid AMD GPU systems
This enables use of the dedicated GPUs for AMD PowerXpress systems.
Especially important for Adapter selection, as usually the dedicated GPU
is hidden/inactive until needed.

Closes jp9000/obs-studio#706
2016-12-17 20:06:39 -08:00
Jim 4b8411fa4d Merge pull request #716 from flash0110/ui_fix-frontend-api-scene-added
UI: Fix frontend-api event call for adding scenes
2016-12-17 18:59:40 -08:00
jp9000 580f38a733 UI: Remove deleteLater view from filter window layout
In the filters dialog, when the properties are being updated due to
filters being added/removed/switched, using deleteLater on the previous
view would cause it to linger in the view until the deleteLater is
processed by the Qt queue, displaying two views instead of one.
Additionally because of that, this would also cause the display in the
filters dialog to resize as well, causing the reorder mutex hard lock
which was fixed by the parent commit.

Closes jp9000/obs-studio#714
2016-12-17 15:32:19 -08:00
vic 7db00a18fa UI: Fix property name bug in frontend API
This commit fixes a bug that would cause the frontend API function
obs_frontend_set_current_scene_collection to never be successful.  Due
to the bug, the following null pointer check would always fail, so the
action would never be triggered.

Modification by Jim: Instead of fixing the typo that caused this to
occur, make it so both scene collection menus and profile menus both use
"file_name" consistently.

Closes jp9000/obs-studio#712
2016-12-16 16:43:12 -08:00
jp9000 1865285ccb UI: Fix replay buffer compile issues on older compilers 2016-12-11 21:04:58 -08:00
jp9000 ec60ab9bc6 UI: Add file prefix/suffix options for replay buffer
Adds the ability to use a specific prefix and/or suffix on replay buffer
filenames to distinguish them from normal recordings.  Defaults to
having the prefix "Replay".
2016-12-09 14:48:44 -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
jp9000 47fe89b964 UI: Disable simple output rec. settings when active 2016-12-08 03:36:18 -08:00
jp9000 b277000f97 libobs/util: Add function to generate formatted filenames
(Note: This commit also modifies the UI)

Being able to generate file names based upon a specification is useful
for more than just the UI; it can also be useful for things such as the
replay buffer where file names need to be generated on the fly.
2016-12-08 03:27:34 -08:00
Alexander Uhlmann 90a9d1d726 UI: Fix frontend-api event call for adding scenes
Added missing frontend-api event call for AddScene and removed thus
obsolete event call in DuplicateSelectedScene.
2016-12-02 20:37:15 +01:00
cg2121 c6c58e55b3 frontend-tools: Add options to start output timers every time
Adds options to start output timers every time streaming or recording
has started.

Closes jp9000/obs-studio#668
2016-11-25 10:05:11 -08:00
Gol-D-Ace 2d47dc4e2c Update translations from Crowdin 2016-11-20 12:22:26 +01:00
Jim e87a819fe1 Merge pull request #694 from Savestate2A03/preview_scrolling_while_locked
UI: Enable scrolling while preview is locked
2016-11-20 03:02:17 -08:00
jp9000 d73303a9f9 UI: Update installer script to latest version 2016-11-19 11:02:22 -08:00
Jim 4388ab36c4 Merge pull request #696 from TotalCaesar659/master
UI: tray icons are redrawn for better visibility and contrast
2016-11-17 10:24:04 -08:00
Jim 8d86f49003 Merge pull request #682 from Xaymar/cmd_verbose_unfiltered
UI: Add --verbose and --unfiltered_log command line options
2016-11-16 20:50:01 -08:00
Michael Fabian Dirks 949400118e UI: Update settings and fix presets for simple AMD encoder 2016-11-17 04:40:49 +01:00
Grigorii Chirkov 481ba29c69 UI: tray icons are redrawn for better visibility and contrast 2016-11-17 00:57:58 +03:00
Gol-D-Ace 90e805ad9b Update translations from CrowdIn 2016-11-16 00:32:47 +01:00
Joseph El-Khouri cbe2abf0b1 UI: Fix scrolling while preview is locked
As reboot pointed out, it's assumed that the intention of a locked
preview is to prevent editing the scene. Because scrolling the preview
does not have any interaction with the scene and its sources, you should
be able to still scroll around and look at different parts of your
preview while the preview is locked.

There is also a bugfix included: previously, if you were to
right click while space bar was held down, you would be stuck in
scroll mode until spacebar is pressed/released again. This gets around
it by forcing scroll mode to end when a right click is issued on the
preview.
2016-11-12 22:22:33 -05:00
cryptonaut 21ab517ba9 UI: Fix crash when switching encoders in advanced mode
On linux, the JSON file handling code will try to read the directory
itself as a file, which can cause a crash.

Closes jp9000/obs-studio#681
2016-11-10 10:41:05 -08: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 fa0bd585a5 Revert "UI: Enable HiDPI scaling."
This reverts commit c4eebbba54.
2016-11-04 04:27:07 -07:00
jp9000 06894c6e84 Revert "UI: Only scale HiDPI on QT 5.6+"
This reverts commit 404258f41a.
2016-11-04 04:26:52 -07:00
Ryan Foster 2c5577facd UI: Fix tab order of Crop fields in Transform Properties 2016-11-04 06:25:46 -04:00
jp9000 ed85b22534 Update translations from CrowdIn 2016-11-03 13:32:52 -07:00
Jim f8f71541ad Merge pull request #680 from Xaymar/plugin_enc-amf
enc-amf: Update to version 1.4.0.0
2016-11-03 13:09:51 -07:00
Michael Fabian Dirks 01a33edea9 UI: Add AMD presets and update settings 2016-11-03 20:34:57 +01:00
jp9000 d0e186497f UI: Allow the ability to use deprecated sources 2016-11-03 12:28:33 -07:00
Michael Fabian Dirks cc1949c251 UI: Add --verbose and --unfiltered_log command line options
--verbose enables logging of messages and LOG_INFO and --unfiltered_log disables repeated log line filters. Both are useful for extreme support sessions where things have gone so far south that you actually would need this.
2016-11-03 16:14:01 +01:00
jp9000 d5ad621dd1 UI: Fix --profile option not working on non-windows
Using "*.*" as a search string is a windows-specific search term.  "*"
should be used instead.
2016-10-20 12:41:56 -07:00
Christoph Hohmann 623c9dc41a UI: Fix full screen projector on screens that have reserved areas
QScreen::availableGeometry() does not return the full screen size on X11
if areas of the screen are reserved by the window manager. In this case
the full screen projector does not cover the whole screen. Using
QScreen::geometry() instead fixes this issue.
2016-10-20 15:32:15 +02:00
jp9000 83fa6e728a UI: Remove unused variable 2016-10-19 06:52:57 -07:00
jp9000 ee7e319a61 UI: Fix improper brace placement for function 2016-10-19 06:49:12 -07:00
jp9000 9081df9708 UI: Fix poor handling of system tray pointers
The original pull request that added the system tray feature was riddled
with bad pointer usage.  Bare pointers that are never properly freed,
never contained within a QPointer or unique_ptr.

These have now been changed to use QPointer variables, and to always
check when the variables are valid before using.  The order of
destruction for QMenu that uses the actions has now been prioritized
first before the actions.
2016-10-19 06:48:03 -07:00
jp9000 dadefceccf UI: Fix sys. tray crashes when sys. tray not available
When the system tray is not available, the system tray variables would
still be used despite not being initialized.

Fixes mantis bug 640 on linux systems in particular that may not always
have system tray available.
2016-10-19 05:32:01 -07:00
cg2121 6639847017 frontend-tools: Add ability to start timer if output is already active
This adds the ability to start the output timer if streaming or recording is already active.
2016-10-17 22:20:24 -05:00
Christoph Hohmann a1ea6e4f51 frontend-tools: Code cleanup of output timers 2016-10-17 17:28:05 +02: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
jp9000 971dd4945c UI: Fix bug in frontend API event
Was using main->outputHandler->StreamingActive() for the
obs_frontend_recording_active function.
2016-10-17 02:45:28 -07:00
jp9000 e2af0eec04 obs-frontend-api: Add library version 2016-10-16 00:08:49 -07:00
Michael Fabian Dirks bd606785fe UI: Split Properties window with a QSplitter
Closes jp9000/obs-studio#645
2016-10-09 18:47:32 -07:00
Michael Fabian Dirks d324713364 UI: Add raw text and text file to drag&drop support
Closes jp9000/obs-studio#644
2016-10-09 18:39:53 -07:00
Ryan Foster b75292dbf4 UI: Add Portable Mode indicator to title bar and log
Closes jp9000/obs-studio#654
2016-10-09 18:10:18 -07:00
Colin Edwards 404258f41a UI: Only scale HiDPI on QT 5.6+ 2016-10-04 22:46:52 -05:00
Jim a80d334cf6 Merge pull request #640 from DDRBoxman/HiDPI
UI: Enable HiDPI scaling.
2016-10-04 11:30:34 -07:00
Jim f81637718b Merge pull request #647 from wt/remove_GetMonitors
Remove get monitors
2016-10-03 23:54:36 -07:00
Warren Turkal f3eb8aacfe UI: Use Qt lib for screen info instead of x11 libs
All of the monitor discovery logic can be implemented with Qt. This
change removes all the x11 implementations in favor of Qt and removes a
fair amount of platform specific code.
2016-10-03 23:50:13 -07:00
Ryan Foster 91b64657c6 frontend-tools: Fix crash when adding invalid regex
When adding a new regex rule to the Automatic Scene Switcher, OBS would
crash if the regex was invalid. This was because the regex was added to
the Regex object without a test or try-catch. This commit fixes that
behavior, and adds a warning message when attempting to add an invalid
regex.
2016-10-02 23:28:38 -04:00
Colin Edwards c4eebbba54 UI: Enable HiDPI scaling.
This makes the app much more usable on hidpi screen devices like the
surface.
2016-09-30 01:05:14 -05:00
jp9000 48f0c73f82 UI: Use rect intersection test for validating position
Instead of checking to see if the window's position is valid, check to
see if the rectangles of the window and the monitor intersect via a
rectangle intersection test.
2016-09-28 22:26:28 -07:00
jp9000 071ed465cb UI: Fix window size/pos not saving on exit 2016-09-28 02:01:25 -07:00
jp9000 cdd788c4be UI: Just use 'OK' button for license agreement dialog
An "I Agree" or "I Disagree" button isn't necessary for GPL.
2016-09-27 18:06:09 -07:00
Gol-D-Ace aadc7263c0 Update translations from Crowdin 2016-09-28 01:17:24 +02:00
jp9000 eb1fecdd34 UI: Add media/image file drop support 2016-09-27 10:01:22 -07: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
jp9000 b9b6f70cd5 UI: Make sure all dialogs are closed when hiding window
Fixes a crash that could happen where you close the window while the
main window is hiding, and then the app mistakenly thinks that "all
windows are closed" and initiates shutdown while the main window is
still active but hidden.
2016-09-21 21:20:49 -07:00
jp9000 406a8c89ca UI: Disable hiding if settings open
Fixes a bug where you could minimize to tray if the settings window was
open.
2016-09-21 21:20:06 -07:00
Christoph Hohmann 7de289f6cc UI: Fix crash in filters dialog caused by access to deleted widget 2016-09-20 16:23:11 +02:00
Jim b2fd5ca25e Merge pull request #607 from CoDEmanX/master
Don't nudge sources if preview is locked
2016-09-16 20:43:47 -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 b8acca7cca UI: Hide deprecated sources from add source popup menu 2016-09-14 16:59:45 -07:00
jp9000 dc2915dc3b UI: Sort 'Add' source popup menu 2016-09-14 16:59:28 -07:00
jp9000 4584ef2511 UI: Limit font size for font property label
If the font size is too big, it can take up the entire properties view
window.
2016-09-14 16:59:27 -07:00
jp9000 2b4bf21416 UI: Add tooltips (long description) to property controls 2016-09-11 04:15:57 -07:00
jp9000 5c5d0ba9e5 UI: Add ability to forcibly stop streams/recordings
If the user hits the "stop stream" button it'll transition in to
"stopping stream..." and will continue to output until the stream
reaches the timing in which "stop" was pressed.

However, if there is significant congestion, stopping the stream can
take far longer than the user may like.  So there needs to be an option
to forcibly stop the stream in that case; pushing the "stop" button a
second time should allow the user to tell the stream/recording to stop
right away instead of waiting for the precise stop timing.
2016-09-09 17:39:21 -07:00
Richard Stanway 007d39e296
UI/installer: Miscellaneous installer improvements
- Checks for previous instances by using the FindProcDLL NSIS plugin

- No longer allows ignoring if there is a sharing violation.

- Added version information section to allow friendly description in
  the UAC elevation prompt.

- Kill lingering instances of cef-bootstrap before installing.
2016-09-07 23:52:04 +02:00
jp9000 be89ef8712 frontend-tools: Remove unused locale 2016-09-07 06:01:42 -07:00
jp9000 39592ff5eb frontend-tools: Add scene switcher plugin 2016-09-06 22:01:50 -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 bfc21317bf UI: Make scene collection/profile enum funcs external
Allows using the functions outside of the file they're in.
2016-09-06 04:54:24 -07:00
jp9000 9ed95b2497 UI: Change certain scene functions to slot functions
This allows using the functions via Qt message queue.  The reason for
this is so a frontend API can queue these functions to call safely from
another thread.
2016-09-06 04:54:23 -07:00
CoDEmanX 4986cbae30 UI: Don't nudge source if preview is locked 2016-09-02 17:13:45 +02: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