[asterisk-commits] mmichelson: branch 1.6.2 r267507 - in /branches/1.6.2: ./ codecs/ include/ast...

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Thu Jun 3 12:21:09 CDT 2010


Author: mmichelson
Date: Thu Jun  3 12:21:06 2010
New Revision: 267507

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=267507
Log:
Merged revisions 267492 via svnmerge from 
https://origsvn.digium.com/svn/asterisk/trunk

........
  r267492 | mmichelson | 2010-06-03 12:09:11 -0500 (Thu, 03 Jun 2010) | 6 lines
  
  Remove unnecessary code relating to PLC.
  
  The logic for handling generic PLC is now handled in ast_write in
  channel.c instead of in translation code.
........

Modified:
    branches/1.6.2/   (props changed)
    branches/1.6.2/codecs/codec_adpcm.c
    branches/1.6.2/codecs/codec_alaw.c
    branches/1.6.2/codecs/codec_dahdi.c
    branches/1.6.2/codecs/codec_g722.c
    branches/1.6.2/codecs/codec_g726.c
    branches/1.6.2/codecs/codec_gsm.c
    branches/1.6.2/codecs/codec_lpc10.c
    branches/1.6.2/codecs/codec_ulaw.c
    branches/1.6.2/include/asterisk/translate.h
    branches/1.6.2/main/translate.c

Propchange: branches/1.6.2/
------------------------------------------------------------------------------
Binary property 'trunk-merged' - no diff available.

Modified: branches/1.6.2/codecs/codec_adpcm.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.6.2/codecs/codec_adpcm.c?view=diff&rev=267507&r1=267506&r2=267507
==============================================================================
--- branches/1.6.2/codecs/codec_adpcm.c (original)
+++ branches/1.6.2/codecs/codec_adpcm.c Thu Jun  3 12:21:06 2010
@@ -293,7 +293,6 @@
 	.desc_size = sizeof(struct adpcm_decoder_pvt),
 	.buffer_samples = BUFFER_SAMPLES,
 	.buf_size = BUFFER_SAMPLES * 2,
-	.plc_samples = 160,
 };
 
 static struct ast_translator lintoadpcm = {
@@ -308,28 +307,9 @@
 	.buf_size = BUFFER_SAMPLES/ 2,	/* 2 samples per byte */
 };
 
-static int parse_config(int reload)
-{
-	struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
-	struct ast_config *cfg = ast_config_load("codecs.conf", config_flags);
-	struct ast_variable *var;
-	if (cfg == CONFIG_STATUS_FILEMISSING || cfg == CONFIG_STATUS_FILEUNCHANGED || cfg == CONFIG_STATUS_FILEINVALID)
-		return 0;
-	for (var = ast_variable_browse(cfg, "plc"); var ; var = var->next) {
-		if (!strcasecmp(var->name, "genericplc")) {
-			adpcmtolin.useplc = ast_true(var->value) ? 1 : 0;
-			ast_verb(3, "codec_adpcm: %susing generic PLC\n", adpcmtolin.useplc ? "" : "not ");
-		}
-	}
-	ast_config_destroy(cfg);
-	return 0;
-}
-
 /*! \brief standard module glue */
 static int reload(void)
 {
-	if (parse_config(1))
-		return AST_MODULE_LOAD_DECLINE;
 	return AST_MODULE_LOAD_SUCCESS;
 }
 
@@ -347,8 +327,6 @@
 {
 	int res;
 
-	if (parse_config(0))
-		return AST_MODULE_LOAD_DECLINE;
 	res = ast_register_translator(&adpcmtolin);
 	if (!res)
 		res = ast_register_translator(&lintoadpcm);

Modified: branches/1.6.2/codecs/codec_alaw.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.6.2/codecs/codec_alaw.c?view=diff&rev=267507&r1=267506&r2=267507
==============================================================================
--- branches/1.6.2/codecs/codec_alaw.c (original)
+++ branches/1.6.2/codecs/codec_alaw.c Thu Jun  3 12:21:06 2010
@@ -79,7 +79,6 @@
 	.sample = alaw_sample,
 	.buffer_samples = BUFFER_SAMPLES,
 	.buf_size = BUFFER_SAMPLES * 2,
-	.plc_samples = 160,
 };
 
 static struct ast_translator lintoalaw = {
@@ -92,29 +91,10 @@
 	.buf_size = BUFFER_SAMPLES,
 };
 
-static int parse_config(int reload)
-{
-	struct ast_variable *var;
-	struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
-	struct ast_config *cfg = ast_config_load("codecs.conf", config_flags);
-	if (cfg == CONFIG_STATUS_FILEMISSING || cfg == CONFIG_STATUS_FILEUNCHANGED || cfg == CONFIG_STATUS_FILEINVALID)
-		return 0;
-	for (var = ast_variable_browse(cfg, "plc"); var; var = var->next) {
-		if (!strcasecmp(var->name, "genericplc")) {
-			alawtolin.useplc = ast_true(var->value) ? 1 : 0;
-			ast_verb(3, "codec_alaw: %susing generic PLC\n", alawtolin.useplc ? "" : "not ");
-		}
-	}
-	ast_config_destroy(cfg);
-	return 0;
-}
-
 /*! \brief standard module stuff */
 
 static int reload(void)
 {
-	if (parse_config(1))
-		return AST_MODULE_LOAD_DECLINE;
 	return AST_MODULE_LOAD_SUCCESS;
 }
 
@@ -132,8 +112,6 @@
 {
 	int res;
 
-	if (parse_config(0))
-		return AST_MODULE_LOAD_DECLINE;
 	res = ast_register_translator(&alawtolin);
 	if (!res)
 		res = ast_register_translator(&lintoalaw);

Modified: branches/1.6.2/codecs/codec_dahdi.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.6.2/codecs/codec_dahdi.c?view=diff&rev=267507&r1=267506&r2=267507
==============================================================================
--- branches/1.6.2/codecs/codec_dahdi.c (original)
+++ branches/1.6.2/codecs/codec_dahdi.c Thu Jun  3 12:21:06 2010
@@ -55,8 +55,6 @@
 
 #define G723_SAMPLES 240
 #define G729_SAMPLES 160
-
-static unsigned int global_useplc = 0;
 
 static struct channel_usage {
 	int total;
@@ -493,29 +491,14 @@
 	if (is_encoder(zt)) {
 		zt->t.framein = dahdi_encoder_framein;
 		zt->t.frameout = dahdi_encoder_frameout;
-#if 0
-		zt->t.buffer_samples = 0;
-#endif
 	} else {
 		zt->t.framein = dahdi_decoder_framein;
 		zt->t.frameout = dahdi_decoder_frameout;
-#if 0
-		if (AST_FORMAT_G723_1 == zt->t.srcfmt) {
-			zt->t.plc_samples = G723_SAMPLES;
-		} else {
-			zt->t.plc_samples = G729_SAMPLES;
-		}
-		zt->t.buffer_samples = zt->t.plc_samples * 8;
-#endif
 	}
 	zt->t.destroy = dahdi_destroy;
 	zt->t.buffer_samples = 0;
 	zt->t.newpvt = dahdi_new;
 	zt->t.sample = fakesrc_sample;
-#if 0
-	zt->t.useplc = global_useplc;
-#endif
-	zt->t.useplc = 0;
 	zt->t.native_plc = 0;
 
 	zt->t.desc_size = sizeof(struct codec_dahdi_pvt);
@@ -565,27 +548,6 @@
 		ast_free(cur);
 	}
 	AST_LIST_UNLOCK(&translators);
-}
-
-static int parse_config(int reload)
-{
-	struct ast_variable *var;
-	struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
-	struct ast_config *cfg = ast_config_load("codecs.conf", config_flags);
-
-	if (cfg == CONFIG_STATUS_FILEMISSING || cfg == CONFIG_STATUS_FILEUNCHANGED || cfg == CONFIG_STATUS_FILEINVALID)
-		return 0;
-
-	for (var = ast_variable_browse(cfg, "plc"); var; var = var->next) {
-	       if (!strcasecmp(var->name, "genericplc")) {
-		       global_useplc = ast_true(var->value);
-		       ast_verb(3, "codec_dahdi: %susing generic PLC\n",
-				global_useplc ? "" : "not ");
-	       }
-	}
-
-	ast_config_destroy(cfg);
-	return 0;
 }
 
 static void build_translators(struct format_map *map, unsigned int dstfmts, unsigned int srcfmts)
@@ -664,14 +626,6 @@
 {
 	struct translator *cur;
 
-	if (parse_config(1))
-		return AST_MODULE_LOAD_DECLINE;
-
-	AST_LIST_LOCK(&translators);
-	AST_LIST_TRAVERSE(&translators, cur, entry)
-		cur->t.useplc = global_useplc;
-	AST_LIST_UNLOCK(&translators);
-
 	return AST_MODULE_LOAD_SUCCESS;
 }
 
@@ -686,8 +640,6 @@
 static int load_module(void)
 {
 	ast_ulaw_init();
-	if (parse_config(0))
-		return AST_MODULE_LOAD_DECLINE;
 	find_transcoders();
 	ast_cli_register_multiple(cli, ARRAY_LEN(cli));
 	return AST_MODULE_LOAD_SUCCESS;

Modified: branches/1.6.2/codecs/codec_g722.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.6.2/codecs/codec_g722.c?view=diff&rev=267507&r1=267506&r2=267507
==============================================================================
--- branches/1.6.2/codecs/codec_g722.c (original)
+++ branches/1.6.2/codecs/codec_g722.c Thu Jun  3 12:21:06 2010
@@ -142,7 +142,6 @@
 	.desc_size = sizeof(struct g722_decoder_pvt),
 	.buffer_samples = BUFFER_SAMPLES / sizeof(int16_t),
 	.buf_size = BUFFER_SAMPLES,
-	.plc_samples = 160,
 };
 
 static struct ast_translator lintog722 = {
@@ -167,7 +166,6 @@
 	.desc_size = sizeof(struct g722_decoder_pvt),
 	.buffer_samples = BUFFER_SAMPLES / sizeof(int16_t),
 	.buf_size = BUFFER_SAMPLES,
-	.plc_samples = 160,
 };
 
 static struct ast_translator lin16tog722 = {
@@ -182,29 +180,8 @@
 	.buf_size = BUFFER_SAMPLES,
 };
 
-static int parse_config(int reload)
-{
-	struct ast_variable *var;
-	struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
-	struct ast_config *cfg = ast_config_load("codecs.conf", config_flags);
-
-	if (cfg == CONFIG_STATUS_FILEMISSING || cfg == CONFIG_STATUS_FILEUNCHANGED || cfg == CONFIG_STATUS_FILEINVALID)
-		return 0;
-	for (var = ast_variable_browse(cfg, "plc"); var; var = var->next) {
-		if (!strcasecmp(var->name, "genericplc")) {
-			g722tolin.useplc = ast_true(var->value) ? 1 : 0;
-			ast_verb(3, "codec_g722: %susing generic PLC\n",
-					g722tolin.useplc ? "" : "not ");
-		}
-	}
-	ast_config_destroy(cfg);
-	return 0;
-}
-
 static int reload(void)
 {
-	if (parse_config(1))
-		return AST_MODULE_LOAD_DECLINE;
 	return AST_MODULE_LOAD_SUCCESS;
 }
 
@@ -223,9 +200,6 @@
 static int load_module(void)
 {
 	int res = 0;
-
-	if (parse_config(0))
-		return AST_MODULE_LOAD_DECLINE;
 
 	res |= ast_register_translator(&g722tolin);
 	res |= ast_register_translator(&lintog722);

Modified: branches/1.6.2/codecs/codec_g726.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.6.2/codecs/codec_g726.c?view=diff&rev=267507&r1=267506&r2=267507
==============================================================================
--- branches/1.6.2/codecs/codec_g726.c (original)
+++ branches/1.6.2/codecs/codec_g726.c Thu Jun  3 12:21:06 2010
@@ -779,7 +779,6 @@
 	.desc_size = sizeof(struct g726_coder_pvt),
 	.buffer_samples = BUFFER_SAMPLES,
 	.buf_size = BUFFER_SAMPLES * 2,
-	.plc_samples = 160,
 };
 
 static struct ast_translator lintog726 = {
@@ -804,7 +803,6 @@
 	.desc_size = sizeof(struct g726_coder_pvt),
 	.buffer_samples = BUFFER_SAMPLES,
 	.buf_size = BUFFER_SAMPLES * 2,
-	.plc_samples = 160,
 };
 
 static struct ast_translator lintog726aal2 = {
@@ -819,29 +817,8 @@
 	.buf_size = BUFFER_SAMPLES / 2,
 };
 
