Home >
Products >
Algorithms
Powerful servers and IP telephony have given rise to the host-media-processing
(HMP) media server. The term “HMP” is loosely applied since not all HMP media
servers actually process a call’s media stream. The IETF RFC2833, which
specifies how in-band telephony tones can be transported in RTP packets, allows
the signal processing needed to detect these tones to be outsourced to the
media gateway. And messaging can be implemented by simply storing the RTP
packet payload.
But what happens when real media processing is required? For example, often the
requirements for in-band call-progress analysis for dial-and-deliver
applications in messaging servers exceed the capabilities of media gateways.
And what if voice messages are stored in G.711 or G.726, and the playback
requires a different codec, perhaps a MIPS-hungry low-bit-rate vocoder? How
about T.38 or G.711 pass-through fax termination?
That’s when you need HMPturbo.
HMPturbo Transcoding Subsystem (TSS) is available in two versions: one requires
no additional hardware. It’s for the processing-challenged media server. Here,
HMPturbo is needed to meet additional requirements, as described above. Packet
buffers are sent to the HMPturbo subsystem through an easy-to-use API. The
subsystem can handle, for example, in-band call-progress analysis, DTMF,
real-time IP fax (G.711 or T.38) termination (and relay), and vocoder
transcoding. The second version is functionally identical and exposes the same
API, but uses Commetrex’ MSP-320 to really “turn on the turbo.” The same
media-processing functions are available, but they are executed by the PCI
board’s DSPs.
The MSP-320 includes two TI TMS320C6201 DSPs, each with the resources to
process 20 G.729a/b streams or approximately the same number of V.17 fax-modem
receivers.
Features
-
Win32 or Linux versions
-
Software or hardware based
-
TerminatingT38™
-
T.38 relay
-
G.711 pass-through fax termination with Commetrex’ industry-leading analog
modems
-
G.711, G.726, G.723.1, G.729a/b
-
DTMF generation-detection
-
Call Classification
-
VAD & CNG
Benefits
-
Increased configuration flexibility
-
Reduced footprint and power
-
Service differentiation with fax functionality
-
Increased functionality of your server
-
Increased interoperability of your server
-
Ease of provisioning
-
Low operating cost
-
Developer control of system
Transcoding Capabilities
Streams can be transcoding by specifying a decoder-encoder pair. Not all
combinations are allowed, for example, G.723.1 decode and DTMF decode, while
G.711 decode and DTMF decode are allowed. The following media technologies are
available:
-
G.711
-
G.726
-
G.723.1
-
G.729a/b
-
DTMF
-
In-band call-progress analysis
-
T.38 fax termination (send-receive)
-
G.711 pass-through fax (V.27ter, V.29, V.17, V.34)
System Overview
HMPturbo utilizes Commetrex’ acclaimed OpenMedia media-stream environment to
host the Transcoding Subsystem (TSS). A strong feature of OpenMedia is that it
renders the stream-processing execution environment transparent to the
controlling application. TSS leverages this feature is by the to implement
host- and hardware-based versions of HMPturbo.
The hardware-based version offloads media-processing resource requirements onto
an adjunct processor. The first hardware version of HMPturbo utilizes the
Commetrex MSP-320 PCI card, which processes 40 G.729a/b streams. A subsequent
version will utilize the MSP-640, which processes 300 such streams. As the
specifics of the signal-processing compute resource are hidden from the client,
the system can be easily modified to utilize other resources.
OpenMedia is an open-architecture media-streams environment (http://www.msp.org/),
as shown below.
The TSS MSP Application, at the top of the above figure, receives commands from
the client API and sends the appropriate lower-level commands to the execution
environments using the OpenMedia M.100 API. The Session Manager then routes the
command to the proper Execution Environment.
Since media data are exchanged between the client and the TSS Application via
the TSS API, the TSS application is required to source the stream data for the
Execution Environments, as shown in the figure below.
RTP media streams are brought into the system by host-based telephony
framework, and sent to the TSS, if necessary. The transcoded result is then
typically sent to a message store. The process is reversed to send/play a
message.
The client application is provided with a shared-object library or DLL that
routes commands to the TSS MSP Application, shown in Figure 2. The TSS
Application maps the client-API-level command to the proper OpenMedia M.100 API
command, which is then routed to the Session Manager (MSES). MSES then routes
the command to one of six possible execution environments, two on each of three
possible boards.
MSP-320 Capacity
The total mega-cycles per second (MCPS) available on each DSP on the MSP-320 is
200, and there are two DSPs. The following table can be used to calculate the
maximum number of channels of various combinations of media.
| Technology |
Decode (MCPS) |
Encode (MCPS) |
| G.711 |
1.5 |
1.5 |
| G.726 |
3.35 |
3.15 |
| G.729a/b |
2.2 |
7.5 |
| G.723.1 (6.3K) |
10.0 |
1.4 |
| V.17 fax |
8.2 |
5.6 |
| VAD |
1.8 |
N/A |
| CNG |
N/A |
1.1 |
License Options
Commetrex offers software licenses designed to meet different needs. Typically,
a user will license the HMPturbo SDK, which includes an initial system, and
then use per-system/per-media licenses for recurring systems. However, for
those OEMs that intend to add significant value to the underlying system,
Commetrex offers paid-up and royalty-based source-code licenses.
Related Publications
|