[asterisk-commits] sruffell: trunk r314471 - /trunk/codecs/codec_dahdi.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Apr 20 14:56:08 CDT 2011


Author: sruffell
Date: Wed Apr 20 14:56:07 2011
New Revision: 314471

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=314471
Log:
codec_dahdi: DAHDI still advertises formats using the old bitfields.

Previously, the DAHDI format bit fields matched up with the Asterisk
bitfields. Since the Asterisk codec bit fields were replaced in r306010,
codec_dahdi needs to contain the formats itself. In the future, the DAHDI
formats should either change to something other than bitfields, or the
bitfields need to move from include/dahdi/kernel.h to
include/dahdi/user.h.

Signed-off-by: Shaun Ruffell <sruffell at digium.com>

Modified:
    trunk/codecs/codec_dahdi.c

Modified: trunk/codecs/codec_dahdi.c
URL: http://svnview.digium.com/svn/asterisk/trunk/codecs/codec_dahdi.c?view=diff&rev=314471&r1=314470&r2=314471
==============================================================================
--- trunk/codecs/codec_dahdi.c (original)
+++ trunk/codecs/codec_dahdi.c Wed Apr 20 14:56:07 2011
@@ -55,6 +55,20 @@
 
 #define G723_SAMPLES 240
 #define G729_SAMPLES 160
+
+#ifndef DAHDI_FORMAT_MAX_AUDIO
+#define DAHDI_FORMAT_G723_1    (1 << 0)
+#define DAHDI_FORMAT_GSM       (1 << 1)
+#define DAHDI_FORMAT_ULAW      (1 << 2)
+#define DAHDI_FORMAT_ALAW      (1 << 3)
+#define DAHDI_FORMAT_G726      (1 << 4)
+#define DAHDI_FORMAT_ADPCM     (1 << 5)
+#define DAHDI_FORMAT_SLINEAR   (1 << 6)
+#define DAHDI_FORMAT_LPC10     (1 << 7)
+#define DAHDI_FORMAT_G729A     (1 << 8)
+#define DAHDI_FORMAT_SPEEX     (1 << 9)
+#define DAHDI_FORMAT_ILBC      (1 << 10)
+#endif
 
 static struct channel_usage {
 	int total;
@@ -598,13 +612,13 @@
 		 * module. Also, do not allow direct ulaw/alaw to complex
 		 * codec translation, since that will prevent the generic PLC
 		 * functions from working. */
-		if (info.dstfmts & (AST_FORMAT_ULAW | AST_FORMAT_ALAW)) {
-			info.dstfmts |= AST_FORMAT_SLINEAR;
-			info.dstfmts &= ~(AST_FORMAT_ULAW | AST_FORMAT_ALAW);
-		}
-		if (info.srcfmts & (AST_FORMAT_ULAW | AST_FORMAT_ALAW)) {
-			info.srcfmts |= AST_FORMAT_SLINEAR;
-			info.srcfmts &= ~(AST_FORMAT_ULAW | AST_FORMAT_ALAW);
+		if (info.dstfmts & (DAHDI_FORMAT_ULAW | DAHDI_FORMAT_ALAW)) {
+			info.dstfmts |= DAHDI_FORMAT_SLINEAR;
+			info.dstfmts &= ~(DAHDI_FORMAT_ULAW | DAHDI_FORMAT_ALAW);
+		}
+		if (info.srcfmts & (DAHDI_FORMAT_ULAW | DAHDI_FORMAT_ALAW)) {
+			info.srcfmts |= DAHDI_FORMAT_SLINEAR;
+			info.srcfmts &= ~(DAHDI_FORMAT_ULAW | DAHDI_FORMAT_ALAW);
 		}
 
 		build_translators(&map, info.dstfmts, info.srcfmts);




More information about the asterisk-commits mailing list