Description: The Drag-and-Drop feature allows users to effortlessly
move sources or groups of sources into scenes within the user
interface. This intuitive functionality enhances user interaction
by providing a visual and interactive way to organize and customize
content.
The feature mimics the behaviour of a copy and paste. For example
if we drag a "Input Audio Device" from Scene 1 to Scene 2, after
the event, both Scene 1 and Scene 2 will have the "Input Audio
Device" source.
Co-authored-by: André Bento <andre.veloso.bento@tecnico.ulisboa.pt>
The status bar doesn't currently own its references to outputs, which
can be a problem if streaming outputs are released soon after stream
stop. The Multitrack Video output does exactly that, so the status bar
will sometimes try to access an invalid pointer for updating its stats.
Keeping a weak reference around and upgrading it to collect stats,
similar to how the stats window behaves.
Also changes clang-format SeparateDefinitionBlocks to Leave on ObjC
files, which avoid having an empty new line after API_AVAIABLE and the
declaration.
Currently, the spacing lines begin in the middle of the box and then are
their width wide towards one direction. This means that the larger they
are, the more off-center their middle is.
This commit changes them to start at half their width left/top of the
center and end half the width to the right/bottom of the center, putting
the middle in the center.
In 7931f2acb8 the classes have been
removed in favor of properties, but this styling change appears to have
been reverted by accident, likely by the theming overhaul.
If an output does not support HEVC, it should not advertise it. For
services, however, a service primarily defines the codecs which are
supported for the protocol spec itself/destination platform, so HEVC
can be advertised still.
Allow to select both main type of ScreenCast (monitor, window)
with only one source type rather than adding a source type per
ScreenCast type.
This change is made as a new Screen Capture source type which
obsoletes the use of the previous Screen Capture (monitor-only)
and Window Capture.
Remove the custom declarations of the external functions
CreateDirect3D11DeviceFromDXGIDevice and
CreateDirect3D11SurfaceFromDXGISurface, as well as the
IDirect3DDxgiInterfaceAccess interface.
Since the Flatpak became part of the repo, nothing has changed on
BlackMagic side.
DeckLink libraries are still not redistributable and without stable
download link so even extra-data is not usable.
This makes enabling DeckLink feature in the Flatpak impossible without
involving customization on the end-user side which is not how Flatpak is
designed for.
`obs_output_initialize_encoders()` and can_begin_data_capture are
already being called in the `Start()` function, so these duplicate
calls serve no function.
I'm assuming they were introduced accidentally during a previous
refactor.