Use this profile to define the standard and custom codec mix profile configuration to use for a given SWe Traffic Profile. This profile includes the following default profiles:

  • G711_20ms: Using 100% G711 (20 ms) calls.
  • G711_G729_20ms: Using 50% of G729AB (20 ms) and 50% G711 (20ms).
  • G7112G711 - The percentage value of this codec indicates the proportion of total number of sessions designated for pure G711 transcoding (G711-G711). 
  • T38
Note

With dynamic GPU resource management, the sweTrafficProfiles does not enforce any hard coded per-codec limit. You must still configure the codec percentage in sweCodecMixProfile since this configuration acts as an input for the functional partitioning of VCPUs of the instance.

This feature does not affect the codec channel capacities in a non-GPU accelerated SWe (CPU-based SWe).

Command Syntax

% set system sweCodecMixProfile <profile name> 
	<codec> 
	<ptime value: 10ms, 20ms, 30ms, 40ms, 60ms, 80ms, 100ms> 
	percentage <percentage value>

Command Parameters


SWe Codec Mix Profile Parameter Descriptions

ParameterLength/RangeDescription
sweCodecMixProfile1-40 characters

<profile name> – Enter a unique SWe Codec Mix Profile name or one of the default profiles:

  • G711_20ms – Configured with 100% G.711 (20 ms) calls.
  • G711_G729_20ms – Configured with 50% G.729AB (20 ms) and 50% G.711 (20 ms).
  • G7112G711 - The percentage value of this codec indicates the proportion of total number of sessions designated for pure G711 transcoding (G711-G711). 
  • T38

The SWe Codec Mix Profile is attachable to either the passthroughCodecProfile or transcodingCodecProfile objects of the SWe Traffic Profile.

Note:

  • The SBC SWe supports up to 20 Codec Mix Profiles. To create additional profiles, delete any inactive custom profiles.
  • DSP-based tone detection is available only on GPU - I-SBC profiles.
  • The following CPU and GPU codecs are supported for SBC SWe on Openstack and KVM:
    • Codecs supported on both GPU and CPU: AMR-NB, AMR-WB, EVRC, EVRCB, G729, G722EVS, OPUS 
    • CPU only codecs :  G723, G726, G7221, ILBC, SILK_8, SILK_16, G7112G711, T38,G711
  • You can provision CPU codecs in the codec profile and associate it with the GPU traffic profile; however, you must provision at least one GPU codec in the sweCodecMixProfile.
<codec>N/AEnter the codec used by this Codec Mix Profile. Refer to Audio Codecs for the list of supported codecs.
<ptime value>N/A

Select a packetization time value representing 10 ms, 20 ms, 30 ms, 40 ms, 60 ms, 80ms, and 100ms:

  • p10
  • p20
  • p30
  • p40
  • p60
  • p80
  • p100

Note: For SBC SWe Cloud 8.1, ptime values p80 and p100 are not tested.

percentage0.00 -100.00

<% value> – The percentage distribution allocated for the codec mix.

Note:

  • The sum of all percentage entries of all columns in any row of the transcoding profile table must equal 100.
  • Floating point values are supported as percentage values; the allowed percentage range is 0.00-100.00.
  • The percentage value for G7112G711 is used for estimating transcode and bandwidth cost.
  • The percentage value for G711 is not used for estimating transcode cost, but is used for bandwidth calculation of PXPAD scenarios.
  • The percentage value for G711 cannot be greater than the percentage value of non-G711 codecs.

Command Example

In the following example, a custom Codec Mix profile is created ensuring the percentage distribution of the three entries equals 100%.

set system sweCodecMixProfile customCodecMix g723 p20 percentage 50
set system sweCodecMixProfile customCodecMix g711 p20 percentage 30
set system sweCodecMixProfile customCodecMix g729 p10 percentage 20
commit


Best Practice

Ribbon recommends monitoring of the status of codec channel capacities for codecs provisioned on GPU (on a per GPU device basis), as well as on CPU.

GPU Transcode Status

Shows codec channel capacities on a per GPU device basis.

Note

The gpuTranscodeStatus represents only available GPU resources. If the gpuTranscodeStatus displays higher numbers than the dspStatus, the system is CPU-limited.

Command Syntax

show table system gpuTranscodeStatus


Command Parameters


gpuTranscodeStatus Descriptions

ParameterStatus Names and Descriptions

gpuTranscodeStatus

<system name> – The SBC system name.

  • amrNbTotal Total AMR–NB resource capacity on this server.

  • amrNbUtilization Percentage utilization of AMR–NB resources on this server.

  • amrWbTotal Total AMR–WB resource capacity on this server.

  • amrWbUtilization Percentage utilization of AMR–WB resources on this server.
  • evrc0Total Total EVRC0 resource capacity on this server.
  • evrc0Utilization Percentage utilization of EVRC0 resources on this server.
  • evrcb0Total Total EVRCB0 resource capacity on this server.
  • evrcb0Utilization Percentage utilization of EVRCB0 resources on this server.
  • gpuAllocation – Displays the overall GPU occupancy in a percentage.
  • gpuNumber - Numeric identifier for the GPU device.
  • g722Total Total G.722 resource capacity on this server.
  • g722Utilization Percentage utilization of G.722 resources on this server.
  • g729AbTotal Total G729A+B resource capacity on this server.
  • g729AbUtilization Percentage utilization of G729A+B resources on this server.
  • opusTotal – Total OPUS resource capacity on this server. The SBC does not support this parameter.

  • opusUtilization – Percentage utilization of OPUS resources on this server. The SBC does not support this parameter.

CPU Transcode Status

The cpuTranscodeStatus captures the information on spilled over channels due to the exhaustion of GPU resources. GPU codecs appear on the CPU when the GPU resources are exhausted and cannot accommodate GPU-supported codec channels, so the codec channels spill onto the CPU.

Command Syntax

show table system cpuTranscodeStatus

Command Parameters


cpuTranscodeStatus Descriptions

ParameterStatus Names and Descriptions

cpuTranscodeStatus

<system name> – The SBC system name.

  • amrNbUsed - Number of AMR channels spilled over onto CPU.

  • amrWbUsed - Number of AMR-WB channels spilled over onto CPU.

  • evrc0Used - Number of EVRC channels spilled over onto CPU.
  • evrcb0Used - Number of EVRCB channels spilled over onto CPU.

  • evsUsed - Number of EVS channels spilled over onto CPU.
  • opusUsed - Number of OPUS channels spilled over onto CPU. 
  • g722Used - Number of G.722 channels spilled over onto CPU.
  • g729AbUsed - Number of G.729AB channels spilled over onto CPU.