For additional safety, uncheck the bandwidth test checkbox so that the
setting isn't persisted in an enabled state when disconnecting or
switching a service. Also just straight up disable if not authed to
Twitch when saving settings.
It was possible to enable the bandwidth test and disconnect your Twitch
account, resulting in a confusing prompt about streaming in bandwidth
test mode when trying to start a stream.
The old version of the device toolbar was a complex situation. Because
of the fact that device properties can take significant time to query,
this put an unpleasant burden on the UI thread; so to fix this problem,
the device toolbar was made to be threaded. However, threading is a
complex and dangerous thing, and there is a fear that this could cause
complications down the line whenever users are simply selecting devices.
So for the time being, as a safety precaution, simplify the device
toolbar down to just the "activate" button, and make it so that if users
really need to query and change the devices, that they need to
explicitly open the properties. That way the devices aren't being
queried constantly every time a device source is selected.
Alternatively in the future, device enumeration could be cached, but
seeing as that's a significant amount of work and needs to take in to
account whether a user adds/removes a device while the process is
active, that's not going to happen any time soon.
This isn't particularly needed, as a service with multiple tracks won't
be using multiple tracks to begin with anyway. This might change later,
but for now just mark it deprecated.
This adds two batch scripts to install and uninstall the virtual cam
devices for installations where the installer could not be used. Most
commonly, this is for portable installations or those who prefer the
.zip file.
Allows the ability to install extra data from a specific absolute path
rather than a path relative to the cmake current source dir. Useful if
say I want to generate data files in to the cmake binary folder rather
than put them in the data folder of the cmake source dir.
It seems like YouTube applies nonlinear-to-linear sRGB, and
linear-to nonlinear-709 transformations to uploaded videos now. This
makes sRGB too dark on their platform for video players that alias 709
as sRGB, which is almost everyone. Make 709 the default to keep peace.
This adds spacing between the timer and duration labels in the media
controls. The vertical alignment of the labels have been fixed as well.
And the width of the source label has also been widened.
When there is no media, set the media to the restart state.
Currently, this only affects the VLC source, as the media
source doesn't use the OBS_MEDIA_STATE_NONE, at this time.
In 218b936b1dae, the virtual camera was ignored when checking the active
state, which is kind of a lackluster solution. Instead, this makes
SetupOutputs() a virtual function, and calls it before starting the
virtual camera to be more consistent with the rest of the outputs.