Commit Graph

983 Commits (632f0bff5abec954fe84f191affb5243002890dd)

Author SHA1 Message Date
jp9000 a230769f40 UI: Fix minor bug (wrong variable used) 2016-08-06 16:06:41 -07:00
jp9000 f5e54a4b27 UI: Log when user adds/removes/renames sources/filters 2016-08-05 18:59:36 -07:00
jp9000 73d61d4ae3 UI: Use obs_log_loaded_modules for module logging
Makes initialization in logs a bit more clean.
2016-08-05 18:59:35 -07:00
jp9000 ee1d8d370d UI: Add log separators for both startup and shutdown 2016-08-05 18:59:35 -07:00
jp9000 dfc7fbfdc9 UI: Log scenes more cleanly when loading from file 2016-08-05 18:59:34 -07:00
jp9000 49a5a3ebec UI: Removed redundant update of settings data
SetupOutputs is already called at the beginning of the function under
circumstances where it's needed, so remove it from being redundantly
called a second time.
2016-08-05 18:59:34 -07:00
jp9000 d326b8074b UI: Don't log initialization profiling redundantly
This data isn't typically extremely important to have logged on startup,
and it's already included as part of shutdown.  There may be scenarios
where a program crashes and that information would be lost due to the
fact that the shutdown logging never occurs, but that information is
unlikely to be useful in that scenario.
2016-08-05 18:59:33 -07:00
jp9000 526d390adb libobs: Reduce unnecessary logging (info -> debug)
(Note: This commit also modifies coreaudio-encoder, win-capture, and
win-mf modules)

This reduces logging to the user's log file.  Most of the things
specified are not useful for examining log files, and make reading log
files more painful.

The things that are useful to log should be up to the front-end to
implement.  The core and core plugins should have minimal mandatory
logging.
2016-08-05 18:59:32 -07:00
jp9000 2a343955a2 UI: Add "Bind to IP" setting to advanced settings 2016-07-29 15:49:40 -07:00
jp9000 2c5aa87468 UI: Add ability to lock preview
Adds the ability to lock the preview so sources can't be edited.  This
feature is typically used in the case where the user wants to prevent
accidentally clicking and dragging on sources.
2016-07-26 01:32:43 -07:00
Jim e546c3fa0c Merge pull request #564 from cg2121/linux-fullscreen-projector-fix
UI: Fix fullscreen projector on Linux
2016-07-19 05:01:27 -07:00
cg2121 21a3c3505e UI: Fix fullscreen projector on Linux
This fixes a issue on Linux, at least on Ubuntu anyway, where the title bar and unity launcher is shown when the fullscreen projector is active.
2016-07-12 20:45:51 -05:00
jp9000 50d98dceac UI: Don't do scene check when removing scene items
The scene check prevents the ability to remove scene items that have
been detached from their scene, which can happen when scenes are used as
scene items and the scene is deleted elsewhere.
2016-07-09 07:41:14 -07:00
dodgepong 38a8b05e34 Add new Ukranian translations 2016-07-07 10:04:53 -04:00
jp9000 60c77d41a3 UI: Make third-party plugins use program data dirs
Makes it so third-party plugins are stored in system-local specific data
directories (except on linux, which will still use user-local data
directories for the time being)
2016-07-06 03:47:51 -07:00
jp9000 b3de68fa22 UI: Add helper functions for getting program data dir
Adds C++ functions for getting system-local specific data directories
rather than user-specific data directories
2016-07-06 03:47:51 -07:00
Gol-D-Ace 81adb13f59 Update translations from Crowdin 2016-07-06 01:18:27 +02:00
jp9000 d7cf581b3a UI: Allow directories in file formatting settings
When configuring file formatting settings in advanced, allow the ability
to specify formatted directories.

For example, "%CCYY-%MM/%DD %hh-%mm-%ss"

would make the year and month a subdirectory, then the
day/hour/minute/seconds as the file name.  January 21st 2121 at 4pm
would end up being:

