Re: snd_pcm_avail_update returns 0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 14 Jan 2010, Singaravelan Nallasellan wrote:

> Hi,
>
> Our audio driver uses the indirect PCM data transfer mechanism to
> transfer the buffer pointers and the size of the buffer to the Audio
> engine which DMAs the PCM data to the sound card.
>
> The driver uses the .ack callback to receive the buffer pointer and
> the size. It also sends it to the audio engine.
>
> We are facing a problem when we play long wav file using our driver.
>
> The application has written the PCM data and the ring buffer is full.
> snd_pcm_avail_update returns 0 sporadically. But the .ack callback was
> not called. The playback is stuck. It is not progressing.
>
> I have tried with pulseaudio (0.9.15) and with my own player. Both
> gives the same result.
>
> I would appreciate if somebody could provide some pointer to identify
> the cause of this issue. Let me know if anybody needs more info.

No idea. You may put some debug printk lines to snd_pcm_lib_write1() 
routine if all correspoding write sequences ends with ->ack callback 
call.

 					Jaroslav

-----
Jaroslav Kysela <perex@xxxxxxxx>
Linux Kernel Sound Maintainer
ALSA Project, Red Hat, Inc.

_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux