3930 Commits
Author SHA1 Message Date
Richard StanwayandRodney b51773b97b rtmp-services: Specify RTMP_SERVICES_FORMAT_VERSION in package.json 2023-01-06 21:16:21 +01:00
Richard StanwayandJim 20d4bab77a win-capture: Always reset timeout when searching for target display
If the display wasn't found, the timer was not reset, causing the code
to execute on every single tick, stalling the graphics thread and using
excessive CPU.
2023-01-04 23:20:41 -08:00
pkvandRyan Foster 85b714706c obs-filters: Log NVIDIA Effects version only if lib is found
Put the version logging behind a condition of having found a library.

Signed-off-by: pkv <pkv@obsproject.com>
2023-01-03 16:51:39 -05:00
jp9000 122e864c38 obs-ffmpeg, obs-qsv11: Ensure adapter order in encoder tests
On systems with multiple graphics adapters, one card can be configured
as power saving, and another card can be configured as performance.
Sometimes, OBS and the encoder test subprocesses will not be configured
the same way, so it's necessary to provide adapter order to the encoder
test subprocesses.

This change ensures the adapter order by passing the LUIDs to the test
subprocesses. The adapter indexes will then be updated accordingly.
2022-12-19 12:17:30 -08:00
jp9000 2396c4a01c obs-ffmpeg: Remove EnumOutputs from encoder tests
This call will fail on multi-adapter systems, and isn't used anyway, so
just remove it. Not sure why it was called in the first place; pretty
sure it was unintended and was likely just copied over from the D3D11
subsystem code.
2022-12-19 12:03:01 -08:00
Service CheckerandRodney 626dbd3c3d rtmp-services: Remove defunct servers/services 2022-12-12 01:28:41 +01:00
jpark37andJim b7b7f0ae88 obs-ffmpeg: Set chroma location for VA-API 2022-12-11 14:12:36 -08:00
jpark37andJim 2a816c5fa7 obs-qsv11: Put mastering primaries in GBR order 2022-12-10 21:53:04 -08:00
jpark37andJim 0fc3cb1962 mac-videotoolbox: Add HDR metadata 2022-12-10 21:43:50 -08:00
Jim c84fae52e8 obs-ffmpeg: Fix AMF default CQP value
Was 7 for some reason, was supposed to be 20
2022-12-10 19:03:15 -08:00
Roman HutsandJim 4ba6b8b6ee obs-ffmpeg: Add new rate control method mappings for AVC/HEVC 2022-12-09 15:37:09 -08:00
pkvandJim c15cd23fcb obs-filter: Fix upward compressor
This fixes a bug where the upward compressor would hard limit above the
threshold.
Also this changes detection to RMS instead of peak for the upward
compressor.
This sounds better than peak (tested on regular mike and a test tone).

Signed-off-by: pkv <pkv@obsproject.com>
2022-12-09 12:12:55 -08:00
Jim ddba05c36c obs-ffmpeg: Use enum for av1 encoders
Allows us to add rav1e later
2022-12-05 19:19:20 -08:00
Roman HutsandJim ad407eccab obs-ffmpeg: Bump AMF version to v1.4.29 2022-12-03 15:39:38 -08:00
Roman HutsandJim 72a2c3baaa obs-ffmpeg: Add new rate control methods for AMD AVC/HEVC 2022-12-03 15:39:38 -08:00
jpark37andJim 6c8028a849 mac-videotoolbox: Don't parse HEVC as AVC 2022-12-03 15:31:41 -08:00
jpark37andJim e8792ac791 obs-ffmpeg: Improve chroma location decision
The chroma location doesn't just depend on pixel format, but we're just
trying to pick something reasonable for now.
2022-12-03 15:24:18 -08:00
gxalphaandJim b6fe7dbd4e obs-filters: Use correct signal to reset greenscreen filter 2022-12-03 15:18:11 -08:00
gxalphaandJim f5e8a2c34b image-source: Remove cleared missing files from slideshow 2022-12-03 15:17:27 -08:00
pkvandJim ece4d1e90e obs-ffmpeg: Allow srt stream to disconnect after timeout
Fixes #7848
Currently OBS_OUTPUT_INVALID_STREAM is emitted when a wrong password is
used. This commit expands the signal emission to case of timeouts.

