pcm: rate - rewrite the may_wait_for_avail_min callback for the rate plugin

Shuffle the code to avoid special conditions using the plugin type
in the generic plugin code. The rate plugin has the own
may_wait_for_avail_min callback implementation now.

Fixes: d21e0e01 ("pcm: plugin - fix avail_min calculation on rate plugin")
Fixes: https://github.com/alsa-project/alsa-lib/pull/218
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
Jaroslav Kysela 2022-05-20 10:47:43 +02:00
parent d21e0e01c6
commit d9dbb57b94
4 changed files with 43 additions and 28 deletions

View file

@ -286,8 +286,6 @@ struct _snd_pcm {
snd1_pcm_wait_nocheck
#define snd_pcm_rate_get_default_converter \
snd1_pcm_rate_get_default_converter
#define snd_pcm_rate_slave_frames \
snd1_pcm_rate_slave_frames
#define snd_pcm_set_hw_ptr \
snd1_pcm_set_hw_ptr
#define snd_pcm_set_appl_ptr \
@ -1011,8 +1009,6 @@ int snd_pcm_wait_nocheck(snd_pcm_t *pcm, int timeout);
const snd_config_t *snd_pcm_rate_get_default_converter(snd_config_t *root);
snd_pcm_uframes_t snd_pcm_rate_slave_frames(snd_pcm_t *pcm, snd_pcm_uframes_t frames);
#define SND_PCM_HW_PARBIT_ACCESS (1U << SND_PCM_HW_PARAM_ACCESS)
#define SND_PCM_HW_PARBIT_FORMAT (1U << SND_PCM_HW_PARAM_FORMAT)
#define SND_PCM_HW_PARBIT_SUBFORMAT (1U << SND_PCM_HW_PARAM_SUBFORMAT)