From: Manuel Jander <manuel.jander@usm.cl>
To: Takashi Iwai <tiwai@suse.de>,
alsa-devel <alsa-devel@lists.sourceforge.net>
Subject: Re: The ALSA Situation
Date: Thu, 11 Nov 2004 19:52:47 -0300 [thread overview]
Message-ID: <1100213567.2076.29.camel@localhost> (raw)
In-Reply-To: <s5his8cfiot.wl@alsa2.suse.de>
Hi,
On Thu, 2004-11-11 at 17:34 +0100, Takashi Iwai wrote:
> At Wed, 10 Nov 2004 22:42:20 -0800 (PST),
> Linus Torvalds wrote:
> >
> > On Thu, 11 Nov 2004, Jaroslav Kysela wrote:
> > >
> > > Unfortunately, the application will have to settle other real-time
> > > parameters (including stream parameters, i/o chunk sizes etc.), so we must
> > > drain on close() the complete stream and not allow intermixing requests
> > > from applications.
> >
> > That seems to be a misdesign of the interfaces, but whatever.
>
> Well, the contiguous use of a stream isn't easy as it sounds.
> Since each app wants different buffer size, period (fragment) size,
> sample format, sample rate etc, the configuration must be reset
> totally at each time. This eventually requires to stop of the DMA.
There 2 situations (AFAIK):
1) * Stinking intel8x0 or similar card with only one stereo stream:
- Device should be accessed as 48KHz 16 bit stereo (highest quality
available), since it most probably does not even have a samplerate
converter. There should be no concern about latency/buffer size, thats
just silly in such a kind of device. Just use the most efficient DMA
setup.
- All applications using the device should be softmixed. It does not
make any sense to give direct access to applications.
2) * Multichannel card:
- Use one channel for softmixing (reserved for ever for that purpose,
at highest audio quality). Just the same as for the single channel card.
- Use a "Resource Manager" that assigns hardware channels as are
available, and choose the softmixing engine coupled to the reserved
channel when we get out of hardware channels.
- If we want to make this even nicer, and thinking in the future
where hardware channels may have (they actually have, but are not
supported) advanced processing features, the "Resource Manager" could
assign hardware channels on behalf of the features the applications asks
for. For example if a application does not ask for HRTF processing, give
it a softmixing channel, or a hardware channel lacking that feature.
As you can see, both situations are in essence the same, as if there is
only one hardware channel, after reserving the softmixing channel, you
got out of hardware channels, falling into the same situation as of a
multichannel device with all hardware channels being used.
That is my dream of a sound API behaviour. In 1996 they called that
A3D... so this ideas aren't quite new :P
Best Regards
--
Manuel Jander
Electronic Engineer
-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
next prev parent reply other threads:[~2004-11-11 22:52 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-11-10 0:24 The ALSA Situation Eugenia Loli-Queru
2004-11-10 1:50 ` Paul Davis
2004-11-10 2:38 ` Eugenia Loli-Queru
2004-11-10 2:55 ` Paul Davis
2004-11-10 5:59 ` Lee Revell
2004-11-10 23:22 ` James Courtier-Dutton
2004-11-10 10:57 ` Jaroslav Kysela
2004-11-10 16:09 ` Lee Revell
2004-11-10 16:43 ` Linus Torvalds
2004-11-10 17:30 ` Takashi Iwai
2004-11-10 18:08 ` Linus Torvalds
2004-11-10 17:45 ` Jaroslav Kysela
2004-11-10 18:15 ` Linus Torvalds
2004-11-10 18:41 ` Paul Davis
2004-11-10 19:09 ` Linus Torvalds
2004-11-10 21:13 ` Paul Davis
2004-11-10 22:34 ` Linus Torvalds
2004-11-10 23:53 ` Fernando Pablo Lopez-Lezcano
2004-11-11 6:32 ` Jaroslav Kysela
2004-11-11 6:42 ` Linus Torvalds
2004-11-11 16:34 ` Takashi Iwai
2004-11-11 16:58 ` Linus Torvalds
2004-11-11 17:25 ` Takashi Iwai
2004-11-11 18:23 ` Linus Torvalds
2004-11-11 22:34 ` Manuel Jander
2004-11-12 8:57 ` Takashi Iwai
2004-11-12 8:51 ` Takashi Iwai
2004-11-12 15:50 ` Linus Torvalds
2004-11-12 22:06 ` Florian Schmidt
2004-11-13 1:15 ` Manuel Jander
2004-11-13 10:38 ` Jaroslav Kysela
2004-11-14 4:00 ` Manuel Jander
2004-11-20 2:16 ` Configuration system and Resource Manager. Was: " Manuel Jander
2004-11-13 10:42 ` Jaroslav Kysela
2004-11-13 12:11 ` Florian Schmidt
2004-11-13 18:01 ` Linus Torvalds
2004-12-02 1:48 ` Florian Schmidt
2004-11-12 9:07 ` Giuliano Pochini
2004-11-11 22:52 ` Manuel Jander [this message]
2004-11-12 13:44 ` Takashi Iwai
2004-11-10 22:00 ` Hannu Savolainen
2004-11-10 17:13 ` Giuliano Pochini
[not found] <20041110235502.6C8211D2B2D@sc8-sf-uberspam1.sourceforge.net>
2004-11-11 8:56 ` Andreas Mohr
2004-11-11 15:50 ` Manuel Jander
[not found] <20041112040611.8390B1D2669@sc8-sf-uberspam1.sourceforge.net>
2004-11-12 8:24 ` Andreas Mohr
2004-11-12 13:33 ` Manuel Jander
2004-11-12 15:06 ` Clemens Ladisch
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1100213567.2076.29.camel@localhost \
--to=manuel.jander@usm.cl \
--cc=alsa-devel@lists.sourceforge.net \
--cc=mjander@users.sourceforge.net \
--cc=tiwai@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.