9600 Commits

Author SHA1 Message Date
jp9000
8515f38bdb UI: Make undo_stack types in-class and private
Reduces polluting the global namespace
2021-04-16 20:31:57 -07:00
jp9000
09ffab6f90 libobs: Add helper func to find a scene by name 2021-04-16 20:28:14 -07:00
jp9000
0dc1e01b5b libobs: Save obs_data json in compact form 2021-04-16 19:09:55 -07:00
Exeldro
7e9aea71d9 UI: Fix missing Files dialog crash loading source icon 2021-04-16 12:03:34 -07:00
Georges Basile Stavracas Neto
495687294b flatpak: Reenable browser source
It seems that the browser source works inside a Flatpak sandbox and/or
Wayland with CEF 4280, so let's try and reenable it.

This reverts commit e64c61710fb064ca87341f091ac55cb5861fc202.
2021-04-16 13:21:59 +10:00
Richard Stanway
47fcbdb0c9 win-dshow: Fix virtual camera CPU usage, add more comments
My previous commits would rescale the placeholder for output on every
frame which was not CPU efficient. Now we store a copy of the scaled
placeholder and update it any time the resolution / FPS / format
changes.

A new function GetOutputBufferSize was added to allow calculating the
output size when needed. The existing code assumed a 12-bit format if
the placeholder didn't load, which could cause grey / green output.

An optimization was made to only load and scale the placeholder once
the virtual output starts, as many applications load and unload the
filter multiple times during enumeration of devices.

Various comments were also added to help clarify how the filter works.
2021-04-15 03:11:33 +02:00
jpark37
92eb756dab obs-filters: Increase luma key precision 2021-04-13 12:43:25 -07:00
gxalpha
5708e64d11 mac-virtualcam: Hide logging behind debug flag
Hides the DLog and DLogFunc macros behind the -DDEBUG flag, causing the
logs to only appear in testing environments.

On production build, calls to these macros will result in nothing
happening.
2021-04-13 06:02:15 -07:00
GingerAudio
ec0bf68e4a mac-capture: Add another virtual output loopback device
Adds "GroundControl" fake output device for audio loopback on macOS.
2021-04-13 05:57:41 -07:00
tt2468
7b2b723270 libobs: Return target vec not current when within EPSILON
If current vector is within EPSILON, it would return the current,
when logically the target should be returned instead.
2021-04-13 05:31:00 -07:00
gxalpha
b4f940533c mac-virtualcam: Fix memory leaks
Fixes some memory leaks Xcode has detected
2021-04-13 05:22:27 -07:00
Matt Gajownik
7282802d4e UI: Use newer Twitch Dashboard docks for integration
Fixes an issue where the submit button on the Stream Information dock
would be cut off at certain resolutions.
2021-04-13 05:21:53 -07:00
jpark37
7bcd0d25cf obs-filters: Increase brightness precision
Necessary for adjusting colors near black.
2021-04-13 04:48:36 -07:00
jpark37
01cf13ac51 UI: Increase float property decimals based on step
Values are no longer truncated if a small step is specified.
2021-04-13 04:48:36 -07:00
Richard Stanway
054a68b8f4 UI: Fix undo data being saved when no changes occur
obs_scene_save_transform_states was called with all_items = true when
starting a transform, but all_items = false when comparing undo data.

Fixes #4510
2021-04-13 00:52:55 +02:00
tt2468
dca1d3714b vlc-video: Ignore URLs when checking for missing files 2021-04-12 20:15:58 +12:00
Colin Edwards
0314ff372e
Merge pull request #4503 from DDRBoxman/archdeps
CI: Specify arch for prebuilt deps
2021-04-11 21:07:00 -05:00
Colin Edwards
1274943a0b CI: Specify arch for prebuilt deps 2021-04-11 20:28:04 -05:00
jp9000
63bcc54b32 cmake: Automatically copy datatarget PDBs
Helps ensure DLLs associated with game capture, virtual camera, and
other such files have their PDBs copied alongside them in any Windows
build, and allows the ability to trace crashes that may occur from
within those files more easily.
2021-04-11 16:47:32 -07:00
Exeldro
8c49cc2831 UI: Add Undo/Redo for source visibility transitions 2021-04-11 10:10:54 -07:00
Exeldro
b9a2fe7851 libobs: Add transition save/load functions
Moves the transition saving/loading to functions, and refactors existing
code to use those functions instead.
2021-04-11 10:10:54 -07:00
Joel Bethke
639560ec59
Merge pull request #4495 from WizardCM/remove-pipelines
Remove Azure Pipelines from CI
2021-04-11 12:03:56 -05:00
Clayton Groeneveld
9ca7e1cb0f UI: Fix spamming of log when setting current scene
When setting the current scene and if it was the same as the previous,
the log would be spammed with switching scene messages.

This issue particularly happened when using undo/redo, as their
functions were setting the current scene.
2021-04-11 08:26:12 -07:00
Matt Gajownik
03d5b15176 azure-pipelines.yml: Remove
Replaced completely by GitHub Actions
2021-04-11 17:40:01 +10:00
Matt Gajownik
c37bfee83e README.rst: Replace Azure Pipelines badge with GitHub Actions 2021-04-11 17:39:34 +10:00
Kurt Kartaltepe
1064cd26f1 obs-ffmpeg: Expose psycho-aq setting
This was changed to default on but is not exposed for ffmpeg nvenc.
Where cards without temporal AQ support will fail to initialize and we
cannot do checks beforehand. This exposes the parameter to allow users
to disable this feature when using the ffmpeg implementation.
2021-04-10 14:49:40 -07:00
Ford Smith
2932cd0fd3 UI: Fix wrong behavior with undo/redo and groups 2021-04-10 11:28:04 -07:00
Mat Clayton
99a2c221c4 rtmp-services: Update Mixcloud 2021-04-10 10:27:47 -07:00
Clayton Groeneveld
bab21888f3 UI: Fix reordering scenes not working properly
If the user were reordering scenes, the preview scene would change
to a different one, than the one they were currently on.
2021-04-10 06:07:55 -07:00
Clayton Groeneveld
bb0dff60ab UI: Update context bar when using undo/redo
The context bar wouldn't update when using undo and redo.
2021-04-10 01:50:05 -07:00
Clayton Groeneveld
7dfd36f9e8 UI: Force current scene when using undo/redo
The undo/redo functions are setting the current scene. Everytime
it would do this, it would actually transition to the scene.
This forces the current scene, so it fixes a bug where the
transition would be grayed out when undoing/redoing.
2021-04-10 01:49:30 -07:00
tytan652
c370692773 flatpak: Disable obs-browser build 2021-04-09 08:29:25 -07:00
tytan652
e93632c58b obs-browser: Emit fatal error if CEF or X11 is missing
CMake will now emit a fatal error if CEF or X11
is not found rather than disabling obs-browser
2021-04-09 06:55:25 -07:00
jpark37
54656af340 obs-filters: Add color settings to correction v2
Restore color tint/overlay functionality, but with separate controls for
tinting (multiply) and overlay (add).
2021-04-09 06:45:13 -07:00
tytan652
66d79a926a linux-capture: Ask for PipeWire if deps not found
CMake will now emit a fatal error if PipeWire or Gio are not present.
2021-04-09 06:44:53 -07:00
tytan652
029aee33c3 plugins: Set obs-vst as a default requirement
BUILD_VST option is added and set to ON by default.
If obs-vst is not present CMake will emit a fatal error.
2021-04-09 06:44:53 -07:00
tytan652
98ad4face2 plugins: Set obs-browser as a default requirement
BUILD_BROWSER is set to ON by default.
If obs-browser is not present CMake will emit a fatal error.
2021-04-09 06:44:53 -07:00
Ford Smith
97e038f895 UI: Fix Undo/Redo holding source references
Holding references to sources is never a good idea. Instead, save and
restore the scene and its subsources on removal.

Co-authored-by: Jim <obs.jim@gmail.com>

Closes obsproject/obs-studio#4462
2021-04-09 06:05:03 -07:00
jp9000
d332a8ea76 libobs: Add obs_source_is_scene() 2021-04-09 04:30:30 -07:00
jp9000
33c5563c1e libobs: Add obs_obj_is_private()
Returns true if an obs object is considered private. (Author's note: the
concept of "private" objects is not ideal, but we're stuck with it for
now)
2021-04-09 04:30:30 -07:00
jp9000
ca08df9fb2 libobs: Add obs_source_load2()
Allows loading a source and all of its filters automatically.
Previously, the original obs_source_load would not load filters.
2021-04-09 04:30:29 -07:00
jp9000
0ecf24d0ed libobs: Add obs_source_enum_full_tree()
Allows the ability to enumerate all sources and subsources in a source's
hierarchy, regardless of whether they're active or not.
2021-04-09 04:30:29 -07:00
jp9000
e39fa5e902 UI: Clear undo stack in ClearSceneData() instead
Makes more sense to clear it here.
2021-04-09 04:19:31 -07:00
Ford Smith
0b583260a2 UI: Wipe undo/redo stack when switching scene collections 2021-04-08 16:45:04 -07:00
Ford Smith
0e944897c6 UI: Add maximum number of items in undo/redo stack 2021-04-08 15:53:20 -07:00
jp9000
c7aaceaee6 obs-browser: Disable browser panels on Wayland for now
When running on Wayland, the browser docks look broken and sometimes
they crash OBS Studio. Interestingly, browser sources seem to work
just fine. Ideally we'd be able to dig into the issue and find the
root cause, but time is short for the 27 release and disabling the
docks until this is figured out seems to be the best alternative for
now.

Of course this is a temporary workaround, and eventually this commit
will be reverted, and browser docks will work just fine, flowers and
rainbows and happy unicorns.

Disable browser docks on Wayland, which includes both the manually
added docks, and the docks OBS Studio creates for authentication for
Twitch and Restream.io.

Related: obsproject/obs-browser#279
         obsproject/obs-studio#4436
2021-04-08 15:46:41 -07:00
jp9000
a79b6d6f79 win-dshow: Fix libdshowcapture formatting 2021-04-06 12:00:12 -07:00
Lukáš Mojžíš
9ae6e145c1 UI: Conform transition duration in Scene Transition dock 2021-04-06 01:59:10 -07:00
pkv
38d17acdbb obs-filters: Code cleanup for RTX denoiser
This minor code cleanup commit does the following:
- sets defaults intensity of RTX denoiser to max.
- adds an initialization check of nvafx.
- splits nvafx initialization from channel allocation for better
readibility of the code.
- moves the intensity update from the filter_audio process function
to the plugin update function.
- logs the error code in case nvafx returns an error when running.
(useful for devs; I haven't translated the error codes which are
available in the sdk).
2021-04-05 03:11:51 -07:00
pkv
b46e9bba85 obs-filters: Fix initialization of RTX denoiser
This fixes issue #4441.
The issue occurs when adding the noise suppression filter for the
first time. Rnnoise or speex are the default noise suppression
methods. Line 344 returns which prevents initialization and
allocation for nvafx (rtx denoiser).
With the fix, initialization of nvafx occurs when swapping methods.
2021-04-05 03:11:51 -07:00