diff options
author | Mary <mary@mary.zone> | 2022-04-06 09:12:38 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-06 09:12:38 +0200 |
commit | 3f4fb8f73a6635dbdca9dd11738c3a793f53ac65 (patch) | |
tree | adab6a0c08efac674982ded8ca915ff5069462ea /Ryujinx.Audio/Renderer/Server/BehaviourContext.cs | |
parent | 56c56aa34d40327cf045d7198fe0f40492a5dbc3 (diff) |
amadeus: Update to REV11 (#3230)1.1.91
This should implement all ABI changes from REV11 on 14.0.0
As Nintendo changed the channel disposition for "legacy" effects (Delay, Reverb and Reverb 3D) to match the standard channel mapping, I took the liberty to just remap to the old disposition for now.
The proper changes will be handled at a later date with a complete rewriting of those 3 effects to be more readable (see https://github.com/Ryujinx/Ryujinx/pull/3205 for the first iteration of it).
Diffstat (limited to 'Ryujinx.Audio/Renderer/Server/BehaviourContext.cs')
-rw-r--r-- | Ryujinx.Audio/Renderer/Server/BehaviourContext.cs | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/Ryujinx.Audio/Renderer/Server/BehaviourContext.cs b/Ryujinx.Audio/Renderer/Server/BehaviourContext.cs index d3a65b72..cf9cda0b 100644 --- a/Ryujinx.Audio/Renderer/Server/BehaviourContext.cs +++ b/Ryujinx.Audio/Renderer/Server/BehaviourContext.cs @@ -108,9 +108,17 @@ namespace Ryujinx.Audio.Renderer.Server public const int Revision10 = 10 << 24; /// <summary> + /// REV11: + /// The "legacy" effects (Delay, Reverb and Reverb 3D) were updated to match the standard channel mapping used by the audio renderer. + /// A new version of the command estimator was added to address timing changes caused by the legacy effects changes. + /// </summary> + /// <remarks>This was added in system update 14.0.0</remarks> + public const int Revision11 = 11 << 24; + + /// <summary> /// Last revision supported by the implementation. /// </summary> - public const int LastRevision = Revision10; + public const int LastRevision = Revision11; /// <summary> /// Target revision magic supported by the implementation. @@ -367,11 +375,25 @@ namespace Ryujinx.Audio.Renderer.Server } /// <summary> + /// Check if the audio renderer should support new channel resource mapping for 5.1 on Delay, Reverb and Reverb 3D effects. + /// </summary> + /// <returns>True if the audio renderer support new channel resource mapping for 5.1.</returns> + public bool IsNewEffectChannelMappingSupported() + { + return CheckFeatureSupported(UserRevision, BaseRevisionMagic + Revision11); + } + + /// <summary> /// Get the version of the <see cref="ICommandProcessingTimeEstimator"/>. /// </summary> /// <returns>The version of the <see cref="ICommandProcessingTimeEstimator"/>.</returns> public int GetCommandProcessingTimeEstimatorVersion() { + if (CheckFeatureSupported(UserRevision, BaseRevisionMagic + Revision11)) + { + return 5; + } + if (CheckFeatureSupported(UserRevision, BaseRevisionMagic + Revision10)) { return 4; |