diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index e17745a0999f84f678fa8a925f1b3e6abaa0e7c5..ac72c112dac30402bdd712217ceb80b292ddfa56 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -3069,6 +3069,7 @@ static int create_addr_from_peer(struct sip_pvt *dialog, struct sip_peer *peer)
 		dialog->noncodeccapability |= AST_RTP_DTMF;
 	else
 		dialog->noncodeccapability &= ~AST_RTP_DTMF;
+	dialog->jointnoncodeccapability = dialog->noncodeccapability;
 	ast_string_field_set(dialog, context, peer->context);
 	dialog->rtptimeout = peer->rtptimeout;
 	if (peer->call_limit)