On Wed, 25 Feb 2009, Takashi Iwai wrote:
At Wed, 25 Feb 2009 11:57:32 +0100 (CET), Jaroslav Kysela wrote:
On Wed, 25 Feb 2009, Takashi Iwai wrote:
Anyway, the definitions of delay and avail in a free-wheel mode are ambiguous and rather confusing indeed...
I don't agree. We manage appl_ptr also in no-XRUN check mode for ALSA apps, so the negative values makes sense and applications can quickly skip missed samples (snd_pcm_forward).
Well, if we follow the definition of snd_pcm_delay(), applptr - delay doesn't always point to the position to write for the next. (Right now it works so, though).
Sure, but negative value indicates how many samples is application behind the output from hardware. The delay value cannot be used for buffer filling, of course (also in standard - no-XRUN case - avail functions should be used).
Jaroslav
----- Jaroslav Kysela perex@perex.cz Linux Kernel Sound Maintainer ALSA Project, Red Hat, Inc.