Codec Policy Configuration

When configuring transcoding, you must create a codec policy and associate the policy to a realm.

In the codec policy, you specify:

  • Which codecs to allow and which codecs to deny within a realm.
  • Which codecs to add to the SDP m= lines for an egress realm.
  • The preferred order of codecs shown in an SDP m= line.
  • The packetization time to enforce within a realm for transrating.

ACLI Configuration Instructions

The parameters that you can configure are name, allow-codecs, add-codecs-on-egress, order-codecs, and ptime. The following section provides brief explanations of how these parameters work, and how you configure each of them.

Note:

A single codec policy can be reused for any number of realms.

To access the configuration parameters for codec policies:

  1. In Superuser mode, type configure terminal and press Enter.
    ORACLE# configure terminal
  2. Type media-manager and press Enter.
    ORACLE(configure)# media-manager
  3. Type codec-policy and press Enter.
    ORACLE(media-manager)# codec-policy

    From this point, you can start configuring your codec policy.

Naming Codec Policies

The codec policy’s name is important not only because it uniquely identifies the policy, but because it is the name you will enter into your realm configuration’s codec-policy parameter. It is important to apply the correct policy to the appropriate realm.

To set the codec policy’s name:

  1. name—Set the name for this codec policy, and note it for future reference when you apply codec policies to realms. This parameter is required, and has no default.
    ORACLE(codec-policy)# name private

Removing Allowing and Adding Codecs

The Oracle® Enterprise Session Border Controller removes and allows codecs using the allow-codecs parameter. Refer to the Codec Policy Definition section of this chapter for configuration information.

  • allow-codecs—The allow-codecs parameter takes a list of codecs that you want to pass through the Oracle® Enterprise Session Border Controller and can explicitly allow them to remain in the SDP for the next step; codecs not matching the items on this list are removed. This parameter is required.
  • add-codecs-on-egress—The add-codecs-on-egress parameter sets the codecs that the Oracle® Enterprise Session Border Controller adds to an offer if that codec is not already there. This parameter applies only to the egress policy.

    For allow-codecs, order-codecs, and add codecs to codec policies:

You can configure and edit these two transcoding parameters as ACLI lists, meaning that there are add and delete commands associated with each. You type the name of the parameter, choose the operation you want to perform on the list (adding or deleting), and then specify the data that you want to add or remove.

The examples in the procedure that follows show you how to add to the lists you are configuring. To remove items from the allow-codecs list, simply replace the add command you see in these example with delete and the items you want to remove.

If you want to overwrite previous values, you can enter the command, a Space and the items in the list enclosed in quotes (“).

  1. allow-codecs—Enter a list of codecs that are allowed to pass through the Oracle® Enterprise Session Border Controller. Use the syntax in the Transcodable Codecs section of this chapter. To allow all codecs, enter an asterisk (*).
    ORACLE(codec-policy)# allow-codecs *

    When multiple items are added, enclose them in quotes. For example:

    ORACLE(codec-policy)# allow-codecs G729 G711 AMR
  2. add-codecs-on-egress—Enter the codecs that you want added to the SDP offer for the egress codec policy. If you leave this parameter blank, then the Oracle® Enterprise Session Border Controller will not add codecs to the SDP answer. This parameter cannot be wildcarded; other possible value are listed in the Transcodable Codecs section of this chapter.
    ORACLE(codec-policy)# add-codecs-on-egress G729

    If you need to modify the list of configured codecs, you must enter the complete list at once.

Ordering Codecs

Codec policy can specify the order that codecs appear in the SDP offer or answer.

To configure an order which codecs appear in the offer:

  1. order-codecs—Enter the order in which you want codecs to appear in the SDP offer or answer. You can enter them in any of the ways described in the preceding explanation.
    ORACLE(codec-policy)# order-codecs G711 * G729

Transrating Configuration

The following procedure explains how to configure transrating for a codec policy. This codec policy must be applied as an egress codec policy.

