Re: [pulseaudio-discuss] These ideas I've had for the better part of a month, forgive me for there length.

2010-08-16 Thread pl bossart
 The next stream type should be a pulse audio internal type(s) used for
 the mixing of mp3/ac3 and perhaps dts streams.  It's my understanding
 that ac3 uses vectors to describe 6 channels of sound much like a 2ch
 mp3.  If I'm not mistaken these vectors can be combined mathematically
 as-is to represent the combination of two sounds.  This would be a great
 achivement over any uncompress/combine/recompress senerio.

 Do you have any pointers to how this is done? If it's true that there
 really is a way to mix compressed streams without uncompressing first,
 then maybe volume adjustment is possible too?

Nah. no way you can mix streams without decompressing
(dequantization+inverse transform). The only thing you could do is mix
in the transform domain if both streams used the same transform and
window size, not a very common case.
-Pierre
___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] These ideas I've had for the better part of a month, forgive me for there length.

2010-08-13 Thread Tanu Kaskinen
On Sat, 2010-08-07 at 12:47 -0500, Mike Mestnik wrote:
 There is a cause to add several stream types to pulse audio for the
 support of all the hardware's features.  Current stream types can be
 described by ~3 dimensions (channels, bits, bit-format, rate).
 
 The first that would be necessary is raw.  That is pre-mixed information
 that can't be further mixed.  Each stream is to be given a priority
 ~0-15 where default for existing streams is 7 and raw streams default to 11.
 
 This makes pre-mixed sounds cause all other sounds to be silenced so
 they can be played.  The effect is the ability to play videos(ac3/dts)
 while other applications are emitting data, no need to close
 browser/flash.  The first optional extension is the ability to indicate
 to sources that they will not be played in the form of a warning
 returned to data passed and a signal indicating that play can continue.

I don't know if you've followed the recent AC3 discussion, but some
support for raw (aka passthrough) streams has been implemented now.
Currently the logic doesn't give precedence for passthrough streams. It
might make sense to do so, though.

 A notable improvement over the current ALSA-passthrough is the addition
 of framing.  Currently pausing and restarting a pre-mixed stream causes
 loud pops and clicks, this is undesirable and as such pulse audio can
 offer a solution.

The current code doesn't understand such frames, but I think this idea
is also a good one to keep in mind.

 The next stream type should be a pulse audio internal type(s) used for
 the mixing of mp3/ac3 and perhaps dts streams.  It's my understanding
 that ac3 uses vectors to describe 6 channels of sound much like a 2ch
 mp3.  If I'm not mistaken these vectors can be combined mathematically
 as-is to represent the combination of two sounds.  This would be a great
 achivement over any uncompress/combine/recompress senerio.

Do you have any pointers to how this is done? If it's true that there
really is a way to mix compressed streams without uncompressing first,
then maybe volume adjustment is possible too?

-- 
Tanu Kaskinen

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss