Re: [Opalvoip-devel] Opalvoip-devel Digest, Vol 102, Issue 10
Brought to you by:
csoutheren,
rjongbloed
From: Slava L. <s.l...@ab...> - 2016-08-30 17:07:57
|
unsubscribe -----Original Message----- From: opa...@li... [mailto:opa...@li...] Sent: Thursday, August 25, 2016 3:03 PM To: opa...@li... Subject: Opalvoip-devel Digest, Vol 102, Issue 10 Send Opalvoip-devel mailing list submissions to opa...@li... To subscribe or unsubscribe via the World Wide Web, visit https://lists.sourceforge.net/lists/listinfo/opalvoip-devel or, via email, send a message with subject or body 'help' to opa...@li... You can reach the person managing the list at opa...@li... When replying, please edit your Subject line so it is more specific than "Re: Contents of Opalvoip-devel digest..." Today's Topics: 1. Re: PushThread still not starting in trunk MCU sample (Alexander Sbitnev) ---------------------------------------------------------------------- Message: 1 Date: Wed, 24 Aug 2016 18:28:50 +0300 From: Alexander Sbitnev <ale...@gm...> Subject: Re: [Opalvoip-devel] PushThread still not starting in trunk MCU sample To: "opa...@li..." <Opa...@li...> Message-ID: <ef4...@gm...> Content-Type: text/plain; charset=utf-8; format=flowed Today it wasn't so convincing to me that this problem is with OpalCall::OpenSourceMediaStreams(). As it looks today mcu problem is in lack of AttachStream() calls for streams. In current code there is only one place there streams supposed to be attached: OpalMixerConnection::SetListenOnly() and as it turns out it been calling too early. Here is a log parts I sent previous week: 0:07.617 Opal Answer:21082 opalmixer.cxx(1096) MixerCon Set listen only mode to OFF 0:07.769 OPAL-Event:21083 call.cxx(566) Call OpenSourceMediaStreams open for audio session 1 on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.769 OPAL-Event:21083 call.cxx(586) Call OpenSourceMediaStreams failed with no sink formats for audio session 1 on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.770 OPAL-Event:21083 call.cxx(566) Call OpenSourceMediaStreams open for video session 2 on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.770 OPAL-Event:21083 call.cxx(586) Call OpenSourceMediaStreams failed with no sink formats for video session 2 on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.770 OPAL-Event:21083 call.cxx(566) Call OpenSourceMediaStreams open for unallocated H.224 session on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.770 OPAL-Event:21083 call.cxx(586) Call OpenSourceMediaStreams failed with no sink formats for unallocated H.224 session on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.851 Opal Listener:21084 call.cxx(566) Call OpenSourceMediaStreams open for audio session 1 on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.876 Opal Listener:21084 call.cxx(555) Call OpenSourceMediaStreams (already opened) for audio session 1 (GSM-06.10) on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.877 Opal Listener:21084 call.cxx(742) Call OpenSourceMediaStreams completed session 1 on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.878 Opal Listener:21084 call.cxx(566) Call OpenSourceMediaStreams open for unallocated H.224 session on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.884 Opal Listener:21084 call.cxx(566) Call OpenSourceMediaStreams open for video session 2 on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.891 Opal Listener:21084 call.cxx(555) Call OpenSourceMediaStreams (already opened) for video session 2 (H.264-1) on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.893 Opal Listener:21084 call.cxx(742) Call OpenSourceMediaStreams completed session 2 on Call[C98fb78571]-EP<mcu>[M2f0bb8102] 0:07.895 Opal Listener:21084 call.cxx(566) Call OpenSourceMediaStreams open for audio session 1 (GSM-06.10) on Call[C98fb78571]-EP<h323>[tcp$192.168.0.16:35018/1] 0:07.903 Opal Listener:21084 call.cxx(742) Call OpenSourceMediaStreams completed session 1 on Call[C98fb78571]-EP<h323>[tcp$192.168.0.16:35018/1] 0:07.908 Opal Listener:21084 call.cxx(566) Call OpenSourceMediaStreams open for video session 2 (H.264-1) on Call[C98fb78571]-EP<h323>[tcp$192.168.0.16:35018/1] 0:07.917 Opal Listener:21084 call.cxx(742) Call OpenSourceMediaStreams completed session 2 on Call[C98fb78571]-EP<h323>[tcp$192.168.0.16:35018/1] So I've restore old contents of OpalMixerMediaStream::Open adding AttachStream() back into it so now it looks like before: PBoolean OpalMixerMediaStream::Open() { if (m_isOpen) return true; if (mediaFormat.GetMediaType() != OpalMediaType::Audio() #if OPAL_VIDEO && mediaFormat.GetMediaType() != OpalMediaType::Video() #endif ) { PTRACE(3, "Cannot open media stream of type " << mediaFormat.GetMediaType()); return false; } SetPaused(IsSink() && m_listenOnly); if (!IsPaused() && !m_node->AttachStream(this)) return false; return OpalMediaStream::Open(); } And currently I was able to get mcu send streams back to me. Can't say how many bugs I've created by this rough approach but feel free to test it out. I've also check OpalMixerConnection::SetListenOnly() for mediaStreams contents. Turns out at the moment it called there is absolutely no streams inside of mediaStreams array. This cycle just don't process anything: for (PSafePtr<OpalMediaStream> mediaStream(mediaStreams, PSafeReference); mediaStream != NULL; ++mediaStream) { OpalMixerMediaStream * mixerStream = dynamic_cast<OpalMixerMediaStream *>(&*mediaStream); PTRACE(4, "DDD Trying to attach a spream in the mixer " << mixerStream); if (mixerStream != NULL && mixerStream->IsSink()) { mixerStream->SetPaused(listenOnly); if (listenOnly) m_node->DetachStream(mixerStream); else m_node->AttachStream(mixerStream); } } ------------------------------ ---------------------------------------------------------------------------- -- ------------------------------ _______________________________________________ Opalvoip-devel mailing list Opa...@li... https://lists.sourceforge.net/lists/listinfo/opalvoip-devel End of Opalvoip-devel Digest, Vol 102, Issue 10 *********************************************** |