After PR #3074, the following strings are no longer used:
* GameCapture.ForceScaling="Force Scaling"
* GameCapture.ScaleRes="Scale Resolution"
Commits from PR #3074:
* 9497589b1603dcacf07e3b81d2f60291eafb3590
* 63933997586bf88c862159bf5cb20be56b713283
This commit adds support to using Xiph and Mozilla RNNoise library for
noise reduction.
RNNoise is a small library using an AI approach to noise reduction
using a pre-trained model like RTX Voice. But unlike RTX Voice, it is
very tiny, use CPU instead of GPU and only use little resources.
Obviously it is not as efficient but will effectively remove background
noise. It uses more CPU than the existing libspeex-based noise
reduction but it also sounds sounds way better.
RNNoise support is added to the noise reduction effect. It can be
enabled with a checkbox in the effect configuration. RNNoise has no
settings.
Fix for an issue found where new "Latency" and "Subjective Video
Enhancement" options where always using default settings even after
being changed in UI. This issue was introduced when mapping old QSV
settings to new ones.
Prevents multiple queues in the same family from racing on frame data.
Removal of vk_family_data also fixes broken capacity calculation. Two
queue families can share the same index if one is "protected-capable"
and the other isn't.
Make fixes mostly to stabilize CTS. Tested on Windows with RTX 2080 Ti.
Use separate linked-list maps for devices and queues.
Process queues upfront in OBS_CreateDevice, and not lazily in
OBS_GetDeviceQueue.
Handle failed node allocation for OBS_CreateInstance, OBS_CreateDevice,
and OBS_CreateSwapchainKHR.
Handle VK_NULL_HANDLE for OBS_DestroySurfaceKHR and
OBS_DestroySwapchainKHR.
Add temporary code path CTS_WORKAROUND to deal with CTS sharing surfaces
between instances.
Fix return value for OBS_DestroyInstance.
Add missing _freea calls, required for _malloca.
Make sure the queue passed to OBS_QueuePresentKHR supports transfer to
safely call vkCmdCopyImage.
Update GetInstanceProcAddr/GetDeviceProcAddr to conform closer to spec.
Remove extra macros because I dislike indirection more than verbosity.
Attempt to simply shutdown sequence to avoid race between vidoe and
write threads. Can no longer join on write thread from write thread.
Also use codecpar instead of deprecated codec member.
Add support for VIDEO_CS_SRGB.
Use SMPTE 170M for 601 instead of undef/BT470BG. This is the
American/Chromium way of handling 601.
Add color metadata to the container file as well via ffmpeg-mux.
This commit fixes the case of two recently added attributes of the
v4l2_data struct (in PR #2978). The new attributes were named
"frameRateUnchanged" and "resolutionUnchanged", i.e. using CamelCase
while all other attributes use snake_case. This change changes the
name of the two attributes to snake_case.