DracoNihil wrote:From what I understand it the "soundfont cache" is just your system memory. The SB Live! does not have any onboard memory and has to store the soundfont in reserved system memory.
Exactly, which is the reason this is even a question. DirectSound can apparently allocate as much memory for software static buffer storage as the system can provide. When talking hardware buffer space though, and since the Live! mostly relies on system memory, I'm unclear as to whether this allocation is managed by DirectSound itself, and therefore extensible to the amount of system memory, or by the Live!, and presumably subject to either the adjustable cache limit, or the 512KB that the SB Live! driver reports to DirectSound as being available .
As far as testing goes, there's a DirectSound function called "GetCaps" that will query a device driver for its capabilities. This information is returned by DXDiag in versions later than the one that I'm currently running (7.0a). Similarly, Aureal's "Minerva" test suite reports similar information, and can perform various tests as well. The problem, however, is that neither DirectSound nor Minerva actually test up to the reported limits, and therefore, I'm unable to determine if the Live! settings mentioned (cache, and maximum simultaneous wave playback) make any difference whatsoever, or if DirectSound is able to just use all resources reported by the driver regardless. I'm thinking the latter is probable, in which case this is all irrelevant.
For the sake of comparison, here is the output that Minerva reports for the installed SB Live! and AWE64 Gold cards installed in my system:
Device Selected: DirectSound (SB Live! Wave Out [DCE0])
DirectSound reports...
1 Primary buffer available
32 Total 2D hardware mixing buffers available
32 Static 2D hardware mixing buffers available
32 Streaming 2D hardware mixing buffers available
32 Total 3D hardware buffers available
32 Static 3D hardware buffers available
32 Streaming 3D hardware buffers available
524288 Total bytes sound card memory static buffer storage
0 KB/sec Data transfer rate to hardware static buffers
100000 KB/sec Max sample rate supported by secondary buffers
100 KB/sec Min sample rate supported by secondary buffers
Device Selected: AWE64G Direct Sound Driver [220]
DirectSound reports...
1 Primary buffer available
25 Total 2D hardware mixing buffers available
25 Static 2D hardware mixing buffers available
0 Streaming 2D hardware mixing buffers available
0 Total 3D hardware buffers available
0 Static 3D hardware buffers available
0 Streaming 3D hardware buffers available
29360128 Total bytes sound card memory static buffer storage
0 KB/sec Data transfer rate to hardware static buffers
100000 KB/sec Max sample rate supported by secondary buffers
100 KB/sec Min sample rate supported by secondary buffers
AlphaWing wrote:I remember older builds of SWG running on my SBLIVE! let me set up to 128sounds in hardware under windows 2000.
I really don't think it was actually using more then 32 tho.
The SB Live! certainly can't support 128 hardware channels, which is presumably why you never saw it use more than 32. 128 channels would have required software mixing.
Kahenraz wrote:...so if you can come up with an appropriate scenario then I can put together some tests for you to more closely examine the parameters as you see fit.
A hypothetical scenario would simply involve attempting to use all 32 hardware buffers/channels when a lower value has been specified in the SB Live! drivers, as well as testing beyond the static buffer storage limit reported by DirectSound.
Really though, these aren't the kind-of things that most people care about, and in-depth testing may not be a worthwhile endeavor. I'm certainly fine to continue on with my 32/32 configuration regardless. 😀