"21 04-00-00.mp4" in the subdirectory "2121-01".
2016-07-04 23:11:24 -07:00
jp9000 e9087cfdc9 UI: Fix window start pos when not inside a monitor
Commit 8932bd39 attempted to fix the starting position when the program
started up inside of a monitor that no longer exists, but it was
incorrectly assumed that it would cause the program to automatically
center its position.  Instead it set its position to {0,0}, which is a
really awkward position.

This fixes that commit and ensures the window starts up centered to the
primary display when its saved starting position is invalid.
2016-07-04 22:34:56 -07:00
jp9000 23430a9221 UI: Allow removing multiple selected scene items 2016-07-02 15:44:24 -07:00
jp9000 3d63096076 UI: Allow adding scenes as scene items
Allows adding scenes as scene items.  Note that you will not be able to
add scenes if it detects infinite recursion (i.e. adding scene A to
scene B, then adding scene B to scene A), in that case it will just fail
to create the scene item.
2016-07-01 15:23:06 -07:00
jp9000 0b2fd1167e UI: Add process priority option for windows 2016-07-01 10:28:16 -07:00
jp9000 44a523f8b7 UI: Fix locale bug (forgot ending '"' character) 2016-06-30 15:31:19 -07:00
jp9000 3bc9e042a5 UI: Add "View" menu to control visibility of UI widgets
Adds a little improvement to quality-of-life, a typical "View" menu with
the ability to show/hide the following (for now):

