All of lore.kernel.org
 help / color / mirror / Atom feed
* emu10k1 capture period sizes?
@ 2004-03-26 14:40 James Courtier-Dutton
  2004-03-26 14:58 ` Jaroslav Kysela
  0 siblings, 1 reply; 2+ messages in thread
From: James Courtier-Dutton @ 2004-03-26 14:40 UTC (permalink / raw)
  To: alsa-devel

Extract from ./sound/pci/emu10k1/emupcm.c

static unsigned int capture_period_sizes[31] = {
         384,    448,    512,    640,
         384*2,  448*2,  512*2,  640*2,
         384*4,  448*4,  512*4,  640*4,
         384*8,  448*8,  512*8,  640*8,
         384*16, 448*16, 512*16, 640*16,
         384*32, 448*32, 512*32, 640*32,
         384*64, 448*64, 512*64, 640*64,
         384*128,448*128,512*128
};

This makes the minimum period size that I can record from the MIC to be 
384 frames.

I would like period sized to be 20ms (Used by the GSM codec) in length 
for a VoIP application I am working on. VoIP generally works with 8000Hz 
sample rate to match that on Telco ISDN/Digital trunk lines.

If the sample rate is 8000Hz, a period size of 384 frames makes for a 
48ms which would add too much latency to the conversation.

Ideally I would like to set the minimum period size to be 160 frames 
which is 20ms.

Is there any technical reason why I cannot just add 160 to the table above?

If it is ok, can someone please add it to the alsa-driver tree.

Cheers
James


-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: emu10k1 capture period sizes?
  2004-03-26 14:40 emu10k1 capture period sizes? James Courtier-Dutton
@ 2004-03-26 14:58 ` Jaroslav Kysela
  0 siblings, 0 replies; 2+ messages in thread
From: Jaroslav Kysela @ 2004-03-26 14:58 UTC (permalink / raw)
  To: James Courtier-Dutton; +Cc: alsa-devel

On Fri, 26 Mar 2004, James Courtier-Dutton wrote:

> Extract from ./sound/pci/emu10k1/emupcm.c
> 
> static unsigned int capture_period_sizes[31] = {
>          384,    448,    512,    640,
>          384*2,  448*2,  512*2,  640*2,
>          384*4,  448*4,  512*4,  640*4,
>          384*8,  448*8,  512*8,  640*8,
>          384*16, 448*16, 512*16, 640*16,
>          384*32, 448*32, 512*32, 640*32,
>          384*64, 448*64, 512*64, 640*64,
>          384*128,448*128,512*128
> };
> 
> This makes the minimum period size that I can record from the MIC to be 
> 384 frames.
> 
> I would like period sized to be 20ms (Used by the GSM codec) in length 
> for a VoIP application I am working on. VoIP generally works with 8000Hz 
> sample rate to match that on Telco ISDN/Digital trunk lines.
> 
> If the sample rate is 8000Hz, a period size of 384 frames makes for a 
> 48ms which would add too much latency to the conversation.
> 
> Ideally I would like to set the minimum period size to be 160 frames 
> which is 20ms.
> 
> Is there any technical reason why I cannot just add 160 to the table above?

Yes, hardware cannot handle this size. I suggest to use another master
timer (for example set the playback period to required frequency).
The capture pointer resolution should be good.

						Jaroslav

-----
Jaroslav Kysela <perex@suse.cz>
Linux Kernel Sound Maintainer
ALSA Project, SuSE Labs


-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2004-03-26 14:58 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-03-26 14:40 emu10k1 capture period sizes? James Courtier-Dutton
2004-03-26 14:58 ` Jaroslav Kysela

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.