-static int parse_config(int reload)
-{
-	struct ast_variable *var;
-	struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
-	struct ast_config *cfg = ast_config_load("codecs.conf", config_flags);
-
-	if (cfg == CONFIG_STATUS_FILEMISSING || cfg == CONFIG_STATUS_FILEUNCHANGED || cfg == CONFIG_STATUS_FILEINVALID)
-		return 0;
-	for (var = ast_variable_browse(cfg, "plc"); var; var = var->next) {
-		if (!strcasecmp(var->name, "genericplc")) {
-			g726tolin.useplc = ast_true(var->value) ? 1 : 0;
-			ast_verb(3, "codec_g726: %susing generic PLC\n",
-					g726tolin.useplc ? "" : "not ");
-		}
-	}
-	ast_config_destroy(cfg);
-	return 0;
-}
-
 static int reload(void)
 {
-	if (parse_config(1))
-		return AST_MODULE_LOAD_DECLINE;
 	return AST_MODULE_LOAD_SUCCESS;
 }
 
@@ -861,10 +838,6 @@
 static int load_module(void)
 {
 	int res = 0;
-
-
-	if (parse_config(0))
-		return AST_MODULE_LOAD_DECLINE;
 
 	res |= ast_register_translator(&g726tolin);
 	res |= ast_register_translator(&lintog726);

Modified: branches/1.6.2/codecs/codec_gsm.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.6.2/codecs/codec_gsm.c?view=diff&rev=267507&r1=267506&r2=267507
==============================================================================
--- branches/1.6.2/codecs/codec_gsm.c (original)
+++ branches/1.6.2/codecs/codec_gsm.c Thu Jun  3 12:21:06 2010
@@ -177,7 +177,6 @@
 	.buffer_samples = BUFFER_SAMPLES,
 	.buf_size = BUFFER_SAMPLES * 2,
 	.desc_size = sizeof (struct gsm_translator_pvt ),
-	.plc_samples = GSM_SAMPLES,
 };
 
 static struct ast_translator lintogsm = {
@@ -193,30 +192,9 @@
 	.buf_size = (BUFFER_SAMPLES * GSM_FRAME_LEN + GSM_SAMPLES - 1)/GSM_SAMPLES,
 };
 
-
-static int parse_config(int reload)
-{
-	struct ast_variable *var;
-	struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
-	struct ast_config *cfg = ast_config_load("codecs.conf", config_flags);
-	if (cfg == CONFIG_STATUS_FILEMISSING || cfg == CONFIG_STATUS_FILEUNCHANGED || cfg == CONFIG_STATUS_FILEINVALID)
-		return 0;
-	for (var = ast_variable_browse(cfg, "plc"); var; var = var->next) {
-	       if (!strcasecmp(var->name, "genericplc")) {
-		       gsmtolin.useplc = ast_true(var->value) ? 1 : 0;
-			   ast_verb(3, "codec_gsm: %susing generic PLC\n", gsmtolin.useplc ? "" : "not ");
-	       }
-	}
-	ast_config_destroy(cfg);
-	return 0;
-}
-
 /*! \brief standard module glue */
 static int reload(void)
 {
-	if (parse_config(1)) {
-		return AST_MODULE_LOAD_DECLINE;
-	}
 	return AST_MODULE_LOAD_SUCCESS;
 }
 
@@ -235,8 +213,6 @@
 {
 	int res;
 
-	if (parse_config(0))
-		return AST_MODULE_LOAD_DECLINE;
 	res = ast_register_translator(&gsmtolin);
 	if (!res) 
 		res=ast_register_translator(&lintogsm);

Modified: branches/1.6.2/codecs/codec_lpc10.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.6.2/codecs/codec_lpc10.c?view=diff&rev=267507&r1=267506&r2=267507
==============================================================================
--- branches/1.6.2/codecs/codec_lpc10.c (original)
+++ branches/1.6.2/codecs/codec_lpc10.c Thu Jun  3 12:21:06 2010
@@ -201,7 +201,6 @@
 	.sample = lpc10_sample,
 	.desc_size = sizeof(struct lpc10_coder_pvt),
 	.buffer_samples = BUFFER_SAMPLES,
-	.plc_samples = LPC10_SAMPLES_PER_FRAME,
 	.buf_size = BUFFER_SAMPLES * 2,
 };
 
@@ -219,28 +218,8 @@
 	.buf_size = LPC10_BYTES_IN_COMPRESSED_FRAME * (1 + BUFFER_SAMPLES / LPC10_SAMPLES_PER_FRAME),
 };
 
