4 ms·
- Some systems (notably, hardware ring buffers) do this, the difference is mainly the kind of noise you hear - instead of crackling, it stutters. Still not an a
by kmeisthax 3y ago
- Some systems (notably, hardware ring buffers) do this, the difference is mainly the kind of noise you hear - instead of crackling, it stutters. Still not an acceptable fallback for game audio.
- Old consoles had dedicated sound processing in them. In fact, they usually had both a dedicated sound mixer and a separate CPU core[0] to put the audio thread on. Hung audio threads in this case would mean musical slowdown rather than stuttering or crackling, which is noticeable in yet another different way.
- Source Engine does this, sort of. It loads just the first half a second of each sound it expects to play in a given level, which is used to hide I/O latency reading from disk. The particular failure mode of this solution, typically caused by a bunch of sounds triggering right after a level load, is that it takes longer than half a second to read all those files, and you hear that half-second sample stuttering instead of the audio.
[0] In several cases the audio CPU core would also serve as the primary CPU in backwards compatibility modes. For example, the Sega Genesis/Mega Drive has a Z80 in it that can run either the audio thread of a Genesis game or the primary thread of a Master System one. The PlayStation 2 does the same thing with having an "I/O processor" that's the PS1 CPU in a trenchcoat. The DS ARM7 is a holdover from the Game Boy Advance and, AFAIK, could also be used as an audio thread CPU if you wanted.