3459 Commits

Author SHA1 Message Date
jp9000
0dbae4ebef win-dshow: Ensure thread is joinable before joining
This may have been the issue behind the reported firefox crashes, but
strangely, the thread should always be joinable here because it's
explicitly always created in the constructor and joined in the
destructor.
2022-02-23 04:13:38 -08:00
Richard Stanway
a39d174100 obs-outputs: Set a fixed size socket buffer on Windows 7
Auto tuning apparently doesn't work very well on this version and
af6844f5c24d77ca7b4b1bcc000504d8e693a563 caused throughput
regressions.
2022-02-20 16:16:17 -08:00
jp9000
3ca0bf8c0e obs-browser: Add support for custom OBS CEF
Our version fixes the system freeze issue, reduces resource usage, and
improves performance back to 3770 levels.

See obsproject/cef@36fdac16a7 for detailed information.
2022-02-20 11:43:55 -08:00
jp9000
b6b696fd89 obs-browser: Fix texture recreating every frame 2022-02-19 22:52:19 -08:00
Kurt Kartaltepe
23feac1323 linux-v4l2: Use decoded MJPEG pixel format
Previously we assumed mjpeg was always decoded to 422 but it seems some
cameras provide frames that decode to different pixel formats such as
420.

This change delays setting the obs frame pixel format until after we
have decoded the v4l2 frame.

fixes #5821
2022-02-19 23:53:41 -03:00
Matt Gajownik
02f80a1013 win-wasapi: Only enable work queue on Windows 10+
Fixes #5967
2022-02-19 15:37:50 -08:00
jpark37
6eec19771a obs-filters: Reduced GPU work for common LUT cases
Add "Passthrough Alpha" checkbox where alpha doesn't need sanitization.

Remove domain checks, Intel UHD Graphics 750: 591 µs -> 532 µs
Alpha passthrough, Intel UHD Graphics 750: 532 µs -> 486 µs
2022-02-19 15:29:48 -08:00
jpark37
873e3a0aae obs-filters: Reduce 3D LUT calculations
Single tap is good enough.

Intel UHD Graphics 750: 860 µs -> 591 µs
2022-02-19 15:29:48 -08:00
jpark37
8e8c29d84c obs-filters: Interpolate LUT in linear space
More accurate and cheaper.

This is a breaking change because Amount is also now computed as linear,
but most users are probably using 1.0, so v2 isn't worthwhile.

Intel UHD Graphics 750: 980 µs -> 860 µs
2022-02-19 15:29:48 -08:00
jpark37
c434d4d39b obs-filters: Update original.cube
Need more LUT entries to reduce error when shader is optimized.
2022-02-19 15:29:48 -08:00
jpark37
ca3fdd8eaf obs-filters: Add effect files to VS solution 2022-02-19 15:29:48 -08:00
pkv
5b0c09a9f4 obs-ffmpeg: Force mpegts format & disable restart on activate for srt & rist
This fixes crashes in media Source when :
- the user forgets to set the input format for srt or rist URLs;
- disabling / enabling / disabling etc Media source with a rist URL.

Signed-off-by: pkv <pkv@obsproject.com>
2022-02-19 15:17:19 -08:00
Florian Zwoch
d16950a2f6 linux-capture: Fix for pipewire capture leaking texture handles
Enter the graphics context before calling gs_texture_destroy() or
else the call will fail causing the texture handles to leak.
2022-02-19 20:06:03 -03:00
jp9000
ab1d20b237 obs-browser: Fix issues with rendering on Linux/macOS 2022-02-19 10:18:48 -08:00
jp9000
ddf1078e32 obs-browser: Fix rendering on non-windows
The copy operation wasn't supposed to be in the #ifdef for windows.
2022-02-19 09:18:36 -08:00
jp9000
6a3043abd2 obs-browser: Fix sRGB rendering 2022-02-15 23:51:07 -08:00
jp9000
40b990a559 obs-browser: Update version to 2.17.10 2022-02-15 23:19:17 -08:00
jp9000
ee878043b2 obs-browser: Acquire, copy, and release immediately
Instead of holding onto an acquire over the duration of an entire frame,
acquire, copy to a texture, and immediately release the lock.

(Note from Jim: When it comes to synchronization, the idea of acquiring
a lock, and then releasing all the way in the next frame just feels a
bit worrisome. Especially when it's a GPU object. But at this point, I'm
just making shots in the dark in an attempt to eliminate any possible
things that might even have a remote chance to trigger latent bugs in a
GPU driver or the kernel. You know, that whole system freeze thing. This
probably doesn't have anything to do with it, at this point I have
nothing but wild geese to chase. Whatever.)
2022-02-15 23:12:20 -08:00
Thulinma
9c504f4d35 rtmp-services: Update Picarto ingests 2022-02-12 15:02:10 -08:00
Translation Updater
25b58f0417 Update translations from Crowdin 2022-02-11 00:34:08 +00:00
jp9000
109b54fd66 obs-ffmpeg: Fix svt-av1 rate control settings
For SVT-AV1, rate control is explicitly set via an "rc" option, so set
those options manually for SVT-AV1. CBR doesn't seem to be fully
supported, but it's sort of supported via CVBR (constrained variable
bitrate), which seems to be specific to each GOP size, which is about as
close to CBR as we can get.
2022-02-07 13:11:34 -08:00
Translation Updater
ac8dbf67be Update translations from Crowdin 2022-02-06 02:24:08 +00:00
Cenk Uluisik
f52f34b614 linux-capture: Fix missing parameter for pipewire capture
Commit a3a6710 introduced the obs_pipewire_save() function in the
PipeWire code, but only set it to the monitor capture source. This
was an oversight, it should have been set to the window capture
source as well.

Set the .save vfunc of the window capture source as well.

Closes obsproject/obs-studio#5906
2022-02-04 13:09:12 -03:00
Paul Hindt
95020dd629 aja: Fix off-by-one output frame index calculation 2022-02-02 11:20:05 -06:00
Roman Sivriver
e6a55e7763 rtmp-services: Update YouNow ingest 2022-02-01 13:42:08 -08:00
Matt Gajownik
3aa90f7076 obs-transitions: Fix All Files option for Stingers
On Windows, All Files was added by default with (*), but on macOS and
Linux this appeared as an empty option in the dropdown and treated as a
Video Files filter rather than All Files.

This also adds proper translation handling for 'Video Files', matching
the obs-ffmpeg-source.

Fixes #5870
2022-01-29 19:53:31 -08:00
Jim
3e4e8d2fd0 vlc-video: Set channel limit to 8 instead of 2
17c069e1d02049b changed to add support for surround sound, but the limit
should really just be 8 channels as pointed out by tt
2022-01-29 15:28:36 -08:00
Francisco Oltra
5f5355a813
rtmp-services: Update nanoStream Cloud / bintu ingests (#5884)
* rtmp-services: Update nanoStream Cloud / bintu ingests

 - fix transcoding rtmp urls
 - add information and dashboard links
2022-01-29 15:24:46 -08:00
pkv
17c069e1d0 vlc-video: Enable surround sound support
The vlc plugin was keeping only up to two audio channels. It was overlooked when surround sound support was added to obs-studio. This commit remedies this oversight.

Signed-off-by: pkv <pkv@obsproject.com>
2022-01-29 15:22:29 -08:00
Chris
306e23292d win-dshow: Log buffered state 2022-01-29 15:14:58 -08:00
jpark37
9f41531541 win-dshow: Use OBS_SOURCE_FRAME_LINEAR_ALPHA
This flag leads to a cheaper technique, "Draw" instead of
"DrawNonlinearAlpha", and all the paths are opaque anyway.
2022-01-29 15:10:53 -08:00
Matt Gajownik
364f102561 obs-browser: Fix Windows crash if shared texture is unavailable 2022-01-29 18:05:25 +11:00
Paul Hindt
29b835b20f aja: Disable Analog In/Out selections in the UI
Analog capture/display for supported cards will be added in the future.
2022-01-28 23:58:53 -06:00
Paul Hindt
ba875377d0 aja: Fix Kona1 simultaneous capture/output 2022-01-28 20:23:40 -06:00
Paul Hindt
3fbd5d9179 aja: Adjust whitespace for consistency 2022-01-28 20:23:40 -06:00
Paul Hindt
8d051c6a1c aja: Use SDI Transport selection to engage Auto detection
Otherwise use Video and Pixel format selections to engage Auto detection for HDMI
2022-01-28 20:23:40 -06:00
Paul Hindt
0ef3b29cad aja: Show/Hide SDI Transport/4K lists and options
Only show SDI Transport options if IOSelection is SDI and

only show 12G selection in Capture plugin
2022-01-28 20:23:40 -06:00
Paul Hindt
f559287723 aja: Fix 2xSDI UHD/4K YCbCr 2SI VPID lookup 2022-01-28 20:23:40 -06:00
Paul Hindt
0d15bb0b94 aja: Hide duplicate HDMI IN entry for Kona HDMI 2022-01-28 20:23:40 -06:00
Paul Hindt
a4c0996d59 aja: Filter 6G/12G SDI Transport depending device/plugin type 2022-01-28 20:23:40 -06:00
Paul Hindt
d2515170e1 aja: Disable UHD/4K high-framerate for Output
A fix for UHD/4K HFR modes will be added in a future plugin release.
2022-01-28 20:23:40 -06:00
Paul Hindt
5f81d4117f aja: Clear previous crosspoints when signal changes
Fix for a bug where stale crosspoint connections could result in

video glitches upon next connection.
2022-01-28 20:23:40 -06:00
Paul Hindt
d18b805aee aja: Remove unfinished 2x4K Squares support
Support for 2x4K Square Division will be added in a future update
2022-01-28 20:23:40 -06:00
Paul Hindt
eafe588bd3 aja: Re-work HDMI routing and add missing presets 2022-01-28 20:23:40 -06:00
Paul Hindt
4650cf4574 aja: Fix HDMI RGB crosspoint indices 2022-01-28 20:23:40 -06:00
Paul Hindt
71e3fcc5de aja: Add framestore index helpers to Source/OutputProps 2022-01-28 20:23:40 -06:00
Ryan Foster
5bbb36acf8 mac-vth264: Set RealTime property to False
While the Apple documentation currently seems to indicate that we should
set RealTime to True, it appears that this may be causing issues with
the encoder not being able to meet the target frame rate. Both FFmpeg
and Handbrake have recently explicitly set this value to False, and
preliminary tests seem to indicate that setting this to false in OBS has
favorable results.
2022-01-28 11:35:50 -08:00
Ryan Foster
6360b2e425 mac-vth264: Use float for expected frame rate
The encoder property kVTCompressionPropertyKey_ExpectedFrameRate is a
hint to the video encoder. Since frame rates can be fractional, let's
use a float here instead of an int.
2022-01-28 11:35:50 -08:00
Ryan Foster
63eb2d1c31 mac-vth264: Remove OSX 10.8 compatibility code
OBS no longer supports building on OSX. The minimum version of macOS
that we support is macOS 10.13. We can safely remove this 10.8
compatibility code.
2022-01-28 11:35:50 -08:00
jp9000
c2b1f93a7b obs-vst: Fix VSTs losing their settings when upgrading 2022-01-26 08:12:04 -08:00