PREV TOC HOME INDEX NEXT


IPM_CODER_INFO


typedef struct ipm_coder_info_tag
{
   eIPM_CODER_TYPE         eCoderType;         /* The coder Type                    */
   eIPM_CODER_FRAMESIZE    eFrameSize;         /* Frame size supported              */
   unsigned int            unFramesPerPkt;     /* No. of Frames per packet          */
   eIPM_CODER_VAD          eVadEnable;         /* Flag indicating if VAD is         */
                                               /* enabled/disabled                  */
   unsigned int            unCoderPayloadType; /* Type of coder payload supported   */
   unsigned int            unRedPayloadType;   /* Type of Redundancy Payload        */
   
} IPM_CODER_INFO, *PIPM_CODER_INFO; 

Description

This structure contains the coder properties that will be used in an IP session. IPM_CODER_INFO is a child of IPM_MEDIA, which is a child of the IPM_MEDIA_INFO structure. The structure is used by the ipm_GetLocalMediaInfo( ) and ipm_SetRemoteMediaInfo( ) functions.

Appropriate values for IPM_CODER_INFO fields depend on the board that is being used. Table 2 and Table 3 list supported coders for IntelŪ NetStructure™ IPT Series boards and IntelŪ NetStructure™ DM/IP Series boards.

IntelŪ NetStructure™ Host Media Processing (HMP) software performs voice, conferencing and IVR processing on general-purpose servers based on IntelŪ architecture without the use of specialized hardware. Table 4 shows the coders that are supported when using the IP media API with HMP.

Field Descriptions

The fields of the IPM_CODER_INFO data structure are described as follows. Refer to Table 2, Table 3, and Table 4 for platform-specific guidelines for filling in these fields.

eCoderType
type of coder to be used for streaming media operations. Coder-specific values for this field are listed in Table 2, Table 3, and Table 4.
The following values are supported:
  • CODER_TYPE_G711ALAW64K
    G.711, A-law, 64 kbps
  • CODER_TYPE_G711ULAW64K
    G.711, mu-law, 64 kbps
  • CODER_TYPE_G7231_5_3K
    G.723.1, 5.3 kbps
  • CODER_TYPE_G7231_6_3K
    G.723.1, 6.3 kbps
  • CODER_TYPE_G726_32K
    G.726.3, 32 kbps
  • CODER_TYPE_G729
    G.729
  • CODER_TYPE_G729ANNEXA
    G.729 Annex A
  • CODER_TYPE_G729ANNEXB
    G.729 Annex B
  • CODER_TYPE_G729ANNEXAWANNEXB
    G.729 Annex A with Annex B
  • CODER_TYPE_GSMFULLRATE
    GSM (TIPHON), full rate (IntelŪ NetStructure™ DM/IP Series boards only)
eFrameSize
size of frame (G.711 coders only). When packets are sent in both directions, (that is, when the call to ipm_StartMedia( ) or ipm_SetRemoteMediaInfo( ) specifies eDirection = DATA_IP_TDM_BIDIRECTIONAL), the application must know the frame size of incoming packets and use eIPM_CODER_FRAMESIZE to specify that value.
The eIPM_CODER_FRAMESIZE data type is an enumeration which specifies the frame size for G.711 coders only. All other coders have a predefined, standard value for the frame size and have a user-programmable frames per packet field in the IPM_CODER_INFO data structure. The following values for eIPM_CODER_FRAMESIZE are supported:
  • CODER_FRAMESIZE_5
    frame size = 5 ms (IntelŪ NetStructure™ IPT Series boards only)
  • CODER_FRAMESIZE_10
    frame size = 10 ms
  • CODER_FRAMESIZE_20
    frame size = 20 ms
  • CODER_FRAMESIZE_30
    frame size = 30 ms
unFramesPerPkt
number of frames per packet. Coder-specific values for this field are listed in Table 2, Table 3, and Table 4. This field cannot be modified for G.711 coders.
eVadEnable
flag for enabling/disabling VAD (Voice Activity Detection)
The eIPM_CODER_VAD data type is an enumeration which defines the following values:
  • CODER_VAD_DISABLE
    VAD is OFF
  • CODER_VAD_ENABLE
    VAD is ON
