When media returns frames with negative linesizes, it means they're
inverted RGB formats and start from the last line of the image and move
back to the top via the negative linesize number. This would cause a
crash because this wasn't being taken in to account, and it would
traverse in to invalid memory.
Changes the default autoconfig test bitrate to 10000kb/s, which will
then be capped by the user's service selection (so it'll still only use
6000 on Twitch for example, but will allow 10000 on Youtube and others).
Due to the recent renaming of hitbox to smashcast, old settings for
hitbox would not be shown in the service UI. This change preserves the
user's service settings even if the service name has been changed, shows
the setting and marks it as invalid to the user, and prevents the UI
from selecting a value that doesn't match the user's last selection.
Fixes a potential issue where copying filters from one source to another
might add filters from the old source that are not compatible with the
new source.
Due to a noticeable frequency of crashes inside of FFmpeg when using
hardware encoding on mac, this feature is going to be disabled for now
pending more investigation at a later time.
When running the program for the first time, no scene collections will
show up in the scene collection menu. This changes it to forcibly save
the first scene collection on the first run of the program, and then
re-enumerates the list to ensure it's listed.
Fixes potential decoding errors with FFmpeg's new decode API. Because
avcodec_send_packet may process multiple packets, you must call
avcodec_receive_frame continually until no more frames are left.
Fixes a bug where loading vertex shaders could cause error messages
about mismatching vertex buffer data to appear because the vertex shader
would try to reload the previously used vertex buffer.
This commit fixes creating log files in windows with Unicode profile
names.
I encountered this bug when running obs-studio 18.0.2 in Windows 8.1 x64
with my user profile path containing Unicode characters.
Steps to reproduce:
1) Create a windows user with a Unicode name: "пользователь"
2) Run OBS Studio, go to Help -> Log Files -> View current log (Nothing
happens)
The expected result is opening current log file.
Closesjp9000/obs-studio#916
Failure to decode is unfortunately quite common with certain file types,
and is most of the time safely recoverable. There's no reason to
actually output a log message for this unless really needed.
There's a loophole that would allow users to activate an output while in
the settings window via hotkeys -- this prevents that from being able to
happen. Note that users can still shut down outputs, but they can no
longer start them up while in the settings window.
While an output is active, the user may try to reset the settings in the
settings window, causing a misleading error message to be thrown in the
log indicating that it's "falling back" to OpenGL.
Instead, if an output is currently active, do not reset video.
Fixes a bug where the individual drop-down lists of each quick
transition would not have the correct available transitions listed if
transitions were added, renamed, or removed
Adds an option that allows the user to specify the size (or aspect) of
the bounding source size which all the images are then scaled in to.
Acts similarly to "bounding box" of scene items, but for the slide show
and its sub-sources.
Uses a named mutex to detect if multiple instances of the program are
open, and if so warns the user. When running in portable mode, uses a
separate unique mutex name mapped to the user's config directory to
ensure that no two portable builds use the same config directory. This
way, portable builds do not conflict with normal builds or other
separate portable builds.