I use webrtc's AddTransceiver() interface to create a standalone video track, now the stream count is correct and the server's answer sdp is right too.
However after B's new track is negotiated, A can see B's new video track. I check the function handle_negotiated_sdp() and found that the session_media->changed is never set so the AST_CONTROL_STREAM_TOPOLOGY_SOURCE_CHANGED cannot be triggered. Is that matter? Sincerely Xiemin Joshua C. Colp <[email protected]> 于2019年5月9日周四 上午1:42写道: > On Wed, May 8, 2019, at 2:11 PM, Xiemin Chen wrote: > > I add a stream instead of replace stream, I think the problem is caused > > by the a=sendrecv created by WebRTC client, I will get deeper in to > > this. > > If it's not adding a stream but replacing like it seems to be, then I > could certainly see things not working as bridge_softmix also does not > expect to use a stream for both sending and receiving. > > > Can you point out where's the actual SDP negotiation? I will check it > > too. Thanks for your help. > > Within Asterisk the handle_incoming_sdp function is what does the > negotiation and handle_negotiated_sdp_session_media applies the result of > that negotiation. The SDP negotiator itself otherwise is within PJSIP > itself, specifically pjmedia/src/pjmedia/sdp_neg.c > > -- > Joshua C. Colp > Digium - A Sangoma Company | Senior Software Developer > 445 Jan Davis Drive NW - Huntsville, AL 35806 - US > Check us out at: www.digium.com & www.asterisk.org > > -- > _____________________________________________________________________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-dev
-- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev
