Hi,

My provider uses very strange softswitch which uses payload type = 97
for dtmf transmission. I have patch to resolve this probles but it
seems incompatible with ilbc. Is it possible rewrite it with ilbc
support in mind and apply it?

I can't create new ticket because after submitting I got "Page not found" :(

-- 
Thanks,
Eugene Prokopiev
 corelib/rtp.c            |    6 ++++--
 include/callweaver/rtp.h |    4 +++-
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/corelib/rtp.c b/corelib/rtp.c
index 13db6b8..1afa497 100644
--- a/corelib/rtp.c
+++ b/corelib/rtp.c
@@ -1118,7 +1118,7 @@ struct cw_frame *cw_rtp_read(struct cw_rtp *rtp)
     if (!rtpPT.is_cw_format)
     {
         /* This is special in-band data that's not one of our codecs */
-        if (rtpPT.code == CW_RTP_DTMF)
+        if (rtpPT.code == CW_RTP_DTMF || rtpPT.code == CW_RTP_HUAWEI_DTMF)
         {
             /* It's special -- rfc2833 process it */
             if (rtp_debug_test_addr(&sin))
@@ -1257,6 +1257,7 @@ static struct
     {{1, CW_FORMAT_ILBC}, "audio", "iLBC"},
     {{0, CW_RTP_DTMF}, "audio", "telephone-event"},
     {{0, CW_RTP_CISCO_DTMF}, "audio", "cisco-telephone-event"},
+    {{0, CW_RTP_HUAWEI_DTMF}, "audio", "huawei-telephone-event"},
     {{0, CW_RTP_CN}, "audio", "CN"},
     {{1, CW_FORMAT_JPEG}, "video", "JPEG"},
     {{1, CW_FORMAT_PNG}, "video", "PNG"},
@@ -1292,7 +1293,8 @@ static struct rtpPayloadType static_RTP_PT[MAX_RTP_PT] =
     [31] = {1, CW_FORMAT_H261},
     [34] = {1, CW_FORMAT_H263},
     [103] = {1, CW_FORMAT_H263_PLUS},
-    [97] = {1, CW_FORMAT_ILBC},
+    //[97] = {1, CW_FORMAT_ILBC},
+    [97] = {0, CW_RTP_HUAWEI_DTMF},
     [99] = {1, CW_FORMAT_H264},
     [101] = {0, CW_RTP_DTMF},
     [110] = {1, CW_FORMAT_SPEEX},
diff --git a/include/callweaver/rtp.h b/include/callweaver/rtp.h
index 2e9b535..dca86bf 100644
--- a/include/callweaver/rtp.h
+++ b/include/callweaver/rtp.h
@@ -53,8 +53,10 @@ extern "C" {
 #define CW_RTP_CN              (1 << 1)
 /*! DTMF (Cisco Proprietary) */
 #define CW_RTP_CISCO_DTMF      (1 << 2)
+/*! DTMF (Huawei Proprietary) */
+#define CW_RTP_HUAWEI_DTMF     (1 << 3)
 /*! Maximum RTP-specific code */
-#define CW_RTP_MAX             CW_RTP_CISCO_DTMF
+#define CW_RTP_MAX             CW_RTP_HUAWEI_DTMF
 
 #define MAX_RTP_PT 256
 
_______________________________________________
Callweaver-dev mailing list
[email protected]
http://lists.callweaver.org/mailman/listinfo/callweaver-dev

Reply via email to