Default Media Profiles
The Oracle® Enterprise Session Border Controller contains a set of default media profiles that define characteristics of well-known IANA codecs. You can not view the default media profiles' configurations, but you can override them by configuring identically-named media profile configuration elements.
Transcodable codecs are a subset of the default media profiles which the Oracle® Enterprise Session Border Controller can transcode between.
Preferred Default Payload Type
When the Oracle® Enterprise Session Border Controller adds a codec with a dynamic payload type to SDP, it uses the lowest unused payload number. You can configure a preferred payload type for a dynamic codec by creating an override media profile. This makes the Oracle® Enterprise Session Border Controller use your preferred payload type for insertion into SDP. If you configure a dynamic codec to use a preferred payload type, and that payload type is already in use, the codec will still be inserted into SDP, but with the first available dynamic payload type.
For example, you create a media profile for telephone-event with a payload type of 101. If telephone-event is added to SDP, and payload type 101 is already in use in the SDP, the Oracle® Enterprise Session Border Controller will use the first available payload type in the 96-127 range when adding telephone-event.
Redefining Codec Packetization Time
You can configure a media profile with a packetization time (ptime) that overrides the codec's default ptime. Transcoding functions look up and use default ptimes when not specified in offered or answered SDP. Default ptime for most audio codecs is 20ms; some however are 30ms. See the Transcodable Codecs list for default values.
To change the default ptime for a codec, you must create a media profile that overwrites the default ptime parameter with your new packetization time. When SDP is received with no 'a= ptime' attribute or when adding the codec to egress SDP, the newly configured ptime is used.
New default ptime for a media profile is entered by typing "ptime=<x>" in the parameters parameter, where <x> is the new default packetization time.
mptime Support for Packet Cable
The SDP specification lacks the ability to specify unique packetization times per codec when more than one codec is listed in an m= line. The ptime attribute is not related to a specific codec but to the entire m= line. When multiple codecs appear on a single m= line, the PacketCable mptime attribute can specify different packetization times for each codec.
The Oracle® Enterprise Session Border Controller adheres to PKT-SP-NCS1.5-I01-050128 and PKT-SP-EC-MGCP-I06-021127 for processing and generating mptime. The mptime line uses an integer to indicate the packetization time for each corresponding codec in the m= line. The dash character, "-", on an mptime line is used for non-packetized codecs, such as CN or telephone-event.
If the Oracle® Enterprise Session Border Controller receives an invalid mptime, it is ignored and removed. If a valid mptime is received in the incoming SDP, its values will be used for packetization times of each corresponding codec and a valid mptime line will be sent in the outgoing SDP.
Valid:
m=audio 10000 RTP/AVP 0 96 8
a=mptime:20 - 30
a=rtpmap:96 telephone-event/8000
Valid: 'ptime' attribute is ignored
m=audio 10000 RTP/AVP 0 8
a=mptime:20 30
a=ptime:30
Invalid: dash cannot be first mptime value
m=audio 10000 RTP/AVP 96 0
a=mptime: - 20
When Oracle® Enterprise Session Border Controller includes an mptime in an outgoing SDP, it will also always add a ptime attribute with the value of the most preferred codec. This is done to increase the interoperability with devices that do not support mptime.
AMR-NB and AMR-WB Specifications
The Oracle® Enterprise Session Border Controller supports Adaptive Multi-Rate Narrow Band & Wide Band codecs. All configurations of this codec, as indicated by SDP, are transcodable except when the following SDP parameters are enabled:
- robust-sorting
- interleaving
When AMR is configured in a codec policy’s add-codecs-on-egress parameter, it is forwarded from the Oracle® Enterprise Session Border Controller with the following default settings:
- 12.2 kbps (AMR-NB)
- 23.85 kbps (AMR-WB)
- RTP/IF1 format
- No redundant packets
- bandwidth efficient default payload
- No CRC frame
- 20ms default ptime
AMR AMR-WB Payload Type Mapping
When the Oracle® Enterprise Session Border Controller connects endpoints that choose AMR with different dynamic payload types but equivalent AMR parameters, payload type remapping can be handled by the local network processor rather than using transcoding resources. In prior releases, the system transcoded all AMR-to-AMR calls or all AMR-WB-to-AMR-WB calls when the Offer/Answer differed only in the assignment of dynamic payload types, or in the values assigned to certain AMR/AMR-WB parameters.
The decision to transcode is based entirely upon a comparison of the SDP Offer presented by the session initiator and the SDP Answer returned by the session responder. Transcoding is NOT REQUIRED when all of the following conditions are met.
- The offer/answer codecs are identical.
- The offer/answer payload formats (specified by the AMR/AMR-WB octet-align parameter) are identical.
- The offer/answer mode-sets (specified by the AMR/AMR-WB mode-set parameter) are identical or intersect.
To use this feature you must create appropriate media profiles (examples given below) and codec policies. You must also enable the audio-payload-type-mapping option in the media-manager-config.
Note:
On a per-call basis, if AMR/AMR-WB payload mapping is invoked, the system can not also perform RFC 2833 to SIP INFO/H.323 UII payload translation. If a call starts with RFC 2833 translation and per a call change AMR/AMR-WB payload mapping, the system prioritizes the AMR/AMR-WB action and ceases RFC 2833 translation.AMR AMR-WB octet-align Parameter
AMR/AMR-WB sessions can be established in either bandwidth-efficient or octet-aligned format. Octet-aligned format increases processing efficiency, and is required for AMR’s robust sorting, interleaving and frame CRC capabilities. With octet-aligned format, all fields in the AMR/AMR-WB header are individually aligned to octet boundaries by the addition of padding bits. With bandwidth-efficient format, only the full payload is octet aligned resulting in the addition of fewer padding bits.
Format usage is specified by the optional AMR/AMR-WB octet-align parameter, which assumes one of two values: 0 (the default), indicating bandwidth-efficient format, or 1 indicating octet-aligned format. In the absence of the octet-align parameter, bandwidth-efficient format is employed.
A mismatch of offer/answer octet-align values requires transcoding as shown in the following table, where N/P indicates the absence of the octet-align parameter.
octet-align
Values
Offer Answer Format Transcoding Required
0 0 bandwidth-efficient No
1 1 octet-aligned No
0 1 mismatch Yes
1 0 mismatch Yes
N/P N/P bandwidth-efficient No
N/P 0 bandwidth-efficient No
N/P 1 mismatch Yes
0 N/P bandwidth-efficient No
1 N/P mismatch Yes
AMR AMR-WB mode-set Parameter
AMR/AMR-WB codecs support 8 standard encoding modes as shown in the following table.
Frame Content Mode Indicator Frame Content
AMR 4.75 kbit/sec 0 AMR-WB 6.60 kbit/sec
AMR 5.15 kbit/sec 1 AMR-WB 8.85 kbit/sec
AMR 5.90 kbit/sec 2 AMR-WB 12.65 kbit/sec
AMR 6.70 kbit/sec 3 AMR-WB 14.25 kbit/sec
AMR 7.40 kbit/sec 4 AMR-WB 15.85 kbit/sec
AMR 7.95 kbit/sec 5 AMR-WB 18.25 kbit/sec
AMR 10.2 kbit/sec 6 AMR-WB 19.85 kbit/sec
AMR 12.2 kbit/sec 7 AMR-WB 23.05 kbit/sec
The optional AMR/AMR-WB mode-set parameter can be used to restrict the session mode set to a sub-set of the 8 standard modes. If a mode-set is specified, it must be honored, and frames encoded with modes not specified within the sub-set must not be sent in any RTP payload or used in codec mode requests. In the absence of a mode-set parameter, the inclusive mode-set (0,1,2,3,4,5,6,7) provides the default value.
Other AMR AMR-WB Parameters
AMR/AMR-WB support the following additional optional parameters. These parameters are irrelevant in the transcoding decision process. However, they can change the SDP in the answer returned to the session initiator.
channels mode-change-neighbor
crc mode-change-period
interleaving mode-set
max-red octet-align
maxtime ptime
mode-change-capability robust-sorting
Examples and Explanations
The following sections illustrate scenarios of various levels of complexity.
Basic Scenarios illustrate default-based offer/answer exchanges. In the absence of explicitly configured AMR/AMR-WB octet-align parameter in the original offer or answer, both the initiator and the responder opt for bandwidth efficient payload format. In a similar fashion, the absence of an AMR/AMR-WB mode-set parameter indicates mutual acceptance of the inclusive mode-set (0,1,2,3,4,5,6,7). This section also includes examples of intersecting mode-sets.
Advanced Scenarios illustrate offer/answer exchanges that contain AMR or AMR-WB mode-set parameters.
SDP examples contain rtpmap and fmtp attributes whose syntax is described in the following two sections.
rtpmap Attribute
The rtpmap attribute takes the form:
a=rtpmap:<payloadType> <encodingName>/<clockRate>[/audioChannels]
payloadType: contains a dynamically-assigned RTP payload type as specified in RFC 3551, RTP Profile for Audio and Video Conferences with Minimal Control. The Internet Assigned Numbers Authority (IANA) has designated RTP payload types 96 through 127 as available for dynamic assignment.
encodingName: contains the codec identifier (AMR or AMR-WB in the following tables).
clockRate: contains the sampling rate.
audioChannels: (used only for audio streams, and optional) contains the number of audio channels — not used in transcoding decisions.
fmtp Attribute
The fmtp attribute shown in the following tables takes the form:
a=fmtp:<amrParameter> <parameterValues>
amrParameter contains one of the AMR/AMR-WB RTP-specific parameters listed below.
channels
crc
interleaving
max-red
maxtime
mode-change-capability
mode-change-neighbor
mode-change-period
mode-set
octet-align
ptime
robust-sorting
parameterValue: contains the value of the specified parameter.
Basic Scenarios
Examples provided in this section are supported by the following codec policy and media profiles.
codec-policy
name net192
allow-codecs *
add-codecs-on-egress AMR::PT96 AMR-WB::PT97 AMR::PT98
AMR-WB::PT99
order-codecs
force-ptime disabled
packetization-time 30
dtmf-in-audio disabled
media-profile
name AMR
subname PT96
media-type audio
payload-type 96
transport RTP/AVP
req-bandwidth 0
frames-per-packet 0
parameters
average-rate-limit 0
peak-rate-limit 0
max-burst-size 0
sdp-rate-limit-headroom 0
sdp-bandwidth disabled
police-rate 0
standard-pkt-rate 0
media-profile
name AMR-WB
subname PT97
media-type audio
payload-type 97
transport RTP/AVP
req-bandwidth 0
frames-per-packet 0
parameters
average-rate-limit 0
peak-rate-limit 0
max-burst-size 0
sdp-rate-limit-headroom 0
sdp-bandwidth disabled
police-rate 0
standard-pkt-rate 0
media-profile
name AMR
subname PT98
media-type audio
payload-type 98
transport RTP/AVP
req-bandwidth 0
frames-per-packet 0
parameters mode-set="0,1,2,3"
average-rate-limit 0
peak-rate-limit 0
max-burst-size 0
sdp-rate-limit-headroom 0
sdp-bandwidth disabled
police-rate 0
standard-pkt-rate 0
media-profile
name AMR-WB
subname PT99
media-type audio
payload-type 99
transport RTP/AVP
req-bandwidth 0
frames-per-packet 0
parameters mode-set="0,1,2,3"
average-rate-limit 0
peak-rate-limit 0
max-burst-size 0
sdp-rate-limit-headroom 0
sdp-bandwidth disabled
police-rate 0
standard-pkt-rate 0
The following SDP reflects the case where the session responder answers with the same codec and payload type as presented by the session initiator.
SDP | Contents |
---|---|
Offer received from session initiator |
|
Offer sent to responder (per the net192 codec policy) |
|
from AMR-WB/PT97 media profile |
|
from AMR-WB/PT98 media profile |
|
from AMR-WB/PT99 media profile |
|
initiator offer |
|
Answer received from responder |
|
Answer sent to initiator |
|
Codecs | Match | Values |
---|---|---|
codec | match | AMR/AMR |
payload formats | match | bandwidth-efficient (default value) |
mode-sets | match | inclusive mode-set (0,1,2,3,4,5,6,7) |
payload mapping | match | 96/96 |
Here, given the identical offer and answer, neither transcoding nor payload type mapping is required.
The following SDP reflects the case where the session responder answers with the codec offered by the session initiator, but with a different payload type.
SDP | Contents |
---|---|
Offer received from session initiator |
|
Offer sent to responder (per the net192 codec policy) |
|
from AMR-WB/PT97 media profile |
|
from AMR-WB/PT98 media profile |
|
from AMR-WB/PT99 media profile |
|
initiator offer |
|
Answer received from responder |
|
Answer sent to initiator |
|
Codecs | Match | Values |
---|---|---|
codecs | match | AMR/AMR |
payload formats | match | bandwidth-efficient (default value) |
mode-sets | match | inclusive mode-set (0,1,2,3,4,5,6,7) |
payload mapping | no match | 96/97 |
Here, given the identical offer/answer except for the payload type, transcoding is not required; payload type mapping is used.
The following SDP reflects the case where the session responder answers with a codec not offered by the session initiator.
SDP | Contents |
---|---|
Offer received from session initiator |
|
Offer sent to responder (per the net192 codec policy) |
|
from AMR-WB/PT97 media profile |
|
from AMR-WB/PT98 media profile |
|
from AMR-WB/PT99 media profile |
|
initiator offer |
|
Answer received from responder |
|
Answer sent to initiator |
|
Codecs | Match | Values |
---|---|---|
codecs | no match | AMR/AMR-WB |
payload formats | match | bandwidth-efficient (default value) |
mode-sets | match | inclusive mode-set (0,1,2,3,4,5,6,7) |
payload mapping | no match | 96/97 |
Here, given that the offer and answer codecs (AMR and AMR-WB) are not identical, transcoding is required.
The following SDP reflects the case where the offer specifies the inclusive mode-set, and the answer specifies a non-inclusive mode-set.
SDP | Contents |
---|---|
Offer received from session initiator |
|
Offer sent to responder (per the net192 codec policy) |
|
from AMR-WB/PT97 media profile |
|
from AMR-WB/PT98 media profile |
|
from AMR-WB/PT99 media profile |
|
initiator offer |
|
Answer received from responder |
|
Answer sent to initiator |
|
Codecs | Match | Values |
---|---|---|
codecs | match | AMR/AMR-WB |
payload formats | match | bandwidth-efficient (default value) |
mode-sets | intersect | (0,1,2,3,4,5,6,7) / (0,1,2,3) |
payload mapping | no match | 96/98 |
Here, given that the answer mode-set (0,1,2,3) intersects with the offered mode-set (0,1,2,3,4,5,6,7), transcoding is not required; payload type mapping is used.
The following SDP reflects the case where the offer specifies a non-inclusive mode-set, and the answer specifies the inclusive mode-set.
SDO | Contents |
---|---|
Offer received from session initiator |
|
Offer sent to responder (per the net192 codec policy) |
|
from AMR/PT96 media profile |
|
from AMR-WB/PT97 media profile |
|
from AMR-WB/PT99 media profile |
|
initiator offer |
|
Answer received from responder |
|
Answer sent to initiator |
|
Codecs | Match | Values |
---|---|---|
codecs | match | AMR/AMR |
payload formats | match | bandwidth-efficient (default value) |
mode-sets | intersect | (0,1,2,3) / (0,1,2,3,4,5,6,7) |
payload mapping | no match | 98/96 |
Here, given that the offer mode-set (0,1,2,3) intersects with the answer mode-set (0,1,2,3,4,5,6,7), transcoding is not required; payload type mapping is used.
Advanced Scenarios
Examples provided in this first section are supported by the following codec policy and media profile.
codec-policy
name net182
allow-codecs *
add-codecs-on-egress AMR::PT97-5-6-7
order-codecs
force-ptime disabled
packetization-time 20
dtmf-in-audio disabled
media-profile
name AMR
subname PT97-5-6-7
media-type audio
payload-type 97
transport RTP/AVP
req-bandwidth 0
frames-per-packet 0
parameters mode-set="5,6,7"
average-rate-limit 0
peak-rate-limit 0
max-burst-size 0
sdp-rate-limit-headroom 0
sdp-bandwidth disabled
police-rate 0
standard-pkt-rate 0
The following SDP reflects the case where the offer and answer specify non-matching mode-sets.
SDP | Contents |
---|---|
Offer received from session initiator |
|
Offer sent to responder (per the net192 codec policy) |
|
from AMR/PT97-5-6-7 media profile |
|
initiator offer |
|
Answer received from responder |
|
Answer sent to initiator |
|
Codecs | Match | Values |
---|---|---|
codecs | match | AMR/AMR |
payload formats | match | bandwidth-efficient (default value) |
mode-sets | no match | (1,2,3,6) / (5,6,7) |
payload mapping | no match | 96/97 |
Here, given that the offer mode-set (1,2,3,4) does not intersects with the answer mode-set (5,6,7), transcoding is required.
The following SDP reflects the case where the offer and answer specify intersecting mode-sets.
SDP | Contents |
---|---|
Offer received from session initiator |
|
Offer sent to responder (per the net192 codec policy) |
|
from AMR/PT97-5-6-7 media profile |
|
initiator offer |
|
Answer received from responder |
|
Answer sent to initiator |
|
Codecs | Match | Values |
---|---|---|
codecs | match | AMR/AMR |
payload formats | match | bandwidth-efficient (default value) |
mode-sets | no match | (1,2,3,4) / (4,5,6,7) |
payload mapping | no match | 96/97 |
Here, given that the offer mode-set (1,2,3,4) intersects with the answer mode-set (4,5,6,7), transcoding is not required; payload type mapping is used.
Examples provided in this next section are supported by the following codec policy and media profiles.
codec-policy
name net192
allow-codecs *
add-codecs-on-egress AMR::PT96-MAXRED AMR::PT97-BE-0257
AMR::PT98-OA AMR::PT99-OA-0257
order-codecs
force-ptime disabled
packetization-time 20
dtmf-in-audio disabled
media-profile
name AMR
subname PT96-MAXRED
media-type audio
payload-type 96
transport RTP/AVP
req-bandwidth 0
frames-per-packet 0
parameters max-red=220
average-rate-limit 0
peak-rate-limit 0
max-burst-size 0
sdp-rate-limit-headroom 0
sdp-bandwidth disabled
police-rate 0
standard-pkt-rate 0
media-profile
name AMR
subname PT97-BE-0257
media-type audio
payload-type 97
transport RTP/AVP
req-bandwidth 0
frames-per-packet 0
parameters mode-set="0,2,5,7"
average-rate-limit 0
peak-rate-limit 0
max-burst-size 0
sdp-rate-limit-headroom 0
sdp-bandwidth disabled
police-rate 0
standard-pkt-rate 0
media-profile
name AMR
subname PT98-OA
media-type audio
payload-type 98
transport RTP/AVP
req-bandwidth 0
frames-per-packet 0
parameters octet-align=1
average-rate-limit 0
peak-rate-limit 0
max-burst-size 0
sdp-rate-limit-headroom 0
sdp-bandwidth disabled
police-rate 0
standard-pkt-rate 0
media-profile
name AMR
subname PT99-OA-0257
media-type audio
payload-type 99
transport RTP/AVP
req-bandwidth 0
frames-per-packet 0
parameters mode-set="0,2,5,7",octet-align=1
average-rate-limit 0
peak-rate-limit 0
max-burst-size 0
sdp-rate-limit-headroom 0
sdp-bandwidth disabled
police-rate 0
standard-pkt-rate 0
The following SDP reflects the case where the offer and answer differ only in the inclusion of an AMR/AMR-WB parameter in the answer.
SDP | Contents |
---|---|
Offer received from session initiator |
|
Offer sent to responder (per the net192 codec policy) |
|
from AMR/PT97-BE-0257 media profile |
|
from AMR/PT98-OA media profile |
|
from AMR/PT99-OA-0257 media profile |
|
initiator offer |
|
Answer received from responder |
|
Answer sent to initiator |
|
Codecs | Match | Values |
---|---|---|
codecs | match | AMR/AMR |
payload formats | match | bandwidth-efficient (default value) |
mode-sets | match | inclusive mode-set (0,1,2,3,4,5,6,7) |
payload mapping | match | 96/96 |
Here, given that the offer/answer are identical except for the AMR max-red parameter, neither transcoding nor payload type matching is required.
The following SDP reflects the case where the offer and answer differ only in the inclusion of an AMR/AMR-WB parameter in the offer.
SDP | Contents |
---|---|
Offer received from session initiator |
|
Offer sent to responder (per the net192 codec policy) |
|
from AMR/PT96-MAXRED media profile |
|
from AMR/PT98-OA media profile |
|
from AMR/PT99-OA-0257 media profile |
|
initiator offer |
|
Answer received from responder |
|
Answer sent to initiator |
|
Codecs | Match | Values |
---|---|---|
codecs | match | AMR/AMR |
payload formats | match | bandwidth-efficient (default value) |
mode-sets | match | (0,2,5,7) / (0,2,5,7) |
payload mapping | match | 97/97 |
Here, given that the offer/answer are identical except for the AMR max-red parameter, neither transcoding nor payload type matching is required.
Media Profile Configuration
Media profiles must be created and then defined when you want to override the Oracle® Enterprise Session Border Controller’s default media profiles.
ACLI Configuration Instructions and Examples
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.
Creating User-Defined Ptime per Codec
To change the Oracle® Enterprise Session Border Controller’s default ptime for a specific codec, you must create a media profile configuration element. In the parameter parameter, you set the ptime to the value of your choosing.
Note:
The frames-per-packet parameter in the media profile configuration element is NOT used for setting a user defined ptime for that codec.To configure a new ptime value for a codec: