[MOVED FROM GST-P-FARSIGHT] Adding support for rtpdtmfdepay
authorYouness Alaoui <youness.alaoui@collabora.co.uk>
Thu, 20 Mar 2008 01:13:01 +0000 (01:13 +0000)
committerEdward Hervey <bilboed@bilboed.com>
Sat, 21 Feb 2009 16:48:04 +0000 (17:48 +0100)
20080320011301-4f0f6-d36a5d24be20336e36c4796d75476c9b5ee1a7e1.gz

gst/dtmf/Makefile.am
gst/dtmf/gstdtmf.c
gst/dtmf/gstrtpdtmfsrc.h

index 210dcad..abc4718 100644 (file)
@@ -2,10 +2,13 @@ plugin_LTLIBRARIES = libgstdtmf.la
 
 libgstdtmf_la_SOURCES = gstdtmfsrc.c \
                         gstrtpdtmfsrc.c \
+                        gstrtpdtmfdepay.c \
                         gstdtmf.c
 
 noinst_HEADERS = gstdtmfsrc.h \
-                 gstrtpdtmfsrc.h
+                 gstrtpdtmfsrc.h \
+                 gstrtpdtmfdepay.h \
+                 gstrtpdtmfcommon.h
 
 libgstdtmf_la_CFLAGS = $(GST_CFLAGS) $(GST_PLUGINS_BASE_CFLAGS) $(ERROR_CFLAGS) -DEXTERN_BUF -DRTP_SUPPORT
 libgstdtmf_la_LIBADD = $(GST_LIBS_LIBS)
index 3086885..86bbafa 100644 (file)
@@ -5,6 +5,7 @@
 
 #include "gstdtmfsrc.h"
 #include "gstrtpdtmfsrc.h"
+#include "gstrtpdtmfdepay.h"
 
 
 static gboolean
@@ -17,6 +18,9 @@ plugin_init (GstPlugin * plugin)
     return FALSE;
 
 
+  if (!gst_rtp_dtmf_depay_plugin_init (plugin))
+    return FALSE;
+
   return TRUE;
 }
 
index 4114f23..ade3a67 100644 (file)
@@ -29,6 +29,8 @@
 #include <gst/base/gstbasesrc.h>
 #include <gst/rtp/gstrtpbuffer.h>
 
+#include "gstrtpdtmfcommon.h"
+
 G_BEGIN_DECLS
 
 #define GST_TYPE_RTP_DTMF_SRC          (gst_rtp_dtmf_src_get_type())
@@ -39,21 +41,6 @@ G_BEGIN_DECLS
 #define GST_IS_RTP_DTMF_SRC_CLASS(klass)       (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_RTP_DTMF_SRC))
 #define GST_RTP_DTMF_SRC_CAST(obj)             ((GstRTPDTMFSrc *)(obj))
 
-typedef struct {
-  unsigned  event:8;         /* Current DTMF event */
-#if G_BYTE_ORDER == G_LITTLE_ENDIAN
-  unsigned  volume:6;        /* power level of the tone, in dBm0 */
-  unsigned  r:1;             /* Reserved-bit */
-  unsigned  e:1;             /* End-bit */
-#elif G_BYTE_ORDER == G_BIG_ENDIAN
-  unsigned  e:1;             /* End-bit */
-  unsigned  r:1;             /* Reserved-bit */
-  unsigned  volume:6;        /* power level of the tone, in dBm0 */
-#else
-#error "G_BYTE_ORDER should be big or little endian."
-#endif
-  unsigned  duration:16;     /* Duration of digit, in timestamp units */
-} GstRTPDTMFPayload;
 
 typedef struct _GstRTPDTMFSrc GstRTPDTMFSrc;
 typedef struct _GstRTPDTMFSrcClass GstRTPDTMFSrcClass;