-static int parse_config(int reload)
-{
-	struct ast_variable *var;
-	struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
-	struct ast_config *cfg = ast_config_load("codecs.conf", config_flags);
-	if (cfg == CONFIG_STATUS_FILEMISSING || cfg == CONFIG_STATUS_FILEUNCHANGED || cfg == CONFIG_STATUS_FILEINVALID)
-		return 0;
-	for (var = ast_variable_browse(cfg, "plc"); var; var = var->next) {
-		if (!strcasecmp(var->name, "genericplc")) {
-			lpc10tolin.useplc = ast_true(var->value) ? 1 : 0;
-			ast_verb(3, "codec_lpc10: %susing generic PLC\n",
-					lpc10tolin.useplc ? "" : "not ");
-		}
-	}
-	ast_config_destroy(cfg);
-	return 0;
-}
-
 static int reload(void)
 {
-	if (parse_config(1))
-		return AST_MODULE_LOAD_DECLINE;
 	return AST_MODULE_LOAD_SUCCESS;
 }
 
@@ -259,8 +238,6 @@
 {
 	int res;
 
-	if (parse_config(0))
-		return AST_MODULE_LOAD_DECLINE;
 	res = ast_register_translator(&lpc10tolin);
 	if (!res) 
 		res = ast_register_translator(&lintolpc10);

Modified: branches/1.6.2/codecs/codec_ulaw.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.6.2/codecs/codec_ulaw.c?view=diff&rev=267507&r1=267506&r2=267507
==============================================================================
--- branches/1.6.2/codecs/codec_ulaw.c (original)
+++ branches/1.6.2/codecs/codec_ulaw.c Thu Jun  3 12:21:06 2010
@@ -84,7 +84,6 @@
 	.sample = ulaw_sample,
 	.buffer_samples = BUFFER_SAMPLES,
 	.buf_size = BUFFER_SAMPLES * 2,
-	.plc_samples = 160,
 };
 
 /*!
@@ -101,27 +100,8 @@
 	.buffer_samples = BUFFER_SAMPLES,
 };
 
-static int parse_config(int reload)
-{
-	struct ast_variable *var;
-	struct ast_flags config_flags = { reload ? CONFIG_FLAG_FILEUNCHANGED : 0 };
-	struct ast_config *cfg = ast_config_load("codecs.conf", config_flags);
-	if (cfg == CONFIG_STATUS_FILEMISSING || cfg == CONFIG_STATUS_FILEUNCHANGED || cfg == CONFIG_STATUS_FILEINVALID)
-		return 0;
-	for (var = ast_variable_browse(cfg, "plc"); var; var = var->next) {
-		if (!strcasecmp(var->name, "genericplc")) {
-			ulawtolin.useplc = ast_true(var->value) ? 1 : 0;
-			ast_verb(3, "codec_ulaw: %susing generic PLC\n", ulawtolin.useplc ? "" : "not ");
-		}
-	}
-	ast_config_destroy(cfg);
-	return 0;
-}
-
 static int reload(void)
 {
-	if (parse_config(1))
-		return AST_MODULE_LOAD_DECLINE;
 	return AST_MODULE_LOAD_SUCCESS;
 }
 
@@ -139,8 +119,6 @@
 {
 	int res;
 
-	if (parse_config(0))
-		return AST_MODULE_LOAD_DECLINE;
 	res = ast_register_translator(&ulawtolin);
 	if (!res)
 		res = ast_register_translator(&lintoulaw);

Modified: branches/1.6.2/include/asterisk/translate.h
URL: http://svnview.digium.com/svn/asterisk/branches/1.6.2/include/asterisk/translate.h?view=diff&rev=267507&r1=267506&r2=267507
==============================================================================
--- branches/1.6.2/include/asterisk/translate.h (original)
+++ branches/1.6.2/include/asterisk/translate.h Thu Jun  3 12:21:06 2010
@@ -104,10 +104,8 @@
 	 */
 	int buf_size;
 
-	int desc_size;			/*!< size of private descriptor in pvt->pvt, if any */
-	int plc_samples;		/*!< set to the plc block size if used, 0 otherwise */
-	int useplc;			/*!< current status of plc, changed at runtime */
-	int native_plc;			/*!< true if the translator can do native plc */
+	int desc_size;                         /*!< size of private descriptor in pvt->pvt, if any */
+	int native_plc;                        /*!< true if the translator can do native plc */
 
 	struct ast_module *module;	/* opaque reference to the parent module */
 

Modified: branches/1.6.2/main/translate.c
URL: http://svnview.digium.com/svn/asterisk/branches/1.6.2/main/translate.c?view=diff&rev=267507&r1=267506&r2=267507
==============================================================================
--- branches/1.6.2/main/translate.c (original)
+++ branches/1.6.2/main/translate.c Thu Jun  3 12:21:06 2010
@@ -88,22 +88,19 @@
 
 /*!
  * \brief Allocate the descriptor, required outbuf space,
- * and possibly also plc and desc.
+ * and possibly desc.
  */
 static void *newpvt(struct ast_translator *t)
 {
 	struct ast_trans_pvt *pvt;
 	int len;
-	int useplc = t->plc_samples > 0 && t->useplc;	/* cache, because it can change on the fly */
 	char *ofs;
 
 	/*
 	 * compute the required size adding private descriptor,
-	 * plc, buffer, AST_FRIENDLY_OFFSET.
+	 * buffer, AST_FRIENDLY_OFFSET.
 	 */
 	len = sizeof(*pvt) + t->desc_size;
-	if (useplc)
-		len += sizeof(plc_state_t);
 	if (t->buf_size)
 		len += AST_FRIENDLY_OFFSET + t->buf_size;
 	pvt = ast_calloc(1, len);
@@ -115,10 +112,6 @@
 		pvt->pvt = ofs;
 		ofs += t->desc_size;
 	}
-	if (useplc) {			/* then plc state */
-		pvt->plc = (plc_state_t *)ofs;
-		ofs += sizeof(plc_state_t);
-	}
 	if (t->buf_size)		/* finally buffer and header */
 		pvt->outbuf.c = ofs + AST_FRIENDLY_OFFSET;
 	/* call local init routine, if present */
@@ -151,10 +144,9 @@
 	ast_module_unref(t->module);
 }
 
-/*! \brief framein wrapper, deals with plc and bound checks.  */
+/*! \brief framein wrapper, deals with bound checks.  */
 static int framein(struct ast_trans_pvt *pvt, struct ast_frame *f)
 {
-	int16_t *dst = pvt->outbuf.i16;
 	int ret;
 	int samples = pvt->samples;	/* initial value */
 	
@@ -168,18 +160,8 @@
 		ast_log(LOG_WARNING, "no samples for %s\n", pvt->t->name);
 	}
 	if (pvt->t->buffer_samples) {	/* do not pass empty frames to callback */
-		if (f->datalen == 0) { /* perform PLC with nominal framesize of 20ms/160 samples */
-			if (pvt->plc) {
-				int l = pvt->t->plc_samples;
-				if (pvt->samples + l > pvt->t->buffer_samples) {
-					ast_log(LOG_WARNING, "Out of buffer space\n");
-					return -1;
-				}
-				l = plc_fillin(pvt->plc, dst + pvt->samples, l);
-				pvt->samples += l;
-				pvt->datalen = pvt->samples * 2;	/* SLIN has 2bytes for 1sample */
-			}
-			/* We don't want generic PLC. If the codec has native PLC, then do that */
+		if (f->datalen == 0) { /* perform native PLC if available */
+			/* If the codec has native PLC, then do that */
 			if (!pvt->t->native_plc)
 				return 0;
 		}
@@ -192,13 +174,6 @@
 	 * it otherwise.
 	 */
 	ret = pvt->t->framein(pvt, f);
-	/* possibly store data for plc */
-	if (!ret && pvt->plc) {
-		int l = pvt->t->plc_samples;
-		if (pvt->samples < l)
-			l = pvt->samples;
-		plc_rx(pvt->plc, dst + pvt->samples - l, l);
-	}
 	/* diagnostic ... */
 	if (pvt->samples == samples)
 		ast_log(LOG_WARNING, "%s did not update samples %d\n",
@@ -644,16 +619,7 @@
 		ast_log(LOG_WARNING, "Invalid translator path: (%s codec is not valid)\n", t->srcfmt == -1 ? "starting" : "ending");
 		return -1;
 	}
-	if (t->plc_samples) {
-		if (t->buffer_samples < t->plc_samples) {
-			ast_log(LOG_WARNING, "plc_samples %d buffer_samples %d\n",
-				t->plc_samples, t->buffer_samples);
-			return -1;
-		}
-		if (t->dstfmt != powerof(AST_FORMAT_SLINEAR))
-			ast_log(LOG_WARNING, "plc_samples %d format %x\n",
-				t->plc_samples, t->dstfmt);
-	}
+
 	if (t->srcfmt >= MAX_FORMAT) {
 		ast_log(LOG_WARNING, "Source format %s is larger than MAX_FORMAT\n", ast_getformatname(t->srcfmt));
 		return -1;




More information about the asterisk-commits mailing list