Tek-Snippet: Removing Video SDP from SIP

Some of you may have come across a situation, where you subscribe to a SIP Service from an ITSP, but you find that all calls inbound are working as expected but some phones can make outbound and others cannot. You then narrow the situation down to only phones with SIP firmware seem to be the issue. You load up your favorite terminal editor and head into your Voice Gateway.

debug ccsip messages

You quickly notice that your calls which are failing have a far longer SDP message attached with the SIP INVITE (typically ITSP’s require Early Offer). You also notice that the reason for the SDP being substantially longer is because it is offering video as well. To further troubleshoot you go into the phone configuration for a trouble phone on Call Manager, and set “Video Capabilities” to Disabled. Sure enough your calls are now connecting.

There are 3 ways you can remedy this.

  • Disable Video Capabilities as you had in the troubleshooting step, this however would be undesired. You basically bought a video phone, and can no longer use video.

  • Perform a SIP Normalization on your CUBE router that interfaces with the ITSP. First you will want to create a new sip-profile illustrated below, the purpose of which is to remove video attributes from the SIP Invite.

voice class sip-profiles 1
request INVITE sdp-header Video-Attribute remove
request INVITE sdp-header Video-Media modify "m=video(.*)" ""
request INVITE sdp-header Video-Bandwidth-Info remove

You then want to apply this to the dial-peer(s) that are used for the call leg to the ITSP as seen below.

dial-peer voice 1 voip
voice-class sip profiles 1

Once in place you should be able make internal video calls, and all video enabled SIP phones will now be able to make outbound calls.

  • Change the bandwidth between regions for video calls to “None”. This could be either the simplest or most complicated fix, depending on how you have your Device Pools setup. In my situation a Voice Gateway will be assigned to the same Device Pool as the Phones of the same site. This would mean that you would not have the option to set your video call bandwidth to none as this option is only available between dissimilar regions. In this case you would have to make a new Device Pool and Region specifically for the Voice Gateway and apply it to your SIP Trunk. Once complete you now have dissimilar Regions and can set the video bandwidth to none by setting the Phone Region’s relationship with the Voice Gateway to have No video bandwidth.

Leave a Reply