unCoderPayloadType
RTP header payload type using RFC 1890 standard definitions. The application is responsible for negotiating this value between the two endpoints. This may be set to any value for non-standard coders or if the application does not require interoperability with third-party applications. Values: 0-127. 96-127 is the dynamic range.
unRedPayloadType
RTP header redundancy payload type using RFC 2198 definitions for redundant packets. The application is responsible for negotiating this value between the two endpoints. This may be set to any value. Value: 96-127

Table 2. Supported Coders for IntelŪ NetStructure™ IPT Series Boards 

Coder

Frame Size (ms)

Frames per Packet (fpp)

VAD Support

CODER_TYPE_G711ALAW64K

5, 10, 20, 30

fixed at 1

N/A

CODER_TYPE_G711ULAW64K

5, 10, 20, 30

fixed at 1

N/A

CODER_TYPE_G7231_5_3K

fixed at 30

1, 2, 3, 4

Supported

CODER_TYPE_G7231_6_3K

fixed at 30

1, 2, 3, 4

Supported

CODER_TYPE_G726_32K (see Note)

10

1, 2, or 3

Supported

20

1 or 2 (transmit)

1, 2, or 3 (receive)

30

1 (transmit)

1 or 2 (receive)

CODER_TYPE_G729

fixed at 30

1, 2, 3, or 4

N/A

CODER_TYPE_G729ANNEXA

fixed at 30

1, 2, 3, or 4

N/A

CODER_TYPE_G729ANNEXB

fixed at 30

1, 2, 3, or 4

Supported

CODER_TYPE_G729ANNEXAWANNEXB

fixed at 30

1, 2, 3, or 4

Supported

NOTE: G.726 coders have the following limitations:(Frames per Packet) x (Frame size) cannot be > 40 for the transmit (remote) side(Frames per Packet) x (Frame size) cannot be > 60 for the receive (local) side

Table 3. Supported Coders for IntelŪ NetStructure™ DM/IP Series Boards

Coder

Frame Size (ms)

Frames per Packet (fpp)

VAD Support

CODER_TYPE_G711ALAW64K

10, 20, or 30

fixed at 1

N/A

CODER_TYPE_G711ULAW64K

10, 20, or 30

fixed at 1

N/A

CODER_TYPE_G7231_5_3K

fixed at 30

1, 2, or 3

Supported

CODER_TYPE_G7231_6_3K

fixed at 30

1, 2, or 3

Supported

CODER_TYPE_G726_32K1

N/A

N/A

N/A

CODER_TYPE_G729

fixed at 10

1, 2, 3, or 4

N/A

CODER_TYPE_G729ANNEXA

fixed at 10

1, 2, 3, or 4

N/A

CODER_TYPE_G729ANNEXB

fixed at 10

1, 2, 3, or 4

N/A

CODER_TYPE_G729ANNEXAWANNEXB

fixed at 10

1, 2, 3, or 4

N/A

CODER_TYPE_GSMFULLRATE2

fixed at 20

1, 2, or 3

Supported

NOTES:
1. G.726 support is limited to play and record functionality only; transcoding is not supported on this coder.
2. GSM Telecommunications and Internet Protocol Harmonization over Networks (TIPHON) is a sub-group of the European Telecommunications Standards Institute (ETSI) GSM specification.

Table 4. Supported Coders for Host Media Processing

Coder

Frame Size (ms)

Frames per Packet (fpp)

VAD Support

CODER_TYPE_G711ALAW64K

10, 20, or 30

fixed at 1

N/A

CODER_TYPE_G711ULAW64K

10, 20, or 30

fixed at 1

N/A


PREV TOC HOME INDEX NEXT

Click here to contact Telecom Support Resources

Copyright 2002, Intel Corporation
All rights reserved
This page generated November, 2002