Allows the ability to change the output type in case one service
requires a different output type.
NOTE: This should be considered a temporarily yet simple solution to a
specific problem: support for RTMP-like outputs. This will allows
seamless integration of supporting different RTMP-like output types
within the same service. This should probably be replaced with a more
ideal solution later, such as implementing a completely different
service type instead, when time permits.
Deprecates "Theme" global config value and uses "CurrentTheme" instead
to ensure backward compatibility with older versions of OBS, which will
fail to load if you have a theme that isn't available.
(Jim Edit: Putting this back because I misunderstood the purpose of
jp9000/obs-studio#936)
Adds the ability to zoom into the preview when fixed scaling mode is
enabled.
(Edit by Jim: Also now saves zoom and scroll position)
Closesjp9000/obs-studio#917
If size is 0 after popping data from the front or back, set the
start/end points to 0 as well to ensure that any subsequent buffer
pushes start from the beginning of the buffer rather than the middle of
the buffer. Reduces potential unnecessary operations in that case.
Additionally, this fixes a bug with circulebuf_pop_back where if start
position was 0, and all the data was popped off the buffer (equal to the
capacity), the end position would be equal to the original size. As an
example to replicate the bug, push 5, pop 5, then push 10. The
start/end points will be invalid.
Closesjp9000/obs-studio#954
Delayed reading the text file till the update after the timestamp
changes, this should fix a minor issue where if the file updates twice
in one second, only the first change it displayed.
If a source is created with settings, default values would not be set on
data items that already had values set. The check here was supposed to
be a not equal rather than an equal because you're not supposed to be
able to set a default value of one type on an item that already exists
but is of a different type.
This bug would make it so that if a particular setting was removed,
there would be no default value to fall back on, and it would always be
0 or NULL for all values.
It's likely this bug wasn't encountered until now because before now
there had been no reason to clear or remove settings on most things.
(Edit by Jim: Removed "Fullscreen Preview" because that's already sort
of served by the normal fullscreen projector option via the preview
context menu)
Closesjp9000/obs-studio#846
(Edit by Jim: Changed it to just add the fullscreen projector sub-menu
like when right-clicking the preview, that way it doesn't have to add
new locale text for translators, and allows the users to specify which
monitor to use)
Closesjp9000/obs-studio#845
If a video card is unsupported, it will attempt to initialize the stats
window, querying values from a video subsystem that doesn't exist, and
crash instead of alerting the user that their hardware is unsupported.
Sometimes when rebuilding a texture, it often has to fall back and
create a temporary texture, but it'll fail when trying to create a
shader resource for it. The suspicion is because it's due to not having
the proper shader binding flag when creating that temporary texture, so
this fixes that possible loophole.