3422 Commits

Author SHA1 Message Date
Paul Mc Galey
59bdac1569 vlc-video: Fix video rotation and aspect ratio
Fixes #5250 and #3843.
Gets dimensions, aspect ratio and orientation/rotation from source video track.
2022-05-07 16:03:24 -07:00
Richard Stanway
8bd4ef61a0
obs-ffmpeg: Change types to avoid unnecessary casts 2022-05-07 16:01:48 +02:00
jpark37
5ee5a8e1d4 obs-ffmpeg: Log/fail NVENC for B-frame maximum
Check NV_ENC_CAPS_NUM_MAX_BFRAMES to avoid exceeding the GPU limit.
2022-05-07 01:33:05 -07:00
jpark37
e74dc0dfe3 obs-ffmpeg: Default NVENC HEVC Max B-frames to 0
All NVENC cards support H.264 B-frames, but Turing is the first
generation to support HEVC B-frames.
2022-05-07 01:33:05 -07:00
jpark37
79059153e8 obs-ffmpeg: Fix old NVENC ignoring Max B-frames 2022-05-07 01:33:05 -07:00
jpark37
4e35e3402b obs-x264: Restore video encoder name to log 2022-05-06 20:41:15 -07:00
jpark37
2f3c25b544 obs-x264: Disallow HDR attempts gracefully
Replace crash with standard recording failure dialog, and log message.
2022-05-06 14:41:39 -07:00
pkv
5e4081e563 vlc-source: Fix surround sound not properly downmixed
This fixes issue https://github.com/obsproject/obs-studio/issues/6295 .
libvlc does some downmixing/upmixing when the number of channels
requested is less than the number of channels of the source.
We take advantage of that feature to avoid doing it with swresample
because we're missing info that libvlc is not giving (the exact channel
layout of the source).

Signed-off-by: pkv <pkv@obsproject.com>
2022-05-06 12:34:14 -04:00
jpark37
e513d1cb6b obs-ffmpeg: Fix NVENC HEVC fallback being H.264 2022-05-04 23:54:53 -07:00
PatTheMav
4ac3299575 vlc-video: Fix compiler warnings 2022-05-04 12:09:04 -04:00
PatTheMav
a97f8b7128 mac-vth264: Fix compiler warnings 2022-05-04 12:09:04 -04:00
PatTheMav
b52b292fa2 mac-capture: Fix compiler warnings 2022-05-04 12:09:04 -04:00
PatTheMav
5e13460fae mac-virtualcam: Fix compiler warnings 2022-05-04 12:09:04 -04:00
Jim
952988d9ec
Merge pull request #6231 from mvji/prores_pix_fmt
Add support for GPU conversion of YUV422P10LE, YUV444P12LE, YUVA444P12LE
2022-05-04 02:01:27 -07:00
tytan652
16e19d2e9c obs-output: Fix compiler warnings
* obs-output: Fix unused-parameter warning

* obs-output: Fix pointer type mismatch warning
2022-05-04 01:37:10 -07:00
tytan652
ce62240530 obs-ffmpeg: Fix compiler warnings
* obs-ffmpeg: Fix format-overflow warning

* obs-ffmpeg: Fix unused-parameter warnings
2022-05-04 01:37:10 -07:00
tytan652
096ec55c83 linux-v4l2: Fix format-truncation warning 2022-05-04 01:37:10 -07:00
Paul Hindt
61dc1d7bcf aja: Fix UHD/4K HDMI output on Kona5-8K firmware 2022-04-30 16:29:56 -07:00
Norihiro Kamae
8c66a59139 obs-libfdk: Enable 7.1 channel surround for Linux
The surround audio was introduced by bbac3280c1 but 7.1 channel audio
was disabled since libfdk-aac >= 0.1.3 is required.
Now the minimum Ubuntu version is 18.04, which provide libfdk-aac 0.1.5.
2022-04-30 16:28:45 -07:00
tt2468
66a7db7f2a obs-outputs: Implement send timeout in librtmp
This fixes a bug where the RTMP send thread can deadlock upon the
underlying TCP connection being broken. By introducing a send timeout,
this allows the thread to unblock and give up, triggering a reconnect
as normal. The correct solution to this problem would be to rewrite
librtmp with asynchronous IO, but that seems like something unlikely
to happen.

**Before**:
- Start stream in OBS
- Use tool (pfSense) to invalidate connection state
- OBS bitrate drops to 0
- Output does not respond to stop signals, and hangs for an undefined
amount of time (usually multiple minutes) before finally giving up

**After**:
- Start stream in OBS
- Use tool (pfSense) to invalidate connection state
- OBS bitrate drops to 0
- Output sits in blocked state for maximum of 8 seconds, then cleans
up and triggers the reconnect logic
2022-04-30 16:22:10 -07:00
Norihiro Kamae
34e570c5bc Fix indent on multiline comments 2022-04-30 16:06:23 -07:00
jpark37
80f6cff742 obs-ffmpeg: Add content light levels for HDR
YouTube wants it, and more metadata can only improve compatibility.
2022-04-30 16:05:01 -07:00
jpark37
9677ad1876 obs-ffmpeg: Add I010/P010 as formats for old NVENC
Avoids fallback to NV12, crushing 10-bit into 8-bit.
2022-04-29 12:34:56 -07:00
jpark37
01a806cb53 obs-ffmpeg: Add HEVC support to NVENC 2022-04-28 08:59:53 -07:00
jpark37
7e8b1d90e9 win-dshow: Support HEVC decode 2022-04-28 08:59:53 -07:00
tt2468
9168797361 libobs,obs-outputs: Fix librtmp1 interference
Details in #6226, basically this fixes an issue where OBS links
to the system-installed librtmp1, which is incompatible with our
librtmp.

