[alsa-devel] Application hangs with different period sizes

anuj aggarwal anuj.aggarwal at gmail.com
Thu Jul 3 14:54:49 CEST 2008


I am doing the same. I used snd_pcm_hw_params_set_period_size_near() to set
the period size and checked the return value also; it was not an error.

I have one more question. When you say 'Some periods are not supported',
what does that mean? What are the constraints which make some periods
not-supported by the audio codec driver?

On Thu, Jul 3, 2008 at 5:11 PM, Gustavo da Silva Serra <
gustavo.serra at tet.com.br> wrote:

> Do you check the result of the function that sets the period size? Some
> periods are not supported and you can't assume that they are valid and
> proceed in your application. Use snd_pcm_hw_params_set_period_time_near to
> see what is the nearest possible value for period. <
> http://www.alsa-project.org/alsa-doc/alsa-lib/group___p_c_m___h_w___params.html#gf5e53bcb748185a4da3b8538720a5792
> >
>
> anuj aggarwal escreveu:
>
>> My audio driver supports buffer sizes from 128 to 32768 and period sizes
>> from 8 to 2048. I am trying to set the period size as 1030 (just a random
>> number between 8 & 2048, but not multiple of 2^n) and buffer size as
>> 16*buffer_size (i.e. 16480). The output is as follows:
>>
>> Buffer size range from 128 to 32768
>> Period size range from 8 to 2048
>> Request period size 1030 and got 1030
>> Plug PCM: Hardware PCM card 0 'TWL4030' device 0 subdevice 0
>> Its setup is:
>>  stream       : PLAYBACK
>>  access       : RW_INTERLEAVED
>>  format       : S16_LE
>>  subformat    : STD
>>  channels     : 2
>>  rate         : 44100
>>  exact rate   : 44100 (44100/1)
>>  msbits       : 16
>>  buffer_size  : 16480
>>  period_size  : 1030
>>  period_time  : 23356
>>  tstamp_mode  : NONE
>>  period_step  : 1
>>  avail_min    : 1030
>>  start_threshold  : 16480
>>  stop_threshold   : 16480
>>  silence_threshold: 0
>>  silence_size : 0
>>  boundary     : 1080033280
>>
>> The problem with this setup is the application just hangs without playing
>> anything. If I use period size as 2048, the app plays the song but clips
>> the
>> last part of it. If I use 1024/512, it works fine.
>>
>> I have tried alsa lib version 1.0.15 & 1.0.16 but the problem persists. Is
>> there anything wrong with my app or audio driver?
>>
>> Please help.
>>
>> Thanks in advance,
>> Anuj Aggarwal
>> _______________________________________________
>> Alsa-devel mailing list
>> Alsa-devel at alsa-project.org
>> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
>>
>> __________ NOD32 3238 (20080703) Information __________
>>
>> This message was checked by NOD32 antivirus system.
>> http://www.eset.com
>>
>>
>>
>>
>>
>
>


-- 
Best Regards,
Anuj Aggarwal


More information about the Alsa-devel mailing list