From: Andreas Pape Date: Mon, 19 Dec 2016 03:37:51 +0000 (+0900) Subject: rate: dynamic update avail_min on slave X-Git-Tag: v1.1.4~53 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=ff1f669df4b05da3c44dc4a79ce00233fe9de9b7;p=alsa-lib.git rate: dynamic update avail_min on slave Signed-off-by: Andreas Pape Signed-off-by: Jiada Wang Signed-off-by: Takashi Iwai --- diff --git a/src/pcm/pcm_plugin.c b/src/pcm/pcm_plugin.c index 5b65ac34..ad4a1022 100644 --- a/src/pcm/pcm_plugin.c +++ b/src/pcm/pcm_plugin.c @@ -535,8 +535,8 @@ static int snd_pcm_plugin_status(snd_pcm_t *pcm, snd_pcm_status_t * status) return 0; } -static int snd_pcm_plugin_may_wait_for_avail_min(snd_pcm_t *pcm, - snd_pcm_uframes_t avail) +int snd_pcm_plugin_may_wait_for_avail_min(snd_pcm_t *pcm, + snd_pcm_uframes_t avail) { if (pcm->stream == SND_PCM_STREAM_CAPTURE && pcm->access != SND_PCM_ACCESS_RW_INTERLEAVED && diff --git a/src/pcm/pcm_plugin.h b/src/pcm/pcm_plugin.h index 217f0757..95aacb32 100644 --- a/src/pcm/pcm_plugin.h +++ b/src/pcm/pcm_plugin.h @@ -50,6 +50,8 @@ typedef struct { /* make local functions really local */ #define snd_pcm_plugin_init \ snd1_pcm_plugin_init +#define snd_pcm_plugin_may_wait_for_avail_min \ + snd1_pcm_plugin_may_wait_for_avail_min #define snd_pcm_plugin_fast_ops \ snd1_pcm_plugin_fast_ops #define snd_pcm_plugin_undo_read_generic \ @@ -64,6 +66,7 @@ typedef struct { void snd_pcm_plugin_init(snd_pcm_plugin_t *plugin); snd_pcm_sframes_t snd_pcm_plugin_rewind(snd_pcm_t *pcm, snd_pcm_uframes_t frames); snd_pcm_sframes_t snd_pcm_plugin_forward(snd_pcm_t *pcm, snd_pcm_uframes_t frames); +int snd_pcm_plugin_may_wait_for_avail_min(snd_pcm_t *pcm, snd_pcm_uframes_t avail); extern const snd_pcm_fast_ops_t snd_pcm_plugin_fast_ops; diff --git a/src/pcm/pcm_rate.c b/src/pcm/pcm_rate.c index 61cf9793..cbb76184 100644 --- a/src/pcm/pcm_rate.c +++ b/src/pcm/pcm_rate.c @@ -1213,7 +1213,7 @@ static const snd_pcm_fast_ops_t snd_pcm_rate_fast_ops = { .poll_descriptors_count = snd_pcm_generic_poll_descriptors_count, .poll_descriptors = snd_pcm_generic_poll_descriptors, .poll_revents = snd_pcm_rate_poll_revents, - .may_wait_for_avail_min = snd_pcm_generic_may_wait_for_avail_min, + .may_wait_for_avail_min = snd_pcm_plugin_may_wait_for_avail_min, }; static const snd_pcm_ops_t snd_pcm_rate_ops = {