Co-authored-by: ewhac <ewhac@ewhac.org>
2022-04-25 18:45:05 -07:00
jpark37
ff58622df6 obs-transitions: Remove unused shader functions
Leftover from previous commit.
2022-04-23 16:24:27 -07:00
mvji
9a8e50a100 obs-transitions: Fix compiler warning
Fix unused parameter warning.
2022-04-23 16:12:45 -07:00
Norihiro Kamae
c5154cc317 aja: Subtract packet time from audio timestamp
When calling `obs_source_output_audio`, timestamp should be the starting
time of the audio packet.
2022-04-23 07:04:59 -07:00
jpark37
cb42be3665 win-dshow: Respect TRC of encoded video
Fixes colors for devices that send HDR streams.
2022-04-23 07:03:35 -07:00
Jim
3883c9e120 cmake: Add option to build hardware HEVC encoders
Allows the ability to enable HEVC encoders whenever we add them.
Disabled by default for now for obvious reasons.
2022-04-22 17:39:43 -07:00
jp9000
c5e328e359 obs-ffmpeg: Refactor FFmpeg video encoders
This reduces code duplication between the different FFmpeg-based video
encoder implementations
2022-04-22 12:51:38 -07:00
mvji
2b6230ef34 win-dshow: Add YVYU format 2022-04-19 19:39:44 +02:00
mvji
93490da4c2 obs-ffmpeg: Use YVYU for FFmpeg pix fmt YVYU422
This commit also modifies deps/media-playback and libobs.
2022-04-19 19:39:22 +02:00
mvji
ae94c35152 obs-ffmpeg: Add support for YUV422P10LE, YUV444P12LE, YUVA444P12LE
This commit also modifies deps/media-playback
2022-04-19 19:38:28 +02:00
Richard Stanway
4c96feafab
obs-ffmpeg: Fix compiler warning 2022-04-19 03:23:53 +02:00
jpark37
01565a0293 obs-transitions: More HDR support
Updated luma wipe, slide, and swipe.
2022-04-18 05:24:12 -07:00
jpark37
2e8ea0acdc obs-ffmpeg: Set P3-D65 metadata for HDR
Want to avoid receiver gamut remapping from Rec. 2100 to P3.

Fix min luminance appearing as NaN by switching from 0/0 to 0/1.

Also set max luminance for HLG because why not.
2022-04-17 13:44:32 -07:00
jpark37
3eb85c548f win-dshow: Add reactivation callback 2022-04-17 03:18:38 -07:00
jpark37
73f61922e6 win-dshow: Reference new device-vendor.cpp file 2022-04-17 03:18:38 -07:00
jpark37
e526f4c1fb win-dshow/libshowcapture: Toggle tonemapper according to format 2022-04-17 02:54:32 -07:00
田七不甜
94b19960e7 rtmp-services: Update Bilibili Live 2022-04-16 16:48:54 -07:00
jpark37
0d72c314d4 obs-ffmpeg: Add max luminance metadata for PQ
Necessary for video player to remap display ranges.
2022-04-16 16:26:01 -07:00
PatTheMav
6e65754862 virtualcam-module: Copy Windows virtual camera files to rundir
Fix an issue where the Windows virtual camera build files were not being
copied to the rundir.
2022-04-14 16:15:42 -04:00
jpark37
93fe82d1ce win-capture: Add DXGI/WGC HDR support
HDR for DXGI/WGC display capture, and WGC window capture.

Also add fast SDR paths for BitBlt to skip color conversions.
2022-04-14 09:36:09 -07:00
jp9000
a4c215869f obs-ffmpeg/ffmpeg-mux: Fix splitting hang on Windows
stdout on Windows from a subprocess requires that something read the
stdout buffer, and currently we don't do that. Due to newly introduced
printf/fprintf calls, the stdout buffer eventually fills up because
nothing is emptying it, thus the muxer locks up on an fprintf/printf
call and causes OBS itself to hang.
2022-04-13 14:11:20 -07:00
jpark37
d35e7d3107 win-capture: Add HDR support to Game Capture 2022-04-13 06:23:11 -07:00
jpark37
14b1d34a06 win-dshow: Use Rec. 2100 (PQ) by default for P010 2022-04-12 12:02:43 -07:00
mvji
19defbcf04 obs-ffmpeg: Add mxf extension to open file dialog 2022-04-12 12:11:44 -04:00
Jim
b745a100a3
Merge pull request #5371 from norihiro/automatic-file-splitting
Automatic file splitting
2022-04-10 16:49:37 -07:00