Signed-off-by: pkv <pkv@obsproject.com>
2022-12-03 15:02:03 -08:00
Clemens MeinhartandRodney ba27474027 rtmp-services: Add Bitmovin 2022-12-02 15:48:00 +01:00
Jim ee88776c7e obs-qsv11: Set subprocess timeout to 10 sec
(Jim note: Apparently my laptop with two intel GPUs actually took too
long, so I'm giving it another 2 seconds max)
2022-12-01 18:34:40 -08:00
jpark37andJim 47f4c18a95 win-dshow: Ignore FFmpeg colorspace if overridden
Verified MJPEG devices are no longer locked to Rec. 601.
2022-12-01 14:14:25 -08:00
ChrisandRyan Foster 3d87b3b948 obs-ffmpeg: Disable VBAQ for H264 CQP rate control
Checks if rate control is CQP, if not, enable VBAQ. As per AMD, VBAQ
should not be used with CQP.
2022-11-30 17:42:59 -05:00
jp9000 5496802182 obs-qsv11: Fix QSV detection
When this detection helper was originally written, it incorrectly set
the hardware implementation value. This fixes it to use the correct one
based upon the index.
2022-11-30 13:26:16 -08:00
Jim 5c0773e128 obs-qsv11: Fix encoder capping resolution on dgpus 2022-11-28 08:36:46 -08:00
Jim 9435458c46 Revert "obs-qsv11: Don't set to low power mode if AV1"
This reverts commit eaa85ca8b3.

(Jim note: I misunderstood the situation)
2022-11-28 08:04:20 -08:00
Jim 0aa12088b3 obs-qsv11: Fix HDR not working with AV1
Neither the mfxExtMasteringDisplayColourVolumme and
mfxExtContentLightLevelInfo structures appear to be supported when using
AV1, so if using AV1, do not include these structures.

It's unknown as to why AV1 fails to initialize when using either of
these extended structures as part of its configuration parameters.
Either they're completely unsupported or there's a member variable that
causes initialization to fail.
2022-11-27 14:19:22 -08:00
Jim eaa85ca8b3 obs-qsv11: Don't set to low power mode if AV1
If AV1 is being used, this code path doesn't make sense because it's
meant for older devices. If the encoder is AV1, it's a newer device.
2022-11-27 14:17:38 -08:00
Jim e72aa91a6d obs-qsv11: Keep ExtParam value around
This wasn't meant to be freed in InitParams
2022-11-26 08:44:16 -08:00
jp9000 dd61943ddf obs-qsv11: Remove statics, fix buffer misuse
This whole "array of pointers" thing is very dumb and dangerous.
2022-11-22 17:27:10 -08:00
fceee90aa9 obs-qsv11: Add HEVC
Co-authored-by: jpark37 <jpark37@users.noreply.github.com>
Co-authored-by: Jim <obs.jim@gmail.com>
2022-11-22 07:29:31 -08:00
Jim 37a8835895 obs-qsv11: Don't declare vars in switch w/o braces 2022-11-22 05:56:25 -08:00
Jim 84565000f7 obs-qsv11: Remove unused function 2022-11-22 05:54:22 -08:00
Jim 0870a23d6c obs-qsv11: Fix profile default for AV1
"high" profile is not supported by AV1
2022-11-22 05:44:29 -08:00
Jim 5b11cfd04d obs-qsv11: Remove unused function declaration 2022-11-22 05:23:15 -08:00
ChrisandJim c4a8364b8c obs-ffmpeg: Disable VBAQ for HEVC CQP rate control
Check rate control, if cqp (0), dont use vbaq
2022-11-22 04:13:56 -08:00
Ryan Foster bfcca93424 rtmp-services: Suppress LNK4098
Suppress LNK4098 to allow building against pre-built Jansson for now.
2022-11-22 00:14:16 -05:00
Jim 3c4f9f18c7 obs-qsv11: Simplify CQP
Uses the same QP value for B, P, and I frames to simplify the settings
2022-11-21 19:08:02 -08:00
GaleandJim 319eac4bf5 obs-qsv11: Add QSV AV1 encoder 2022-11-21 19:08:02 -08:00
GaleandJim 9dd70910cb obs-qsv11: Add codec enum
(Jim description: Adding a codec enum will add support for other codecs)
2022-11-21 19:08:02 -08:00
GaleandJim 4b6af813dc obs-qsv11: Only reinitialize bitrate 2022-11-21 19:08:02 -08:00
Jim eaf243bca7 obs-qsv11: Add startup process to test QSV support
This simplifies encoder initialization and prevents it from requiring
any sort of unnecessary Direct3D or encoder initiazation tests while OBS
is actually running.
2022-11-21 19:08:02 -08:00
Matt Gajownik 0716e8b482 obs-ffmpeg: Fix building without HEVC on Windows 2022-11-21 18:54:09 +11:00
tytan652andRyan Foster 723ca8f034 CI,obs-vst: Update Flatpak KDE Runtime to version 6.4
The 6.4 runtime rely on Freedesktop 22.08 which provide a more recent
version of Mesa and PipeWire.

The switch to 22.08 also requires to migrate paths of VST 2 plugins.
2022-11-20 17:16:02 -05:00
Clayton GroeneveldandRyan Foster cfcad30e3e UI, image-source: Add slide counter to slideshow toolbar
This shows the current slide and total number of slides in the
slideshow toolbar.
2022-11-20 03:07:27 -05:00
Richard StanwayandMatt Gajownik 02c6ce8b58 obs-vst: Improve some string handling
- Use constant references where appropriate
- Avoid unnecessary use of strcmp / strlen
- Clear std::string with clear()

Issues detected by PVS Studio.
2022-11-20 17:25:33 +11:00
Richard StanwayandMatt Gajownik fe9c3748ce obs-vst: Use libobs memory allocation functions 2022-11-20 17:25:33 +11:00
tt2468 24d7bea41f obs-ffmpeg: Improve RIST/SRT log messages
Overall improvements to match behavior of other log sources.
2022-11-19 18:16:05 -08:00
ChrisandRyan Foster a463326e37 ffmpeg: fix cqp rate control on svtav1
global_quality does not get respected. Specifying via priv_data does
work however
2022-11-19 20:55:42 -05:00