Commit Graph
12335 Commits
Author SHA1 Message Date
Richard StanwayandJim 2468268569 libobs: Hold async mutex when calling set_async_texture_size
Calling set_async_texture_size without holding async_mutex is dangerous
as cur_async_frame could be changed / freed by another thread.
2023-03-04 16:10:19 -08:00
Kurt KartaltepeandJim 0fb89dc9a1 obs-ffmpeg: Fix crash during ratecontrol check
When iterating over an array of structs we incorrectly check for a null
pointer, but the actual sentinel value is the empty struct.
2023-03-04 16:07:12 -08:00
Richard StanwayandJim bb7ca3c2c3 UI: Add mutex for writing to the log file
fstream is not thread-safe and the act of writing the string and the
newline are two separate operations which could execute concurrently in
multiple threads, resulting in lines joining together followed by two
newlines. Due to the presence of a static mutex, this also removes
inline on the function.
2023-03-04 15:34:17 -08:00
gxalphaandJim ffd6ae699c obs-transitions: Add long description for full decode option 2023-03-04 15:33:17 -08:00
Richard StanwayandJim 01786a3f11 libobs: Disable encoder scaling request if it matches output size
It was possible to set the encoder to scale the video to the same size
as the output, resulting in unnecessary passes through swscale and
skipping hardware encoders. This was a common user error in Advanced
Output mode where they would tick the rescale box but leave it at the
same resolution as their main output.
2023-03-04 15:14:42 -08:00
Chris (Flaeri)andRyan Foster e7cd29bbe5 obs-ffmpeg: Implement QVBR for AMF encoders
Makes QVBR rate control usable. Fix wrong rate control check on line
1457. Switch from bitrate to CQ/QP value (no bitrate needed).
2023-03-03 21:48:59 +00:00
Chris (Flaeri)andRyan Foster 0eb496e8cf libobs/media-io: Add color range and space to conversion
By adding the range data we can get successful handling of full range
color via custom FFmpeg output. Previously it would always default to 0
which would yield partial/limited output. Without the colorspace info
the output file is correctly tagged, but not undergone the actual
conversion.
2023-03-03 21:48:09 +00:00
8ba646c842 updater: Check if awaited instance matches current install
Also replaces any secondary usages of GetCurrentDirectory with cached
static variable.

Co-Authored-By: Richard Stanway <r1ch@r1ch.net>
2023-03-03 21:47:56 +00:00
Ricardo TavaresandRyan Foster 0516371823 deps/media-playback: Enable CUDA HW decoder 2023-03-03 21:47:40 +00:00
Mico HäsänenandRyan Foster d33abf68e5 rtmp-services: Add Enchant.events to service list 2023-03-02 18:00:52 -05:00
Richard Stanway 5b193bca55 libobs/util: Fix typo in curl revocation support check 2023-03-02 19:36:31 +01:00
Ryan Foster 681014bec2 rtmp-services: Fix whitespace issues in services.json
* Remove trailing whitespace
 * Use spaces instead of tabs for indents
2023-03-02 13:24:39 -05:00
derrodandRyan Foster 08733a0e1a updater: Remove 32-bit Support 2023-03-01 20:18:03 -05:00
Georges Basile Stavracas NetoandGeorges Basile Stavracas Neto f62f370edd linux-pipewire: Remove unnecessary variable
No functional changes. The code is just ever so slightly easier to
read now.
2023-03-01 20:47:49 -03:00
Georges Basile Stavracas NetoandGeorges Basile Stavracas Neto 436787c1f4 linux-pipewire: Check for effective crop region
Some compositors send buffer crop information even when the crop
matches the buffer size. It doesn't really matter in practice,
but it's good hygiene to check for the effective crop instead of
simply checking if crop exists.
2023-03-01 20:47:49 -03:00
Georges Basile Stavracas NetoandGeorges Basile Stavracas Neto d68b061d57 linux-pipewire: Adjust cosmetics
Move code into auxiliary functions, to improve the legibility of the
draw function. It also gets rid of these pesky switch fallthroughs.
No functional changes.
2023-03-01 20:47:49 -03:00
Georges Basile Stavracas NetoandGeorges Basile Stavracas Neto 925888b763 linux-pipewire: Fix wrong error message
In the non-DMA path, we are logging an error message saying that
the DMA format is wrong. That's not the DMA format, it's the raw
buffer format.

