|
From: | Raust Tamatea |
Subject: | Re: [Linphone-developers] Using MSConf - conference |
Date: | Tue, 22 Jun 2010 10:39:10 +0200 |
User-agent: | Thunderbird 2.0.0.22 (Windows/20090605) |
damico a écrit :
Il 21/06/2010 11:32, Raust Tamatea ha scritto:damico a écrit :Il 18/06/2010 12:07, Raust Tamatea ha scritto:You can not link a filter to a graph while is running: please link all your filters in the graph and then call ms_ticker_attach() just a for a filter (for instance soundread)Raust Tamatea a écrit :Hello, I'm using mediastreamer2 to receive / send RTP data.I would like to use the filter MSConf for multiple audio stream. By following instruction, a simple communication between a phone and PC is working. Now I've created a conference but when I don't have any more sound. I've done something like this :ms_filter_link (stream->rtprecv, 0, stream->decoder, 0); ms_filter_link (stream->decoder, 0, stream->dtmfgen, 0); ms_filter_link (stream->dtmfgen, 0, room, 0); ms_filter_link (room, 0, stream->soundwrite, 0); ms_ticker_attach (m_ticker, pRtp->m_rtprecv); with MSFilter * room = ms_filter_new (MS_CONF_ID);With this I can't hear any sound. If I don't use room and directly go to soundwrite, it's okay.Could you help me ? I can't find any example with audio conferencing. Regards. _______________________________________________ Linphone-developers mailing list address@hidden http://lists.nongnu.org/mailman/listinfo/linphone-developersThanks for your answers.There is something I don't understand with msconf and ms_ticker_attach.I create a conference like this :ms_filter_link (rtprecv, 0, decoder, 0); ms_filter_link (decoder, 0, dtmfgen, 0); ms_filter_link (dtmfgen, 0, m_room, 1); ms_filter_link (m_room, 1, encoder, 0); ms_filter_link (encoder, 0, rtpsend, 0);Then I link rtprecv with the ticker : ms_ticker_attach (m_ticker, rtprecv); Next I want to link my soundcard : ms_filter_link (soundread, 0, m_room, 0); ms_filter_link (m_room, 0, soundwrite, 0);And when I call " ms_ticker_attach (m_ticker, soundread); " then my problem is that my execution_list contain 3 filters. First attach there is only rtprecv. Second attach, there is rtprecv, soundread and again rtprecv. Is it normal ? Do I have to detach each filter before adding a new one so it will add all the filters ? If I don't do this, then mediastreamer crash because if I detach the first recv the second one is still present but I've already destroyed it in my code.Any idea ? Perhaps I'm doing something wrong. Regards. _______________________________________________ Linphone-developers mailing list address@hidden http://lists.nongnu.org/mailman/listinfo/linphone-developersRegards --Michele _______________________________________________ Linphone-developers mailing list address@hidden http://lists.nongnu.org/mailman/listinfo/linphone-developersHello,With your help I can use a conference as I wish. My last problem (I hope it's the last one) is that I need to send one output of the conference to the input of another conference with 2 differents tickers. I don't know if it's possible but nothing in the code tells me that I can't do this. I've tried to play with the pin odd or even but it didn't help me. I've tried to link directly the output of conf1 to the input of conf2 and run 2 tickers but I can't have any sound. For example, I've done this :ms_filter_link (player, 0, conf1, 1); - 1 file player in conf1 (input) ms_filter_link (conf1, 1, conf2, 1); - link conf1 (output) to conf2 (input)ms_filter_link (soundread, 0, conf2, 0); - 1 mic in conf2 (input)ms_filter_link (conf2, 0, soundwrite, 0); - 1 speaker in conf2 (output)ms_ticker_attach (ticker1, player); ms_ticker_attach (ticker2, soundread);I've tried using a Tee filter to link the 2 conferences but again no sound.I hope you can help me. Regards.Sorry, but you can't do that with standard msfilters. Regards --Michele _______________________________________________ Linphone-developers mailing list address@hidden http://lists.nongnu.org/mailman/listinfo/linphone-developers
Okay, thanks for this information.But is it possible to share multiple rtp packet from a session to differents conferences ? If I use MS_TEE, I don't understand how to use it with tickers.
For example : ms_filter_link(rtprecv,0,decoder,0); ms_filter_link(decoder,0,dtmfgen,0); ms_filter_link(dtmfgen,0,tee,0); ms_filter_attach(ticker1,rtprecv); // Process RTP Packet and decode DTMF ms_filter_link(tee,0,conf1,0); ms_filter_attach(ticker2,tee,0); // Process Tee output pin 0 to conf 1 ms_filter_link(tee,1,conf2,0); ms_filter_attach(ticker3,tee,0); // Process Tee output pin 1 to conf 2When doing this I just have a crash in mediastreamer2 because the rtprecv filter does not have a ticker. I might be doing something wrong. If it's not a good way to do what I want, is there any solution to share a RTP incoming packet between 2, 3 or more conferences ? Any examples ? I will try to see why my program is crashing.
Thanks for your help again. Regards.
[Prev in Thread] | Current Thread | [Next in Thread] |