- Listbox toolbars
- Status bar
- Transitions pane (some people don't really need/use/care about it)
2016-06-30 14:54:53 -07:00
jp9000 fc45a94775 UI: Minimize transitions pane size on main window
Prevents it from taking up too much space from the other parts of the
main window.
2016-06-30 12:51:06 -07:00
jp9000 44beb75b04 UI: Add scaling filter options for scene items to UI
Adds scale filtering options to the scene item right-click context menu.
2016-06-29 08:00:55 -07:00
Timo Gurr 187e974375 cmake: Allow installing arch-independent data outside prefix
This allows installing the architecture independent data outside the
prefix, for example on a multiarch layout where the prefix is
/usr/{host-triplet}.

Closes jp9000/obs-studio#552
2016-06-27 18:20:57 -07:00
cg2121 2dfb211956 UI: Add option to automatically record while streaming
Allows the ability for users to make it so recording automatically
starts when they start streaming.  Also adds the option to allow the
recording to continue when stream is stopped.

Closes jp9000/obs-studio#554
2016-06-27 17:51:15 -07:00
jp9000 563d8efe46 UI: Fix position of "hide projector cursor" checkbox 2016-06-27 15:11:05 -07:00
jp9000 c2257e0a0f UI: Add option to hide cursor over projector windows 2016-06-27 14:47:42 -07:00
jp9000 4a3804518d UI: Show "stopping" text on buttons when waiting for stop
The new cutoff timing fix means that streaming/recording has to remain
active for bit until the stream/recording has reached the expecting stop
timestamp.  This means that the buttons would continue to say "Stop
streaming/recording" while waiting for the output to stop itself at the
appropriate timing.

So instead of letting it do that and confusing the user, the buttons
will now say "stopping" when the button is pressed to indicate to the
user that the stream/recording is in the process of stopping.
2016-06-22 14:10:42 -07:00
jp9000 1bfa48ce42 UI: Clear reconnect when stream forcibly stopped
It wouldn't properly clear the reconnect information when the user
forcibly stops the stream while reconnecting, so when the user starts a
new stream after that it would erroneously display a lingering reconnect
message on the status bar.
2016-06-22 14:10:41 -07:00
jp9000 5137f8b6c0 UI: Fix case where invalid bitrate would be shown
Fixes a case where an astronomically large bitrate could be shown
unintentionally.
2016-06-20 02:56:33 -07:00
jp9000 55dc235d3e UI: Add ability to add directories to editable lists 2016-06-15 16:19:25 -07:00
jp9000 6eea842d9a UI: Do not store prop. view string data as QString
The internal data of a property value would be converted to QString and
Qt would inevitably try to convert the characters to another encoding,
causing the internal data to possibly become invalid.  Instead, use
QByteArray to treat it as nothing more than a byte array.
2016-06-05 19:25:36 -07:00
jp9000 07a26b1720 libobs: Add more editable list types
(Note: This commit also modifies the UI)

The editable list only had two types: A type that allows both files and
URLS, and a type that only allows strings.

This changes it so the editable list can have a "files only" type, a
"files and URLs" type, and a "strings only" type.
2016-05-26 10:55:51 -07:00
jp9000 8d002fb6ec UI: Set simple output mode to always use CBR for stream 2016-05-26 09:10:22 -07:00
jp9000 fdd556056f UI: Increase max combo box items in properties view
It's annoying when you can't see more than 10 items in a combo box and
are forced to use a scroll bar on a combo box.
2016-05-26 09:10:22 -07:00
jp9000 8e24eee0b8 UI: Fix editable lists not updating source when changed 2016-05-24 07:30:42 -07:00
jp9000 5329542434 UI: When upgrading encoders, always replace "cbr"
Previously it wouldn't necessarily remove the "cbr" setting when
switching the program to use "rate_control".
2016-05-13 23:00:07 -07:00
Gol-D-Ace fe56a12867 Update translations from Crowdin 2016-05-14 00:27:59 +02:00
jp9000 5103aba23a UI: Use regular ICQ for simple output mode QSV
After testing, LA_ICQ may not always be supported, so use regular ICQ
for recordings instead.  Also fixes a bug where simple output mode
wouldn't even use LA_ICQ.
2016-05-11 13:25:15 -07:00
jp9000 b567a02150 UI: Allow remuxing to/from different formats
Instead of just remuxing from FLV to MP4, allow remuxing to/from the
various container formats that are available.
2016-05-11 13:12:35 -07:00
jp9000 50e1ec585d UI: Use defaults when changing to different encoders
In the advanced output section of settings, when a different encoder is
set, it would try to pass over settings from the other encoder, which
may or may not be fully compatible with different encoders.  Instead,
just set it to defaults if it's on an encoder that's different from the
currently loaded encoder.
2016-05-11 13:12:34 -07:00
jp9000 df04dd077b UI: Don't create encoder property views twice on load
When settings are being loaded in to the settings dialog, it would
recreate the encoder property views more than once unnecessarily.
2016-05-11 13:12:34 -07:00
jp9000 1f8fc8e8ef UI: Convert all encoder settings to use "rate_control"
The "cbr" setting has been deprecated, so if the user is using that
setting for any of the encoders, convert it to set "rate_control" to
"CBR".

Additionally, if an encoder is using x264 with VBR and the buffer size
is set to 0, change the rate control mode to CRF.
2016-05-11 13:12:33 -07:00
jp9000 e4f142b0de UI: Use CQP for NVENC when using simple output mode
When using simple output mode, previously NVENC did not support a
constant quality rate control method, and you'd have to use VBR with
bitrate.  However CQP has since been added to NVENC, and it's preferable
to use for recording when available instead of using VBR.
2016-05-11 13:12:33 -07:00
jp9000 8706e137d7 UI: Use "rate_control" instead of deprecated "cbr"
For setting CBR on encoders, use "rate_control" set to "CBR" instead of
setting the "cbr" setting (which is now deprecated) to true.
2016-05-11 13:12:32 -07:00
jp9000 8fdd041e87 Revert "UI: Add CoInitializeEx to main() startup"
This reverts commit cb24080d76.

This commit is being reverted due to the fact that it breaks common
dialogs such as the open/save file dialogs, the dialogs would cause the
UI thread to lock up.

The plugin that required this will have to be modified to accommodate
this situation.
2016-05-07 00:12:59 -07:00
jp9000 84429e58df UI: Fix bug where transition refs would not release
When clicking the transition properties button and creating the
context menu with properties/rename, it would create actions that also
included a source reference, but the parent of those actions was the
main window instead of the menu, so those actions would stay created
until the main window was destroyed.

This would cause bugs with saving/loading scenes where children of that
transition would also be perpetually referenced.

So instead of using the main window, just use a pointer to the menu
itself as the parent so that when the menu is destroyed, the actions are
also destroyed, and the source refs released.
2016-05-07 00:11:53 -07:00