To configure forced ptime for a codec policy:

  1. In Superuser mode, type configure terminal and press Enter.
    ORACLE# configure terminal
  2. Type media-manager and press Enter.
    ORACLE(configure)# media-manager
    ORACLE(media-manager)#
  3. Type network-parameters and press Enter.
    ORACLE(media-manager)# codec-policy
    ORACLE(codec-policy)#
  4. If you are adding support for this feature to a pre-existing configuration, then you must select the specific configuration instance, using the ACLI select command.
    ORACLE(codec-policy)# select 1

    You can now configure forced ptime.

  5. force-ptime—Set this parameter to enabled to enable forced ptime for this codec policy.
  6. packetization-time—Enter the ptime in ms to use in the realm where this codec policy is active. Valid values are 10, 20, 30, 40, 50, 60, 70, 80, 90 ms. The default value is 20 ms.
  7. Save your work using the ACLI done command.

Applying a Codec Policy to a Realm

Once you have configured a codec policy, you apply it to a realm by configuration name.

To apply a codec policy to a realm:

  1. In Superuser mode, type configure terminal and press Enter.
    ORACLE# configure terminal
  2. Type media-manager and press Enter.
    ORACLE(configure)# media-manager
  3. Type realm-config and press Enter.
    ORACLE(media-manager)# realm-config
  4. codec-policy—Enter the name of the codec policy that you want to apply to this realm. This value is the same as the one you entered in the name parameter for the codec policy you want to use for this realm. There is no default for this parameter.
    ORACLE(realm-config)# codec-policy private

Secure DTMF Cancellation

For security and privacy reasons, you can remove all Dual-Tone Multi-Frequency (DTMF) information that the Oracle® Enterprise Session Border Controller (E-SBC) processes by enabling secure-dtmf-cancellation within the codec-policy. For example, you might want to cancel all DTMF tones when processing credit card numbers, debit card numbers, PIN numbers, and other DTMF-based passwords that you want to remove from the media stream. When an incoming call requires DTMF cancellation, the E-SBC uses the built-in detection and cancellation mechanism to completely remove all sixteen DTMF tones on ingress making the tones undetectable on egress. (0-9, *, #, A,B,C,D)

In contrast to standard DTMF cancellation, which leaves some residual signal energy at the beginning and ending of each DTMF digit, secure-dtmf-cancellation removes all signal energy from the media stream by adding an extra 10μs to the leading and trailing edges of the DTMF tones. The result is silence for the entire duration of each DTMF digit because the system mutes all audio when you suppress DTMF tones with secure-dtmf-cancellation.

The E-SBC supports secure DTMF cancellation for all use cases and call scenarios that include in-band DTMF detection, such as DTMF in-band to SIP-INFO, DTMF in-band to RFC2833, and DTMF in-band to None. Oracle recommends that you use the following preferred codecs to ensure reliable in-band DTMF detection on ingress:
  • PCMU
  • PCMA
  • G.726-32 (and higher)
  • G.722

Secure DTMF cancellation supports hardware transcoding only. You must own the transcoding license and you need transcoding resources, such as a Digital Signal Processor (DSP). In addition to enabling secure-dtmf-cancellation in the codec policy, you must enable dtmf-in-audio in the codec policy. You can enable secure-dtmf-cancellation and dtmf-in-audio in the ACLI and the Web GUI.

Note:

An endpoint configured as secure at the session startup stays in the secure mode throughout the call because you cannot re-configure the DTMF cancellation mode during the call.

Enable Secure DTMF Cancellation

When you want to completely remove all traces of Dual-Tone Multi-Frequency (DTMF) information that the Oracle® Enterprise Session Border Controller (E-SBC) processes, enable secure-dtmf-cancellation to make the DTMF tones undetectable.

Secure-dtmf-cancellation requires that you also enable dtmf-in-audio. If dtmf-in-audio is not already enabled, you can enable both attributes in the following procedure.

  1. Access the codec-policy configuration element.
    ORACLE# configure terminal
    ORACLE(configure)# media-manager
    ORACLE(media-manager)# codec-policy
    ORACLE(codec-policy)# select
  2. Select the codec-policy object to edit.
    ORACLE(codec-policy)# select
    <name>:
    1:  name=cp1
    2:  name=cp2
    
    selection: 2
    ORACLE(codec-policy)#
  3. Do the following:
    • dtmf-in-audio—Type enabled.
    • secure-dtmf-cancellation—Type enabled.
  4. Type done to save your configuration.