audren: Fix AudioRenderer implementation (#773)
* Fix AudioRenderer implementation According to RE: - `GetAudioRendererWorkBufferSize` is updated and improved to support `REV7` - `RequestUpdateAudioRenderer` is updated to `REV7` too Should improve results on recent game and close #718 and #707 * Fix NodeStates.GetWorkBufferSize * Use BitUtils instead of IntUtils * Nits
This commit is contained in:
parent
a0720b5681
commit
f17b772c56
15 changed files with 244 additions and 110 deletions
|
@ -0,0 +1,25 @@
|
|||
using Ryujinx.Common;
|
||||
|
||||
namespace Ryujinx.HLE.HOS.Services.Audio.AudioRendererManager
|
||||
{
|
||||
class SplitterContext
|
||||
{
|
||||
public static long CalcWorkBufferSize(BehaviorInfo behaviorInfo, AudioRendererParameter parameters)
|
||||
{
|
||||
if (!behaviorInfo.IsSplitterSupported())
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
long size = parameters.SplitterDestinationDataCount * 0xE0 +
|
||||
parameters.SplitterCount * 0x20;
|
||||
|
||||
if (!behaviorInfo.IsSplitterBugFixed())
|
||||
{
|
||||
size += BitUtils.AlignUp(4 * parameters.SplitterDestinationDataCount, 16);
|
||||
}
|
||||
|
||||
return size;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue