All of lore.kernel.org
 help / color / mirror / Atom feed
From: Robert Hancock <hancockrwd@gmail.com>
To: Jon Smirl <jonsmirl@gmail.com>
Cc: Takashi Iwai <tiwai@suse.de>,
	alsa-devel mailing list <alsa-devel@alsa-project.org>,
	Mark Brown <broonie@opensource.wolfsonmicro.com>,
	James Courtier-Dutton <james.dutton@gmail.com>
Subject: Re: Proposal for more reliable audio DMA.
Date: Thu, 25 Jun 2009 17:26:30 -0600	[thread overview]
Message-ID: <4A4407A6.7010909@gmail.com> (raw)
In-Reply-To: <9e4733910906250720r15a6ee0x79f472da482aa9ec@mail.gmail.com>

On 06/25/2009 08:20 AM, Jon Smirl wrote:
> On Thu, Jun 25, 2009 at 1:36 AM, Robert Hancock<hancockrwd@gmail.com>  wrote:
>> On 06/24/2009 10:26 PM, Jon Smirl wrote:
>>> On Wed, Jun 24, 2009 at 5:11 PM, Takashi Iwai<tiwai@suse.de>    wrote:
>>>>> The problem is knowing which sample in the background music to start
>>>>> mixing the low latency laser blast into.
>>>> That's why querying the accurate hwptr is important in PA.
>>> I'm still not convinced that all of this logic should be exposed to
>>> PA. Exposing these details is what makes ALSA hard to use. We should
>>> be able to better isolate user space from this. If mixing were moved
>>> into the kernel these details could be hidden.  The in-kernel code
>>> could then be customized for various sound DMA hardware. This would
>>> also go a long ways toward getting rid of latency issues by removing
>>> the need for real-time response from PA.
>> Mixing really does not belong in the kernel. Moving it there doesn't remove
>> any complication or problem, it just moves it to a different place where
>> it's more difficult to program and less debuggable. Most OSes (Windows
>> included) are moving in the direction of moving mixing out of the kernel,
>> not into it.
>
> Mixing has a real-time component to it. Currently Desktop Linux
> doesn't have real-time support. That's why pulse is developing
> RealTimeKit.  Buggy real-time code can easily lock your machine to
> where you need to hit the reset button.
>
> User space code that is locked down with real-time priority and
> servicing interrupts is effectively kernel code, it might as well be
> in the kernel where it can get rid of the process overhead.
>
> http://git.0pointer.de/?p=rtkit.git;a=blob;f=README

Just because it runs with real time priority does not mean it is 
effectively kernel code, or that it belongs there. Putting the code into 
the kernel adds a bunch of extra challenges for little reason, and also 
locks all users into a mixing scheme that may not meet their needs 
(ahem, Windows kernel mixer..)

  reply	other threads:[~2009-06-25 23:25 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-24 16:28 Proposal for more reliable audio DMA Mark Brown
2009-06-24 19:07 ` Jon Smirl
2009-06-24 21:11   ` Takashi Iwai
2009-06-25  4:26     ` Jon Smirl
2009-06-25  5:36       ` Robert Hancock
2009-06-25 14:20         ` Jon Smirl
2009-06-25 23:26           ` Robert Hancock [this message]
2009-06-25 10:25   ` Mark Brown
  -- strict thread matches above, loose matches on Subject: below --
2009-06-21  2:06 Jon Smirl
2009-06-22 16:27 ` James Courtier-Dutton
2009-06-22 16:43   ` Jon Smirl
2009-06-23  9:54     ` Mark Brown
2009-06-24 14:10       ` Jon Smirl
2009-06-24 14:39         ` Takashi Iwai
2009-06-24 15:14           ` Jon Smirl
2009-06-24 15:24             ` Takashi Iwai
2009-06-24 16:07               ` Jon Smirl
2009-06-25 15:26             ` James Courtier-Dutton

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=4A4407A6.7010909@gmail.com \
    --to=hancockrwd@gmail.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=james.dutton@gmail.com \
    --cc=jonsmirl@gmail.com \
    --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.