Rockbox mail archiveSubject: Re: Software mixer
Re: Software mixer
From: Thomas Martitz <thomas.martitz_at_student.htw-berlin.de>
Date: Sun, 22 Nov 2009 23:11:52 +0100
On 22.11.2009 20:28, Jeff Goode wrote:
> I proposed that pcmbuf be rewritten to allow multiple input streams to
> be queued up independently and non-destructively mixed in real time.
> But there was some concern that this would cost memory and CPU time
> resources for little gain.
Let me clarify my concerns once more: I'm not remotely concerned with
pcmbuf being rewritten for multiple streams or the like. That would fix
the strange situation that voice doesn't play with audio paused.
I'm just skeptical about the "non-destructive" bit, which is (as far as
I understood) only there to have the voice play on in the moment of
stopping/pausing/resuming playback (it means that the streams can be
decoupled/restored again after being mixed together).
I expect that (voice playing while changing playback state) to be a very
rare situation. We probably wouldn't need non-destructive at all mixing
if we ignored that rare case (the other imaginary streams will probably
only be active when audio is playing too, unless someone wants fancy
sound effects on voice(?)). And I also think that making it
non-destructive will be quite some impact in terms of code size and ram
usage since I can't even imagine how to do it with a simple and short
algorithm. Therefore, it might be desirable to leave that out (maybe
forever, or only for now), to see if we really need that. If it turns
out cheap enough or the situation being very common actually it could be
Also, fixing the main problem has higher priority IMO. Implementing the
non-destructive thing sounds like it would complicate (and therefore)
delay the fix while being quite low-priority.
Received on 2009-11-22