Codec Support and Restrictions

This chapter provides advanced information about the support of and restrictions for using certain codecs with CUBE. For basic information on how to configure codecs, refer to the Introduction to Codecs section.

Feature Information for Codec Support on CUBE

The following table provides release information about the feature or features described in this module. This table lists only the software release that introduced support for a given feature in a given software release train. Unless noted otherwise, subsequent releases of that software release train also support that feature.

Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Table 1. Feature Information for Codec Support on CUBE

Feature Name

Releases

Feature Information

Opus Codec Support

Cisco IOS XE Amsterdam 17.3.1a

Opus audio codec support on CUBE was introduced.

The following commands were introduced or modified as part of Opus codec feature:

  • codec opus [profile tag]

  • codec profile tag profile

  • codec preference value codec-type [profile profile-tag]

  • rtp payload-type opus payload-type-number

AAC-LD MP4A-LATM Codec Support

15.4(1)T

Cisco IOS XE Release 3.12S

AAC-LD MP4A-LATM Codec Support on CUBE was introduced. The AAC-LD MP4A-LATM codec is a wideband audio codec that is used by video endpoints. MP4A-LATM is an MPEG4 audio coding standard, where LATM is Low-Overhead MPEG-4 Audio Transport Multiplex. The Cisco Unified Border Element (Cisco UBE) supports MP4A-LATM to enable call flows involving endpoints that use this codec, especially for media recording.

The following commands were introduced or modified: codec mp4a-latm , codec preference tag mp4a-latm .

ISAC Codec Support

15.1(1)T

The ISAC Codec Support on CUBE was introduced.

The following commands were introduced by this feature: codec isac , codec preference tag isac .

OPUS Codec Support on CUBE

The Opus interactive speech and audio codec is designed to handle a wide range of interactive audio applications. This includes VoIP, video conferencing, and in-game chat. The OPUS codec also supports live, distributed music performances. It scales from low bit rate narrowband speech at 6 kbps to high-quality stereo music at 510 kbps. Opus uses both Linear Prediction (LP) and Modified Discrete Cosine Transform (MDCT) algorithms to achieve good compression of both speech and music.


Note


Opus codec is only supported for SIP-SIP call scenarios. It is not supported for TDM-SIP or Analog-SIP flows.


Design Recommendations for Opus Codec

The VoIP dial peer and voice class codec options are enhanced to offer Opus codec support on CUBE:

  • codec opus profile tag —The CLI command under dial-peer configuration mode is enhanced:

    router(config)#dial-peer voice 3002 voip
    router(config-dial-peer)#codec opus profile 2
  • codec profile tag profile —The CLI command configured under global configuration mode is enhanced to configure opus as a supported codec:

    router(config)#codec profile 2 opus
    router(conf-codec-profile)#fmtp "fmtp:114 maxplaybackrate=16000;
    sprop-maxcapturerate=16000; maxaveragebitrate=20000; stereo=1; sprop-stereo=0;
    useinbandfec=0; usedtx=0"
    router(conf-codec-profile)#exit
  • codec preference value codec-type [ profileprofile tag] —The CLI command configured under voice class configuration mode is enhanced to configure opus as a preferred codec on the dial-peer:

    router(config)#voice class codec 80
    router(config-class)#codec preference 1 opus profile 79
    router(config-class)#exit
  • rtp payload-type [opus number] —The CLI command configured under dial-peer configuration mode is enhanced to configure opus as a supported payload type:

    router(config)#dial-peer voice 604 voip
    router(config-dial-peer)#rtp payload-type opus 126
    • The default payload-type for opus is set to 114.

    • The default payload-type for cisco-codec-aacld is set to 112.

  • It is not mandatory that you configure a codec profile for Opus. For delayed offer to early offer flows, a codec profile must be used to configure an fmtp value for the initial invite.

  • The CLI command show call active voice [brief | compact] is modified to include details on Opus codec in the command output.

  • The CLI command show sip-ua calls is modified to include details on Opus codec in the command output.

  • Calls that require Opus codec transcoding as part of the Offer-Answer exchange are disconnected.

  • Opus Codec is supported for both secure and non-secure calls (RTP-to-RTP, SRTP-to-SRTP, SRTP-to-RTP, and RTP-to-SRTP).

  • Opus supports several clock rates. Only the highest clock rate of 48000 is advertised in the SDP. The following is a sample configuration of SDP for Opus codec:

    m=audio 16000 RTP/AVP 114 a=rtpmap:114 opus/48000/2
  • Opus codec defines the optional media format (fmtp) parameters in a call. CUBE passes through the optional fmtp parameters from one side to other if Opus codec is configured on both sides of the call.

  • The following are the fmtp parameters defined by Opus codec:

    • maxaveragebitrate

    • maxplaybackrate

    • stereo

    • useinbandfec

    • usedtx

    • sprop-maxcapturerate

    • sprop-stereo

  • Dynamic payload interworking is enabled by default on CUBE. Configure asymmetric payload [full] if CUBE is not required to handle payload interworking. In this scenario, interworking is handled at the endpoints handling the media.

