[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Linphone-developers] Mediastreamer newbie seeks clue.
From: |
Herb Peyerl |
Subject: |
Re: [Linphone-developers] Mediastreamer newbie seeks clue. |
Date: |
Tue, 31 Aug 2010 16:49:15 -0400 |
User-agent: |
Mutt/1.4.2.3i |
On Tue, Aug 31, 2010 at 11:45:21AM -0600, Matt Gilg wrote:
> I believe that generally, you need to create a new set of objects for each
> stream. You can attach the streams to the same ticker, but you do need
> separate sessions & filters. To create two streams and use them
> simultaneously, you'll also need to use a sound driver that supports the
> mixing of multiple audio sources.
>
> Hope this helps.
I must really be misunderstanding this ... It appears as though there's an
audio mixer in mediastream2/src/audiomixer.c:
static void mixer_process(MSFilter *f){
.
.
.
}
which appears to be able to sum linear PCM streams:
static void accumulate(int32_t *sum, int16_t* contrib, int nwords){
int i;
for(i=0;i<nwords;++i){
sum[i]+=contrib[i];
}
}
...and it also looks like oRTP is able to manage multiple RTP sessions using
multiple RtpSession* objects with a custom select() ...
I think it should be able to mix multiple RTP sessions together and present a
single unified LPCM stream to Alsa...
So it seems all the pieces are there but my little brain is failing to see how
to put them all together ...