0
0
mirror of https://github.com/obsproject/obs-studio.git synced 2024-09-20 13:08:50 +02:00
obs-studio/libobs
pkv 918fc6d6c2 libobs/media-io: Fix mono upmix
A mono source is currently upmixed by swresampler in the following way:
- for stereo output, FL=FR=input/sqrt(2)
- for other speaker layouts of the outputs, FC=input, other channels
are zeroed.

In the case of stereo output, this leads to a 3dB level decrease which
users have issue with [1].
The obvious fix of adding a 3dB gain is reported to be adding distortions
on some setups [2].
Note that the "Downmix to Mono" does not fix this upmix problem, since
it just makes all output channels identical by summing all input channels
and normalizing (by dividing by the number of output channels). This last
normalization step results in a level reduction for a mono input.

[1] This fixes https://obsproject.com/mantis/view.php?id=960.
[2] See also: https://obsproject.com/forum/threads/please-allow-for-mono-recording-of-microphones-ill-explain-why.84834
2019-02-24 14:00:57 +01:00
..
audio-monitoring libobs/audio-monitoring: Use libobs CFString utils 2018-09-16 22:41:01 +02:00
callback libobs/callback: Add signal reference counting 2018-06-03 15:04:03 -07:00
data UI: Add scene item canvas overflow to preview 2019-02-08 20:38:53 +13:00
graphics libobs/graphics: Add NV12 texture support 2019-02-07 17:00:46 -08:00
media-io libobs/media-io: Fix mono upmix 2019-02-24 14:00:57 +01:00
util libobs: Fix missing mutex unlock from 26dbe54 2019-02-18 23:42:01 +01:00
CMakeLists.txt libobs: Add texture-based encoding support 2019-02-07 17:00:46 -08:00
libobs.pc.in libobs: Add pkgconfig support 2018-09-24 14:25:41 -07:00
LibObsConfig.cmake.in cmake: Export plugin data destination 2014-09-27 09:41:32 -07:00
LibObsConfigVersion.cmake.in Export libobs cmake target, so external plugins can be built without ugly hacks 2014-05-08 14:43:16 +02:00
obs-audio-controls.c libobs: Use unaligned store rather than aligned store 2018-05-01 09:26:10 -07:00
obs-audio-controls.h libobs, UI: Add true peak measurements 2018-04-30 03:53:26 -07:00
obs-audio.c libobs: Fix indent 2019-02-12 19:33:13 -08:00
obs-avc.c libobs: Fix bug in AVC encoder packet allocation 2016-12-24 03:44:13 -08:00
obs-avc.h libobs: Add function to extract AVC header/sei 2016-04-19 08:29:24 -07:00
obs-cocoa.c libobs: Add functions to get logical/physical cores 2017-05-06 11:29:27 -07:00
obs-config.h libobs: Update version to 23.0.0 2019-02-20 22:16:45 -08:00
obs-data.c libobs: Add obs_data_array_push_back_array 2018-07-15 17:09:02 -07:00
obs-data.h libobs: Add obs_data_array_push_back_array 2018-07-15 17:09:02 -07:00
obs-defs.h libobs: Add output stop error for "no space left" 2015-09-18 22:04:23 -07:00
obs-display.c libobs: Background color of 0 should not be gray 2018-12-03 04:09:30 -08:00
obs-encoder.c libobs: Fix potential race condition on shutdown 2019-02-12 16:07:14 -08:00
obs-encoder.h libobs: Add texture-based encoding support 2019-02-07 17:00:46 -08:00
obs-ffmpeg-compat.h libobs: Fix FFmpeg constants 2017-11-16 21:38:37 -08:00
obs-hotkey-name-map.c libobs: Fix warning from mingw 2015-07-11 14:26:48 -07:00
obs-hotkey.c libobs: Add function to save hotkey pair data 2018-08-05 04:21:42 -07:00
obs-hotkey.h libobs: Add function to save hotkey pair data 2018-08-05 04:21:42 -07:00
obs-hotkeys.h libobs: Add <> or \| on RT 102-key as hotkey 2017-06-27 21:35:52 -07:00
obs-interaction.h Add interaction support to libobs 2014-09-15 17:19:37 -05:00
obs-internal.h libobs: Fix texture-based encoder decklock 2019-02-10 21:53:24 -08:00
obs-module.c libobs: Add texture-based encoding support 2019-02-07 17:00:46 -08:00
obs-module.h libobs: Add post-load module callback 2017-07-21 08:27:31 -07:00
obs-nix.c libobs: Use xcb-xinput when available for events 2018-05-07 21:31:16 -03:00
obs-output-delay.c libobs: Use reference counting for encoder packets 2016-12-08 03:27:39 -08:00
obs-output.c libobs: Fix audio offset not reset for all tracks 2018-11-16 03:56:49 +01:00
obs-output.h libobs: Add multi-track support to non-encoded outputs 2018-10-04 20:32:35 -07:00
obs-properties.c libobs: Fix property text typo 2018-02-27 05:37:40 -08:00
obs-properties.h libobs: Fix property text typo 2018-02-27 05:37:40 -08:00
obs-scene.c libobs: Add function to force a sceneitem transform update 2018-08-16 08:42:19 -07:00
obs-scene.h libobs: Remove group_sceneitem from obs_scene struct 2018-07-15 19:01:14 -07:00
obs-service.c libobs: Add ability for service to specify its output type 2017-07-14 12:38:46 -07:00
obs-service.h libobs: Add ability for service to specify its output type 2017-07-14 12:38:46 -07:00
obs-source-deinterlace.c libobs: Don't use source flags for async buffering 2017-05-13 23:32:40 -07:00
obs-source-transition.c libobs: Fix audio buffer clear in custom source mixing 2018-01-16 11:56:11 -08:00
obs-source.c libobs: Fix starting timestamp for preloaded frames 2018-12-03 08:44:55 -08:00
obs-source.h UI: Implement stereo balancing 2018-09-07 09:27:14 -05:00
obs-ui.h Fix various typos across multiple modules 2017-04-25 22:39:42 -04:00
obs-video-gpu-encode.c libobs: Fix potential race condition on shutdown 2019-02-12 16:07:14 -08:00
obs-video.c libobs: Fix race conditions 2019-02-12 19:23:24 -08:00
obs-view.c libobs: Hide sources when an obs_view is destroyed 2015-03-02 12:23:25 -08:00
obs-win-crash-handler.c libobs: Log libobs bitness in crash logs 2018-07-31 11:49:35 -04:00
obs-windows.c libobs: Fix Windows Game Mode detection on newer Windows 10 versions 2018-12-26 23:13:37 +01:00
obs.c libobs: Fix texture-based encoder decklock 2019-02-10 21:53:24 -08:00
obs.h UI: Add scene item canvas overflow to preview 2019-02-08 20:38:53 +13:00
obs.hpp libobs/callback: Add signal reference counting 2018-06-03 15:04:03 -07:00
obsconfig.h.in cmake: Add release candidate versions/cmake variables 2018-08-13 01:19:23 -07:00