diff options
author | Mary <mary@mary.zone> | 2023-05-11 20:14:02 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-11 20:14:02 +0200 |
commit | 40d47b7aa235b464974480d09875eef0377bb261 (patch) | |
tree | 568c6092d24232f55969405e4e593be215838e6b /src/Ryujinx.Audio/Renderer/Dsp/Command/Reverb3dCommand.cs | |
parent | ec0bb74968de92230dd026faa35e5f8bd975ec35 (diff) |
amadeus: Fix wrong channel mapping check and an old typo (#4888)1.1.783
* amadeus: Fix wrong channel mapping check
This was always going to happens, as a result quadratic would break and
move index after the channel count point, effectively breaking
input/output indices.
* amadeus: Fix reverb 3d early delay wrong output index
Diffstat (limited to 'src/Ryujinx.Audio/Renderer/Dsp/Command/Reverb3dCommand.cs')
-rw-r--r-- | src/Ryujinx.Audio/Renderer/Dsp/Command/Reverb3dCommand.cs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/Ryujinx.Audio/Renderer/Dsp/Command/Reverb3dCommand.cs b/src/Ryujinx.Audio/Renderer/Dsp/Command/Reverb3dCommand.cs index eeb64567..74b53b24 100644 --- a/src/Ryujinx.Audio/Renderer/Dsp/Command/Reverb3dCommand.cs +++ b/src/Ryujinx.Audio/Renderer/Dsp/Command/Reverb3dCommand.cs @@ -66,8 +66,8 @@ namespace Ryujinx.Audio.Renderer.Dsp.Command // NOTE: We do the opposite as Nintendo here for now to restore previous behaviour // TODO: Update reverb 3d processing and remove this to use RemapLegacyChannelEffectMappingToChannelResourceMapping. - DataSourceHelper.RemapChannelResourceMappingToLegacy(newEffectChannelMappingSupported, InputBufferIndices); - DataSourceHelper.RemapChannelResourceMappingToLegacy(newEffectChannelMappingSupported, OutputBufferIndices); + DataSourceHelper.RemapChannelResourceMappingToLegacy(newEffectChannelMappingSupported, InputBufferIndices, Parameter.ChannelCount); + DataSourceHelper.RemapChannelResourceMappingToLegacy(newEffectChannelMappingSupported, OutputBufferIndices, Parameter.ChannelCount); } [MethodImpl(MethodImplOptions.AggressiveInlining)] @@ -116,7 +116,7 @@ namespace Ryujinx.Audio.Renderer.Dsp.Command for (int i = 0; i < targetEarlyDelayLineIndicesTable.Length; i++) { int earlyDelayIndex = targetEarlyDelayLineIndicesTable[i]; - int outputIndex = outputEarlyIndicesTable[i]; + int outputIndex = outputEarlyIndicesTable[earlyDelayIndex]; float tempTapOut = state.PreDelayLine.TapUnsafe(state.EarlyDelayTime[earlyDelayIndex], delayLineSampleIndexOffset); |