0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 13:08:50 +02:00
Commit Graph

10773 Commits

Author SHA1 Message Date
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
Ryan Foster
7eb36eadb1 CI: Update macOS image to macOS 12
Update the macOS image used on GitHub Actions from macOS 11 to macOS 12.
2022-04-28 17:34:53 -04:00
jpark37
53f4bf3430 cmake: Define ENABLE_HEVC globally if set 2022-04-28 08:59:53 -07:00
jpark37
165a513f78 UI: Allow HEVC streaming 2022-04-28 08:59:53 -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
jpark37
a82bbb416f libobs: Fix NaNs when using EETF for HLG 2022-04-26 10:11:28 -07:00
jpark37
ed85307f7e libobs: Clean up color.effect a bit 2022-04-26 10:11:28 -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
Andrew Story
961b75b58c libobs,UI: Issue appropriate signals on group / ungroup
Due to the way the frontend works, the logic for inserting the row for
the group in the UI was dropped since the new item_add message will
insert one automatically since it forces a refresh of the scene items.
The reliance on that implicit row insertion when grouping items is a
bit of a code smell, although the alternative would be to add logic to
disable handling the signal for that instant, which is probably a
worse choice.
2022-04-24 12:09:38 -07:00
jp9000
f482111791 libobs: Add ability to configure audio buffering latency
Allows a frontend the ability to set the maximum audio buffering
latency, and specify whether that audio buffering is either fixed (to
the maximum audio buffering latency), or dynamically increasing from 0.

This will be useful if the user wishes to output audio to devices or
through a virtual audio device at a guaranteed minimal latency.
2022-04-24 08:44:33 -07:00
jp9000
090613851e libobs: Fix debug spam from maxed buffering
When audio buffering is maxed, certain sources will always repeat the
same debug logging message of "render audio source [name] has gone
backwards", which shouldn't apply if the audio timestamp is 0 rather
than a valid audio value.
2022-04-24 07:59:35 -07:00
jp9000
e3bdb4ca7b libobs: Add ability to use fixed audio buffering
This is in anticipation to adding low audio latency mode, will cause
audio buffering to be fixed rather than dynamically increasing. Having
fixed audio buffering means that audio latency always stays the same
rather than dynamically increasing.
2022-04-24 07:59:10 -07:00
Ryan Foster
4b078b9296 CI: Respect user-specified build directory
The Windows build script would respect the user-specified build
directory for the configure step, but not for the build step. Fix that
by applying the same logic in Configure-OBS to Build-OBS.
2022-04-23 20:04:20 -04:00
jpark37
ff58622df6 obs-transitions: Remove unused shader functions
Leftover from previous commit.
2022-04-23 16:24:27 -07:00
mvji
80600c1c26 UI: Fix compiler warning when WIN32 is not defined
Fix unused parameter warning.
2022-04-23 16:12:45 -07:00
mvji
a427d69d76 UI/importers: Fix compiler warning
Fix comparison of integers of different signs.
Use string::npos instead of -1
2022-04-23 16:12:45 -07:00
mvji
c6029ac658 libobs-opengl: Fix compiler warning
Fix unused parameter warning.
2022-04-23 16:12:45 -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
Kurt Kartaltepe
855572ed7c libobs-opengl: Disable vsync during present
Brings X11 EGL in line with Wayland. This prevents you from recording at
a higher fps than the monitor where an OBS preview is being displayed.
2022-04-23 00:57:42 -03: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
Jim
84e6d77ad5 Revert "libobs: Allow null sei in obs_extract_avc_headers"
This reverts commit baa8d03f78.
2022-04-22 17:00:55 -07:00
tytan652
f4e696b39c flatpak: Cleanup PipeWire module 2022-04-22 20:32:45 -03: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
jp9000
493f6337f3 libobs/util: Add ConfigFile::OpenString()
For convenience
2022-04-22 12:49:38 -07:00
jp9000
a9ce118794 libobs/util: Add missing extern "C" header guard 2022-04-22 12:48:54 -07:00
jp9000
baa8d03f78 libobs: Allow null sei in obs_extract_avc_headers 2022-04-22 12:48:09 -07:00
derrod
ac674e4130 CI: Do not run Steam workflow on forks 2022-04-21 10:52:38 -04:00
Kurt Kartaltepe
242b49aa8a UI: Remove top level size constraints
This removes the min and max size properties from the YouTube "Manage
Broadcast" dialog. Such values depend on the actual content or very
precise layout management, making hardcoded values prone to being
incorrect. To avoid incorrect values we should avoid these settings on
top level widgets/windows.

This pattern can lead to crashes on Wayland compositors like
GNOME which are strict about these values being correct.
2022-04-20 18:34:45 -07:00
Richard Stanway
4c96feafab
obs-ffmpeg: Fix compiler warning 2022-04-19 03:23:53 +02:00
Richard Stanway
42ce624b13
libobs: Remove unnecessary blend_type assignment
The code pattern for all other assignments skips the default value.
Detected by PVS Studio.
2022-04-19 03:16:48 +02:00
Richard Stanway
0bc955bdf2
libobs: Fix wrong enum in obs_sceneitem_get_blending_method
Detected by PVS Studio.
2022-04-19 03:16:48 +02:00
jp9000
050a29da1a UI: Use const ref for get_service_from_json() 2022-04-18 17:46:07 -07:00
jp9000
22ffc04f73 UI: Refactor duplicated streaming page code
Moves duplicated streaming service code to its own class to make this
particular code slightly less insufferable to modify (but only slightly)
2022-04-18 12:27:29 -07:00
jp9000
275e510aad UI: Prevent auto config service names squishing 2022-04-18 12:27:29 -07:00
derrod
e860b26589 CI: Add Steam build uploader 2022-04-18 14:08:33 -04:00
Norihiro Kamae
7b8793f6c3 libobs: Log audio timestamp exceeding TS_SMOOTHING_THRESHOLD
Timestamp of some of audio sources desync over the time and audio glitch
is suspected to be caused when the difference between `timestamp` and
`next_audio_ts_min` exceeds TS_SMOOTHING_THRESHOLD.
When such condition happens, leave a log message to investigate the
glitch of the audio.
2022-04-18 07:51:07 -07:00
jpark37
01565a0293 obs-transitions: More HDR support
Updated luma wipe, slide, and swipe.
2022-04-18 05:24:12 -07:00
jpark37
74daf5cbaf libobs: Fix color space auto-convert blending
Need premultiplied alpha for this, not straight alpha.
2022-04-18 05:23:34 -07:00
jpark37
05b673381f deps/media-playback: Add P010 to closest_format
Used by HDR media playback with hardware decode.
2022-04-18 05:23:13 -07:00
gxalpha
6f3a29a3f8 CI: Fix clang-format to include Objective-C 2022-04-18 10:43:44 +10: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
gxalpha
2422deb78a UI: Default mixer volume meter to two channels
If OBS is set to mono, it will still default to mono.
Also corrects a somewhat related comment (which was also wrong before
this change)
2022-04-17 11:54:50 +10:00
gxalpha
283f7edfd7 libobs: Make obs_volmeter_get_nr_channels default to 0
Defaulting to 1 means that it can't be differentiated between whether a
source really has 1 channel. Now, should a source not have any audio
(yet), this function makes it very clear that this is the case by
returning 0.
2022-04-17 11:54:50 +10:00
田七不甜
94b19960e7 rtmp-services: Update Bilibili Live 2022-04-16 16:48:54 -07:00