mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-10-29 05:40:25 -04:00
fixed xrun problems with rate conversion.
This commit is contained in:
parent
48f6b71f41
commit
0d4df92f80
1 changed files with 3 additions and 1 deletions
|
|
@ -397,6 +397,8 @@ static int snd_pcm_rate_sw_params(snd_pcm_t *pcm, snd_pcm_sw_params_t * params)
|
|||
sparams.xfer_align = muldiv_near(sparams.xfer_align, slave->rate, pcm->rate);
|
||||
sparams.silence_threshold = muldiv_near(sparams.silence_threshold, slave->rate, pcm->rate);
|
||||
sparams.silence_size = muldiv_near(sparams.silence_size, slave->rate, pcm->rate);
|
||||
sparams.start_threshold = muldiv_near(sparams.start_threshold, slave->rate, pcm->rate);
|
||||
sparams.stop_threshold = muldiv_near(sparams.stop_threshold, slave->rate, pcm->rate);
|
||||
return snd_pcm_sw_params(slave, &sparams);
|
||||
}
|
||||
|
||||
|
|
@ -409,7 +411,7 @@ static int snd_pcm_rate_init(snd_pcm_t *pcm)
|
|||
rate->states[k].sample = 0;
|
||||
if (rate->func == snd_pcm_rate_expand) {
|
||||
/* Get a sample on entry */
|
||||
rate->states[k].pos = rate->pitch + DIV;
|
||||
rate->states[k].pos = rate->pitch;
|
||||
} else {
|
||||
rate->states[k].pos = 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue