[pulseaudio-discuss] [PATCH] alsa-util: Use time stamp config only for alsa versions >= 1.1.0
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Tue May 15 19:12:01 UTC 2018
On 5/15/18 8:12 AM, Arun Raghavan wrote:
> On Tue, 15 May 2018, at 11:30 AM, Georg Chini wrote:
>> The commit "alsa-util: Set ALSA report_delay flag in pa_alsa_safe_delay()"
>> broke the build on ALSA versions below 1.1.0 because the time stamp
>> configuration function was introduced in 1.1.0.
>>
>> This patch makes the usage of snd_pcm_status_set_audio_htstamp_config()
>> dependent on ALSA version.
>> ---
>> src/modules/alsa/alsa-util.c | 8 +++++++-
>> 1 file changed, 7 insertions(+), 1 deletion(-)
>>
>> diff --git a/src/modules/alsa/alsa-util.c b/src/modules/alsa/alsa-util.c
>> index b91a0e98..41134ea5 100644
>> --- a/src/modules/alsa/alsa-util.c
>> +++ b/src/modules/alsa/alsa-util.c
>> @@ -1187,7 +1187,9 @@ int pa_alsa_safe_delay(snd_pcm_t *pcm,
>> snd_pcm_status_t *status, snd_pcm_sframes
>> size_t abs_k;
>> int err;
>> snd_pcm_sframes_t avail = 0;
>> +#if (SND_LIB_VERSION >= ((1<<16)|(1<<8)|0)) /* API additions in 1.1.0
>> */
>> snd_pcm_audio_tstamp_config_t tstamp_config;
>> +#endif
>>
>> pa_assert(pcm);
>> pa_assert(delay);
>> @@ -1201,11 +1203,15 @@ int pa_alsa_safe_delay(snd_pcm_t *pcm,
>> snd_pcm_status_t *status, snd_pcm_sframes
>> * avail, delay and timestamp values in a single kernel call to
>> improve
>> * timer-based scheduling */
>>
>> +#if (SND_LIB_VERSION >= ((1<<16)|(1<<8)|0)) /* API additions in 1.1.0 */
>> +
>> /* The time stamp configuration needs to be set so that the
>> - * ALSA code will use the internal delay reported by the driver */
>> + * ALSA code will use the internal delay reported by the driver.
>> + * The time stamp configuration was introduced in alsa version 1.1.0. */
>> tstamp_config.type_requested = 1; /* ALSA default time stamp type */
>> tstamp_config.report_delay = 1;
>> snd_pcm_status_set_audio_htstamp_config(status, &tstamp_config);
>> +#endif
>>
>> if ((err = snd_pcm_status(pcm, status)) < 0)
>> return err;
>> --
>
> Looks good.
Takashi and I mentioned it's not quite right but what can I say...
>
> -- Arun
> _______________________________________________
> pulseaudio-discuss mailing list
> pulseaudio-discuss at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
>
More information about the pulseaudio-discuss
mailing list