[Freeswitch-trunk] [commit] r13871 - freeswitch/trunk/src/mod/asr_tts/mod_unimrcp

FreeSWITCH SVN crienzo at freeswitch.org
Fri Jun 19 11:51:01 PDT 2009


Author: crienzo
Date: Fri Jun 19 13:51:01 2009
New Revision: 13871

Log:
Add support for host byte ordered L16 from UniMRCP.  We need UniMRCP r995 now

Modified:
   freeswitch/trunk/src/mod/asr_tts/mod_unimrcp/mod_unimrcp.c

Modified: freeswitch/trunk/src/mod/asr_tts/mod_unimrcp/mod_unimrcp.c
==============================================================================
--- freeswitch/trunk/src/mod/asr_tts/mod_unimrcp/mod_unimrcp.c	(original)
+++ freeswitch/trunk/src/mod/asr_tts/mod_unimrcp/mod_unimrcp.c	Fri Jun 19 13:51:01 2009
@@ -790,15 +790,18 @@
 	codec->channel_count = 1;
 	codec->payload_type = 96;
 	codec->sampling_rate = schannel->rate;
-	apt_string_set(&codec->name, schannel->codec);
+	if (!strcmp(schannel->codec, "L16")) {
+		/* "LPCM" is UniMRCP's name for L16 host byte ordered */
+		apt_string_set(&codec->name, "LPCM");
+	} else {
+		apt_string_set(&codec->name, schannel->codec);
+	}
 	/* see RFC 1890 for payload types */
 	if (!strcmp(schannel->codec, "PCMU") && schannel->rate == 8000) {
 		codec->payload_type = 0;
 	} else if (!strcmp(schannel->codec, "PCMA") && schannel->rate == 8000) {
 		codec->payload_type = 8;
-	} else if (!strcmp(schannel->codec, "L16") && schannel->rate == 44100) {
-		codec->payload_type = 11;
-	}
+	} 
 	switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "(%s) requesting codec %s/%d/%d\n", schannel->name, schannel->codec, codec->payload_type, codec->sampling_rate);
 	if(schannel->type == SPEECH_CHANNEL_SYNTHESIZER) {
 		termination = mrcp_application_sink_termination_create(schannel->unimrcp_session, &schannel->application->audio_stream_vtable, codec, schannel);



More information about the Freeswitch-trunk mailing list