[alsa-devel] Maximum buffer size on HDA

Takashi Iwai tiwai at suse.de
Fri Jun 20 09:10:58 CEST 2008

At Thu, 19 Jun 2008 19:42:38 +0200,
Lennart Poettering wrote:
> On Mon, 16.06.08 14:37, Lennart Poettering (mznyfn at 0pointer.de) wrote:
> heya!
> > > I'm not quite sure what you like to change. Make 1MB limit smaller? Or 
> > > change the default preallocated size? Or remove preallocation? I think 
> > > that it might make sense to increase the default preallocation value to 
> > > 128KB or 192KB.
> > 
> > For PulseAudio it would be of big benefit if we could change the
> > default in a way the for the highest sensible sampling rate/number of
> > channels/sample type we'd always be able to get a two-second
> > buffer. Windows and Mac use 2s of buffer by default, and I think it
> > would make sense for PulseAudio to do that too. 
> > 
> > i.e. if the soundcard can do 2ch/16bit/44100hz at best I'd like to
> > have a buffer size of up to 344KB; if the soundcard can to
> > 5.1/32bit/48000 at best then i'd like to have a buffer of up to 2.2MB
> > or so.
> Takashi, Jarsolav, how can I bribe you into increasing this limit?
> What are the implications of this change? (Just wondering if it would
> make sense for us to change this limit in the Fedora kernel packages)

The max 1MB is the limitation of this driver implementation as
mentioned in previous posts.  It's not trivial to fix because of
SG-buffer handling.  HD-audio can have at most 256 BDL entries, and
a kernel page on x86* is 4kB, thus total 1MB.


More information about the Alsa-devel mailing list