4 ms·
> My question is: why does the application need to do that work? Why can't it send each stream to the OS to have them be combined in only one place? Two reason
by byuu 10y ago
> My question is: why does the application need to do that work? Why can't it send each stream to the OS to have them be combined in only one place?
Two reasons.
One, the audio API used is a simple push buffer design (eg OSS) and so you have to do your own mixing first. XAudio2 and friends will spare you this detail.
Two, you're emulating a piece of gaming hardware that has its own internal mixer. And when that internal mixer doesn't have enough sound channels, the video games running on said emulated system can include their own software mixers to make it even more fun.