Fix the message.
2023-03-01 20:47:49 -03:00
Georges Basile Stavracas NetoandGeorges Basile Stavracas Neto f520b251fb linux-pipewire: Demote yet another error to debug
This was an oversight from commit be629b93c.
2023-03-01 20:47:49 -03:00
414937a963 rtmp-services: Update Streamvi (#7921)
Co-authored-by: Joel Bethke <joel.bethke@gmail.com>
2023-03-01 17:36:58 -06:00
StripchatandGitHub 8fd6949778 rtmp-services: Update Stripchat streaming service (#8269) 2023-03-01 16:16:01 -06:00
87b7f7785f rtmp-services: Add LiveStreamerCafe (#8203)
Incremented version number as requested.

Co-authored-by: Kristopher Marentette <tophicles@syslog.brucenet>
2023-03-01 16:15:45 -06:00
6e0f5dccb2 rtmp-services: Update Switchboard Live Servers (#8180)
Co-authored-by: Regan Baah <one0ten@outlook.com>
2023-03-01 16:15:25 -06:00
480a8700da rtmp-services: Update Mildom more_info_link (#8334)
Co-authored-by: kevin.dww <kevin.dww@nonolive.com>
2023-03-01 16:13:38 -06:00
derrodandRyan Foster d15dce99d0 updater: Multi-threaded delta patching 2023-03-01 16:20:43 -05:00
derrodandRodney b7f6ae7d7b cmake: Enable stricter MSVC compiler options 2023-03-01 20:39:53 +01:00
derrodandRodney 166dc4909d enc-amf: Update submodule 2023-03-01 20:39:53 +01:00
derrodandRodney 3c92413674 win-dshow: Remove obsolete name in REGFILTERPINS 2023-03-01 20:39:53 +01:00
derrodandRodney 2ac8ce8f65 obs-ffmpeg: Fix __VA_ARGS__ for comma ellision 2023-03-01 20:39:53 +01:00
derrodandRodney f9cce334d2 libobs: Add copy constructor for ComQIPtr 2023-03-01 20:39:53 +01:00
derrodandRodney 60844505d0 UI: Replace uses of token-pasting operator 2023-03-01 20:39:53 +01:00
derrodandRodney 19b6d79597 win-capture: Fix possible macro redefinition 2023-03-01 20:39:53 +01:00
pkvandRyan Foster 2e79d4c902 obs-ffmpeg: Fix for FFmpeg 6 deprecating a flag
Also modifies libobs & deps/media-playback.
AV_CODEC_CAP_TRUNCATED was removed in avcodec 60 [1].
We ifdef the code depending on it to allow compilation.

[1] avcodec: remove FF_API_FLAG_TRUNCATED
https://github.com/FFmpeg/FFmpeg/commit/3ceffe783965767e62d59e8e68ecd265c98460ec

Signed-off-by: pkv <pkv@obsproject.com>
2023-03-01 13:23:51 -05:00
Ryan FosterandRodney 2b84155da4 cmake: Remove FindRSSDK
Follow-up to PR #7371 (commit a1a98f9cfd).

We forgot to remove the Finder that was only used for that plugin. Let's
remove it now.
2023-03-01 18:16:34 +01:00
PatTheMavandRyan Foster e23455dc74 libobs: Fix device functions not marked as EXPORT
As clang and gcc use "default" visibility (as in "not hidden") when
no visibility is specified, all functions are implicitly exported.

When changing default visibility to "hidden", the corresponding symbols
are not exposed anymore and linking fails. This PR updates all
functions signatures that were added in recent commits but not set to
be EXPORTed.

Also makes required OpenGL imports for texture sharing on macOS
mandatory.
2023-03-01 12:02:33 -05:00
derrodandRyan Foster a9d3b9cbd1 libobs: Clarify memalign ToDo item 2023-03-01 11:18:47 -05:00
Norihiro KamaeandRyan Foster 22a98c279e UI: Fix tabstops on settings dialog 2023-03-01 10:50:10 -05:00
CodeYan01andRyan Foster b4fdf2a329 docs: Clarify enum_scenes order 2023-03-01 09:44:35 -05:00
CodeYan01andRyan Foster 8ac894a62b docs: Link to obs_scene_from_source in enum_scenes
Enumerating scenes but receiving an obs_source_t is confusing.
2023-03-01 09:44:35 -05:00
CodeYan01andRyan Foster 7605883303 docs: Clarify weak source releasing 2023-03-01 09:44:35 -05:00
derrodandJim a5468cfee0 libobs: Make wcs<->utf8 conversion consistent
On Windows NULL characters would be included in the output if insize is
non-zero, but on *nix it would abort on the first NULL.
2023-02-28 18:36:18 -08:00
derrodandRyan Foster 77e4c1c305 cmake: Check if Sparkle options are non-empty 2023-02-27 13:06:26 -05:00
PatTheMav 953e0eda53 UI: Remove unused variable 2023-02-27 18:40:52 +01:00
gxalphaandJim fea4a19c8b obs-ffmpeg: Add full_decode to media source log
This is an option that while very powerful also provides a footgun for
users if they don't have enough memory. It will be helpful for support
volunteers to be able to see if the option has been enabled.
2023-02-25 19:26:51 -08:00
FrankandJim 20a3ec4a2f libobs: Fix scene_audio_render() incorrectly mixing audio
When the `pos` variable is non-zero, audio does not get mixed correctly.
This is due to the fact that the `pos` variable was erroneously being
applied to the input rather than the output.
2023-02-25 19:25:15 -08:00
Jim 4bf14d09b4 obs-transitions: Add option to preload stinger video to RAM
Stingers -- and especially track matte stingers -- are currently subject
to real time decoding, which can be detrimental in a production
environment where a stinger video may not be able to decode in a timely
fashion.

To remedy this, this change adds an option to fully decode stingers
immediately and cache the decoded video/audio in RAM for playback to
greatly improve stinger performance.
2023-02-25 18:13:11 -08:00
gxalphaandRodney b0ebcff4e8 CI: Stop pinning Xcode to 14.1
This was needed to get the macOS 13 SDK when Xcode 14.0 was the default.
It no longer is (at the time of writing the default is 14.2), so we can
(and probably should) stop pinning to the older 14.1
2023-02-26 03:09:25 +01:00
tytan652andJim 6734c9cbc8 UI: Stop virtual camera if active while exiting
Avoid potential memory leaks and crashes.
2023-02-25 16:06:59 -08:00
tytan652andJim 0f560a9136 UI: Fix scene/source in virtual camera config if renamed 2023-02-25 16:06:59 -08:00
tytan652andJim 501a3e926d UI: Refactor Virtual Camera source selector dialog 2023-02-25 16:06:59 -08:00
Ryan FosterandJim dc5813c947 libobs-d3d11: Log D3D11 adapter memory correctly
DXGI_ADAPTER_DESC's DedicatedVideoMemory and SharedSystemMemory are
unsigned long long int, but we were logging them as unsigned int. For
GPUs with memory values higher than 4294967295, the logged value would
roll over. Use %PRIu64 (%llu on VS2022) instead of %u in the log call.
2023-02-25 15:42:01 -08:00