Removing the "continue;" on line 266 of sipXmediaLib/src/mp/MprDecode.cpp
seems to fix the problem at first glance. Maybe someone who knows the
code better than me could check if this would cause any other problems?

    ...Carsten


Index: sipXtapi/sipXmediaLib/src/mp/MprDecode.cpp
===================================================================
--- sipXtapi/sipXmediaLib/src/mp/MprDecode.cpp  (revision 10627)
+++ sipXtapi/sipXmediaLib/src/mp/MprDecode.cpp  (working copy)
@@ -263,7 +263,14 @@
           // If signaling - decode it now.
           if (tryDecodeAsSignalling(tmpRtp))
           {
-            continue;
+            /* Fixed Bug: This 'continue' prevents the DTMF RTP packet from
+               being decoded. => codecs/PlgTone.c:PLG_DECODE_V1() is never
+               called, and so mpTones->mHaveValidData always stays FALSE.
+               codecs/PlgTone.c:PLG_SIGNALING_V1() never has data to work with.
+               MpDecoderBase::getSignalingData() always returns NO_MORE_DATA.
+
+            continue;
+            */
           }
           // Accept packet, if it is later then one we already have, else drop 
it.
           if (  !rtp.isValid()
_______________________________________________
sipxtapi-dev mailing list
[email protected]
List Archive: http://list.sipfoundry.org/archive/sipxtapi-dev/

Reply via email to