[Vorbis] [Fwd: RE: Mixing inputstreams.]

Ross Levis ross at stationplaylist.com
Mon Mar 2 16:16:51 PST 2009


My experience in this area is only with the mixing of decoded PCM data where
you can add simply add the samples together.  In the case of 16-bit data for
example, the resulting addition cannot exceed +/-32767, so for 4 PCM streams
you would need to divide each sample value by 4 before adding.  If you want
to normalize after that then that is up to you.

Ross.

-----Original Message-----
From: vorbis-bounces at xiph.org [mailto:vorbis-bounces at xiph.org] On Behalf Of
Fish
Sent: Tuesday, 3 March 2009 6:41 a.m.
To: vorbis at xiph.org
Subject: [Vorbis] [Fwd: RE: Mixing inputstreams.]

Thanks Ross,
So you think that I can just numerically add up the appropriate Bytes 
from each of the streams? If that's so would we be better add first, 
then to normalise after the additon, so the final byte size is the same 
as the individual ones, what ever that may be.

-------- Original Message --------
Subject: 	RE: [Vorbis] Mixing inputstreams.
Date: 	Tue, 3 Mar 2009 01:12:35 +1300
From: 	Ross Levis <ross at stationplaylist.com>
Organisation: 	http://www.stationplaylist.com
To: 	'Fish' <fish at ghostsofp.com>
References: 	<49ABBDD0.1040505 at ghostsofp.com>



You can simply add the values of each sample together, but you will have to
ensure the final result is not larger than the maximum allowed or you will
have distortion.  You could divide the sample value by 4 for each sound file
and then add them together.

Ross.

-----Original Message-----
From: vorbis-bounces at xiph.org [mailto:vorbis-bounces at xiph.org] On Behalf Of
Fish
Sent: Tuesday, 3 March 2009 12:07 a.m.
To: vorbis at xiph.org
Subject: [Vorbis] Mixing inputstreams.

With the help of a java programmer, we have created an application to 
play multiple local ogg sound files, all triggered from a single 'play' 
event. The event triggers an instance of the ogg.vorbis player for each 
file to be played. However we are finding that these 'tracks' are not 
synchronised, since the audioinputstream for each is passed to the 
dataline, and so gets handled by the OS. We are now looking for a way to 
combine these inputstreams, into a single input stream, (mixed), so that 
the combined stream can be output to the dataline, and so guarantee, 
that the combined or mixed sound is indeed synchronised. Since we have 
some controls within each of the players, pan, level, mute, we should be 
able to still use these for each of the channels before they are 
combined. There may indeed be a solution already to this problem, and 
pointers in the right direction would be a help. Otherwise a suggested 
approach would we most welcome.

Thanks in advance
Gerry Abbott
_______________________________________________
Vorbis mailing list
Vorbis at xiph.org
http://lists.xiph.org/mailman/listinfo/vorbis



-- 
No virus found in this incoming message.
Checked by AVG. 
Version: 7.5.557 / Virus Database: 270.11.5/1979 - Release Date: 01/03/2009
17:46



_______________________________________________
Vorbis mailing list
Vorbis at xiph.org
http://lists.xiph.org/mailman/listinfo/vorbis



More information about the Vorbis mailing list