diff options
Diffstat (limited to 'src/audio_core/sink_context.cpp')
| -rw-r--r-- | src/audio_core/sink_context.cpp | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/audio_core/sink_context.cpp b/src/audio_core/sink_context.cpp index a69543696..cc55b290c 100644 --- a/src/audio_core/sink_context.cpp +++ b/src/audio_core/sink_context.cpp | |||
| @@ -15,10 +15,17 @@ std::size_t SinkContext::GetCount() const { | |||
| 15 | void SinkContext::UpdateMainSink(const SinkInfo::InParams& in) { | 15 | void SinkContext::UpdateMainSink(const SinkInfo::InParams& in) { |
| 16 | ASSERT(in.type == SinkTypes::Device); | 16 | ASSERT(in.type == SinkTypes::Device); |
| 17 | 17 | ||
| 18 | has_downmix_coefs = in.device.down_matrix_enabled; | 18 | if (in.device.down_matrix_enabled) { |
| 19 | if (has_downmix_coefs) { | ||
| 20 | downmix_coefficients = in.device.down_matrix_coef; | 19 | downmix_coefficients = in.device.down_matrix_coef; |
| 20 | } else { | ||
| 21 | downmix_coefficients = { | ||
| 22 | 1.0f, // front | ||
| 23 | 0.707f, // center | ||
| 24 | 0.0f, // lfe | ||
| 25 | 0.707f, // back | ||
| 26 | }; | ||
| 21 | } | 27 | } |
| 28 | |||
| 22 | in_use = in.in_use; | 29 | in_use = in.in_use; |
| 23 | use_count = in.device.input_count; | 30 | use_count = in.device.input_count; |
| 24 | buffers = in.device.input; | 31 | buffers = in.device.input; |
| @@ -34,10 +41,6 @@ std::vector<u8> SinkContext::OutputBuffers() const { | |||
| 34 | return buffer_ret; | 41 | return buffer_ret; |
| 35 | } | 42 | } |
| 36 | 43 | ||
| 37 | bool SinkContext::HasDownMixingCoefficients() const { | ||
| 38 | return has_downmix_coefs; | ||
| 39 | } | ||
| 40 | |||
| 41 | const DownmixCoefficients& SinkContext::GetDownmixCoefficients() const { | 44 | const DownmixCoefficients& SinkContext::GetDownmixCoefficients() const { |
| 42 | return downmix_coefficients; | 45 | return downmix_coefficients; |
| 43 | } | 46 | } |