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:
- 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:
- 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
Click here to contact Telecom Support Resources
Copyright 2002, Intel Corporation