diff -urN asterisk-1.6.1.11/channels/chan_sip.c asterisk-1.6.1.11-constantssrc/channels/chan_sip.c --- asterisk-1.6.1.11/channels/chan_sip.c 2009-11-30 15:51:28.000000000 -0500 +++ asterisk-1.6.1.11-constantssrc/channels/chan_sip.c 2009-12-03 21:20:39.000000000 -0500 @@ -6766,6 +6766,10 @@ ast_rtp_set_rtptimeout(p->rtp, global_rtptimeout); ast_rtp_set_rtpholdtimeout(p->rtp, global_rtpholdtimeout); ast_rtp_set_rtpkeepalive(p->rtp, global_rtpkeepalive); + if (ast_test_flag(&p->flags[1], SIP_PAGE2_CONSTANT_SSRC)) { + ast_rtp_set_constantssrc(p->rtp); + } + if (p->vrtp) { ast_rtp_setqos(p->vrtp, global_tos_video, global_cos_video, "SIP VRTP"); ast_rtp_setdtmf(p->vrtp, 0); @@ -6773,6 +6777,9 @@ ast_rtp_set_rtptimeout(p->vrtp, global_rtptimeout); ast_rtp_set_rtpholdtimeout(p->vrtp, global_rtpholdtimeout); ast_rtp_set_rtpkeepalive(p->vrtp, global_rtpkeepalive); + if (ast_test_flag(&p->flags[1], SIP_PAGE2_CONSTANT_SSRC)) { + ast_rtp_set_constantssrc(p->vrtp); + } } if (p->trtp) { ast_rtp_setqos(p->trtp, global_tos_text, global_cos_text, "SIP TRTP"); @@ -18987,14 +18994,6 @@ ast_debug(1, "No compatible codecs for this SIP call.\n"); return -1; } - if (ast_test_flag(&p->flags[1], SIP_PAGE2_CONSTANT_SSRC)) { - if (p->rtp) { - ast_rtp_set_constantssrc(p->rtp); - } - if (p->vrtp) { - ast_rtp_set_constantssrc(p->vrtp); - } - } } else { /* No SDP in invite, call control session */ p->jointcapability = p->capability; ast_debug(2, "No SDP in Invite, third party call control\n");