static void I_SDL_PrecacheSounds(sfxinfo_t *sounds, int num_sounds) { char namebuf[9]; int i; // Don't need to precache the sounds unless we are using libsamplerate. if (use_libsamplerate == 0) { return; } printf("I_SDL_PrecacheSounds: Precaching all sound effects.."); for (i=0; i<num_sounds; ++i) { if ((i % 6) == 0) { printf("."); fflush(stdout); } GetSfxLumpName(&sounds[i], namebuf, sizeof(namebuf)); sounds[i].lumpnum = W_CheckNumForName(namebuf); if (sounds[i].lumpnum != -1) { CacheSFX(&sounds[i]); } } printf("\n"); }
// Load a SFX chunk into memory and ensure that it is locked. static dboolean LockSound(sfxinfo_t *sfxinfo) { // If the sound isn't loaded, load it now if (!GetAllocatedSoundBySfxInfoAndPitch(sfxinfo, NORM_PITCH)) if (!CacheSFX(sfxinfo)) return false; LockAllocatedSound(GetAllocatedSoundBySfxInfoAndPitch(sfxinfo, NORM_PITCH)); return true; }
static boolean LockSound(sfxinfo_t *sfxinfo) { // If the sound isn't loaded, load it now if (sfxinfo->driver_data == NULL) { if (!CacheSFX(sfxinfo)) { return false; } } LockAllocatedSound(sfxinfo->driver_data); return true; }