The amount of RDRAM needed by the audio system is dependent on numerous factors. Most importantly, the number of sounds being played at any given time will determine the size of most buffers. Most buffers must be large enough to accommodate the worst case scenario. Applications with fewer voices will need fewer buffers. The sample rate and frame rate chosen will effect the size of several important buffers.
The majority of memory used by the audio, that can be optimized, comes from the following buffers:
There are several other buffers, but the gains obtained by optimizing them are less significant. These include:
In addition to optimizing the buffers listed above, it is important that several other buffers are no larger than they need to be. While you cannot optimize them per se, you should check to make sure that their size is no bigger than they need to be.
Because the heap size is dependent on the size of the buffers allocated from the heap, it is important to optimize the other buffers first.
In order to determine the size of most of the buffers, you will need to determine several factors first. Most importantly, sample rate and frame rate. Higher sample rates will require larger output buffers, more DMA space, and larger command list buffers. Likewise, slower frame rates require larger output buffers, more DMA buffer space, and larger command list buffers.
Note: Audio frame rate can be different from video frame rate. It is possible for the audio to be operating at 60 frames per second, while the graphics are operating at 30 frames per second.
In addition to the sample rate and frame rate, the specific sounds, and how they are set up can effect the size and number of DMA buffers, as can the individual sequences used.