Restrictions for Opus Codec Support on CUBE

  • Media recording is not supported with Extended Media Forking (XMF).

  • CUBE does not support processing of multiple fmtp lines. If the received SDP has multiple fmtp lines, then only the first fmtp line is passed in the outbound INVITE.

ISAC Codec Support on CUBE

The iSAC codec is an adaptive VoIP codec specially designed to deliver wideband sound quality in both low- and high-bit rate applications. The iSAC codec automatically adjusts the bit-rate for the best quality or a fixed bit rate can be used if the network characteristics are known. This codec is designed for wideband VoIP communications. The iSAC codec offers better quality with reduced bandwidth for sideband applications.

Restrictions for ISAC Codec Support on CUBE

  • Low complexity is not supported for the iSAC codec.

AAC-LD MP4A-LATM Codec Support on Cisco UBE

As part of this feature, Cisco UBE supports the following:

  • Accept and send MP4A-LATM codec and corresponding FMTP profiles
  • Configure MP4A-LATM under dial-peer or under voice-class codec as preferred codec
  • Pass across real-time transport protocol (RTP) media for MP4A-LATM codec without any interworking
  • Offer pre-configured FMTP profile for MP4A-LATM for DO-EO (Delayed-Offer to Early-Offer) calls
  • Offer more than one FMTP profile (each with different payload type number) as mentioned by the offering endpoint, so that the answering endpoint can choose the best option.
  • Offer only one instance of MP4A-LATM if media forking is applicable. The offered instance is the first one received in the offer.
  • Calculate bandwidth for MP4A-LATM on the basis of either “b=TIAS” attribute or “bitrate” parameter in the FMTP attribute. If none of them are present in the session description protocol (SDP), the default maximum bandwidth, that is, 128 Kbps will be used for calculation.
  • The following Cisco UBE features are supported with the MP4A-LATM codec:
    • Basic call (audio and video) flow-around and flow-through (FA and FT).
    • Voice Class Codec support in Cisco UBE with codec filtering
    • SRTP and SRCTP passthrough for SIP-to-SIP calls
    • Supplementary services
    • RSVP
    • Dynamic payload type interworking for DTMF and codec packets for SIP-to-SIP calls
    • Media Anti-Trombone with SIP signaling control on CUBE
    • Support for SIP UPDATE message per RFC 3311
    • RTP Media Loopback
    • Media forking for IP based calls using Zephyr recording server
    • Cisco UBE Mid-call Re-INVITE consumption
    • Signaling forking (Fastweb multile SIP Early Dialog Support, FA and FT)
    • Maximum bandwidth-based CAC
    • Media Policing
    • Box-to-Box High Availability (B2B HA)
    • Inbox High Availability (Inbox HA)

Restrictions for AAC-LD MP4A-LATM Codec Support on Cisco UBE

Cisco UBE does not support the following:

  • Codec transcoding between MP4A-LATM and other codecs
  • Dual-tone Multifrequency (DTMF) interworking with MP4A-LATM codec
  • Non-SIP-SIP, that is, SIP to other service provider interface (SPI) interworking with MP4A-LATM codec