mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2025-05-30 00:10:40 +00:00
reset the "resampler" when seeking
This commit is contained in:
parent
22e8698827
commit
b1620616b9
3 changed files with 21 additions and 1 deletions
|
@ -127,6 +127,20 @@ snd_resample_read (sfxstream_t *stream, float *data, int frames)
|
|||
return src_callback_read (stream->state, ratio, frames, data);
|
||||
}
|
||||
|
||||
static int
|
||||
snd_seek (sfxstream_t *stream, int pos)
|
||||
{
|
||||
int res = stream->ll_seek (stream, pos);
|
||||
if (stream->read == snd_resample_read) {
|
||||
src_reset (stream->state);
|
||||
} else {
|
||||
snd_null_state_t *state = (snd_null_state_t *) stream->state;
|
||||
state->size = 0;
|
||||
state->pos = 0;
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
void
|
||||
SND_SetupResampler (sfxbuffer_t *sc, int streamed)
|
||||
{
|
||||
|
@ -157,6 +171,7 @@ SND_SetupResampler (sfxbuffer_t *sc, int streamed)
|
|||
&err, stream);
|
||||
stream->read = snd_resample_read;
|
||||
}
|
||||
stream->seek = snd_seek;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue