Revision
17031
Author
mikej
Date
2010-03-17 11:50:59 -0500 (Wed, 17 Mar 2010)

Log Message

fix inherit_codec with video

Modified Paths

Diff

Modified: freeswitch/trunk/src/switch_ivr_originate.c (17030 => 17031)


--- freeswitch/trunk/src/switch_ivr_originate.c	2010-03-17 16:42:38 UTC (rev 17030)
+++ freeswitch/trunk/src/switch_ivr_originate.c	2010-03-17 16:50:59 UTC (rev 17031)
@@ -674,11 +674,19 @@
 		const char *var = switch_channel_get_variable(caller_channel, "inherit_codec");
 		if (switch_true(var)) {
 			switch_codec_implementation_t impl = { 0 };
+			switch_codec_implementation_t video_impl = { 0 };
 			char tmp[128] = "";
 
 
 			if (switch_core_session_get_read_impl(originate_status[pindex].peer_session, &impl) == SWITCH_STATUS_SUCCESS) {
-				switch_snprintf(tmp, sizeof(tmp), "%s@%uh@%ui", impl.iananame, impl.samples_per_second, impl.microseconds_per_packet / 1000);
+				if (switch_core_session_get_video_read_impl(originate_status[pindex].peer_session, &impl) == SWITCH_STATUS_SUCCESS) {
+					switch_snprintf(tmp, sizeof(tmp), "%s@%uh@%ui,%s",
+									impl.iananame, impl.samples_per_second, impl.microseconds_per_packet / 1000,
+									video_impl.iananame);
+				} else {
+					switch_snprintf(tmp, sizeof(tmp), "%s@%uh@%ui",
+									impl.iananame, impl.samples_per_second, impl.microseconds_per_packet / 1000);
+				}
 				switch_channel_set_variable(caller_channel, "absolute_codec_string", tmp);
 				switch_log_printf(SWITCH_CHANNEL_CHANNEL_LOG(caller_channel), SWITCH_LOG_DEBUG, "Setting codec string on %s to %s\n",
 								  switch_channel_get_name(caller_channel), tmp);