Objective Systems, Inc.  

ooCapability.h File Reference

This file contains Capability management functions. More...

#include "ootypes.h"
#include "ooasn1.h"

Go to the source code of this file.

Data Structures

struct  OOCapPrefs
 This structure defines the preference order for capabilities. More...
struct  OOCapParams
struct  OOGSMCapParams
struct  OOH263CapParams
struct  ooH323EpCapability
 Structure to store information related to end point capability. More...

Defines

#define OO_GSMFRAMESIZE   33
#define OORX   (1<<0)
#define OOTX   (1<<1)
#define OORXANDTX   (1<<2)
#define OORXTX   (1<<3)
#define OO_CAP_DTMF_RFC2833   (1<<0)
#define OO_CAP_DTMF_Q931   (1<<1)
#define OO_CAP_DTMF_H245_alphanumeric   (1<<2)
#define OO_CAP_DTMF_H245_signal   (1<<3)

Typedefs

typedef int(*) cb_StartReceiveChannel (struct OOH323CallData *call, struct OOLogicalChannel *pChannel)
 This callback is used for starting media receive channel.
typedef int(*) cb_StartTransmitChannel (struct OOH323CallData *call, struct OOLogicalChannel *pChannel)
 This callback is used for starting media transmit channel.
typedef int(*) cb_StopReceiveChannel (struct OOH323CallData *call, struct OOLogicalChannel *pChannel)
 This callback is used for stopping media receive channel.
typedef int(*) cb_StopTransmitChannel (struct OOH323CallData *call, struct OOLogicalChannel *pChannel)
 This callback is used for stopping media transmit channel.

Enumerations

enum  OOCapabilities {
  OO_CAP_AUDIO_BASE = 0,
  OO_G711ALAW64K = 2,
  OO_G711ALAW56K = 3,
  OO_G711ULAW64K = 4,
  OO_G711ULAW56K = 5,
  OO_G722_64k = 6,
  OO_G722_56k = 7,
  OO_G722_48k = 8,
  OO_G7231 = 9,
  OO_G728 = 10,
  OO_G729 = 11,
  OO_G729A = 12,
  OO_IS11172_AUDIO = 13,
  OO_IS13818_AUDIO = 14,
  OO_G729B = 15,
  OO_G729AB = 16,
  OO_G7231C = 17,
  OO_GSMFULLRATE = 18,
  OO_GSMHALFRATE = 19,
  OO_GSMENHANCEDFULLRATE = 20,
  OO_GENERICAUDIO = 21,
  OO_G729EXT = 22,
  OO_AUDIO_VBD = 23,
  OO_AUDIOTELEPHONYEVENT = 24,
  OO_AUDIO_TONE = 25,
  OO_EXTELEM1 = 26,
  OO_CAP_VIDEO_BASE = 27,
  OO_NONSTDVIDEO = 28,
  OO_H261VIDEO = 29,
  OO_H262VIDEO = 30,
  OO_H263VIDEO = 31,
  OO_IS11172VIDEO = 32,
  OO_GENERICVIDEO = 33,
  OO_EXTELEMVIDEO = 34
}
enum  OOPictureFormat {
  OO_PICFORMAT_SQCIF,
  OO_PICFORMAT_QCIF,
  OO_PICFORMAT_CIF,
  OO_PICFORMAT_CIF4,
  OO_PICFORMAT_CIF16
}
enum  OOCapType {
  OO_CAP_TYPE_AUDIO,
  OO_CAP_TYPE_VIDEO,
  OO_CAP_TYPE_DATA
}

Functions

EXTERN int ooCapabilityEnableDTMFRFC2833 (struct OOH323CallData *call, int dynamicRTPPayloadType)
 This function is used to add rfc2833 based dtmf detection capability.
EXTERN int ooCapabilityDisableDTMFRFC2833 (struct OOH323CallData *call)
 This function is used to remove rfc2833 dtmf detection capability.
EXTERN int ooCapabilityEnableDTMFH245Alphanumeric (struct OOH323CallData *call)
 This function is used to enable support for H.245 based alphanumeric dtmf capability.
EXTERN int ooCapabilityDisableDTMFH245Alphanumeric (struct OOH323CallData *call)
 This function is used to disable support for H.245 based alphanumeric dtmf capability.
EXTERN int ooCapabilityEnableDTMFH245Signal (struct OOH323CallData *call)
 This function is used to enable support for H.245 based signal dtmf capability.
EXTERN int ooCapabilityDisableDTMFH245Signal (struct OOH323CallData *call)
 This function is used to disable support for H.245 based signal dtmf capability.
EXTERN int ooCapabilityEnableDTMFQ931Keypad (struct OOH323CallData *call)
 This function is used to enable support for dtmf using Q.931 Keypad IE.
EXTERN int ooCapabilityDisableDTMFQ931Keypad (struct OOH323CallData *call)
 This function is used to disable support for dtmf using Q.931 Keypad IE.
EXTERN int ooCapabilityAddSimpleCapability (struct OOH323CallData *call, int cap, int txframes, int rxframes, OOBOOL silenceSuppression, int dir, cb_StartReceiveChannel startReceiveChannel, cb_StartTransmitChannel startTransmitChannel, cb_StopReceiveChannel stopReceiveChannel, cb_StopTransmitChannel stopTransmitChannel, OOBOOL remote)
 This function is used to add simple capabilities which have only rxframes and txframes parameters to the endpoint or call.
int ooCapabilityAddGSMCapability (struct OOH323CallData *call, int cap, unsigned framesPerPkt, OOBOOL comfortNoise, OOBOOL scrambled, int dir, cb_StartReceiveChannel startReceiveChannel, cb_StartTransmitChannel startTransmitChannel, cb_StopReceiveChannel stopReceiveChannel, cb_StopTransmitChannel stopTransmitChannel, OOBOOL remote)
 This is an internal helper function which is used to add a GSM capability to local endpoints capability list or to remote endpoints capability list or to a call's capability list.
EXTERN int ooCapabilityAddH263VideoCapability (struct OOH323CallData *call, unsigned sqcifMPI, unsigned qcifMPI, unsigned cifMPI, unsigned cif4MPI, unsigned cif16MPI, unsigned maxBitRate, int dir, cb_StartReceiveChannel startReceiveChannel, cb_StartTransmitChannel startTransmitChannel, cb_StopReceiveChannel stopReceiveChannel, cb_StopTransmitChannel stopTransmitChannel, OOBOOL remote)
 This function is used to add H263 video capability to local endpoints capability list or to remote endpoints capability list or to a call's capability list.
int ooCapabilityAddH263VideoCapability_helper (struct OOH323CallData *call, unsigned sqcifMPI, unsigned qcifMPI, unsigned cifMPI, unsigned cif4MPI, unsigned cif16MPI, unsigned maxBitRate, int dir, cb_StartReceiveChannel startReceiveChannel, cb_StartTransmitChannel startTransmitChannel, cb_StopReceiveChannel stopReceiveChannel, cb_StopTransmitChannel stopTransmitChannel, OOBOOL remote)
 This function is an helper function to ooCapabilityAddH263VideoCapability.
int ooAddRemoteAudioCapability (struct OOH323CallData *call, H245AudioCapability *audioCap, int dir)
 This function is used to add a audio capability to calls remote capability list.
int ooAddRemoteCapability (struct OOH323CallData *call, H245Capability *cap)
 This function is used to add a capability to call's remote capability list.
EXTERN int ooCapabilityUpdateJointCapabilities (struct OOH323CallData *call, H245Capability *cap)
 This function is used to update joint capabilities for call.
EXTERN int ooCapabilityUpdateJointCapabilitiesVideo (struct OOH323CallData *call, H245VideoCapability *videoCap, int dir)
 This function is used to update joint video capabilities for call.
EXTERN int ooCapabilityUpdateJointCapabilitiesVideoH263 (struct OOH323CallData *call, H245H263VideoCapability *pH263Cap, int dir)
 This function is used to update joint video H263 capabilities for call.
ASN1BOOL ooCapabilityCheckCompatibility (struct OOH323CallData *call, ooH323EpCapability *epCap, H245DataType *dataType, int dir)
 This function is used to test whether the endpoint capability in the specified direction can be supported by the audio capability.
H245AudioCapability * ooCapabilityCreateAudioCapability (ooH323EpCapability *epCap, OOCTXT *pctxt, int dir)
 This function is used to create a audio capability structure using the capability type.
H245VideoCapability * ooCapabilityCreateVideoCapability (ooH323EpCapability *epCap, OOCTXT *pctxt, int dir)
 This function is used to create a video capability structure using the capability type.
void * ooCapabilityCreateDTMFCapability (int cap, OOCTXT *pctxt)
 This function is used to create a dtmf capability which can be added to a TCS message.
H245AudioCapability * ooCapabilityCreateGSMFullRateCapability (ooH323EpCapability *epCap, OOCTXT *pctxt, int dir)
 This function is used to create a GSM Full Rate capability structure.
H245AudioCapability * ooCapabilityCreateSimpleCapability (ooH323EpCapability *epCap, OOCTXT *pctxt, int dir)
 This function is used to create a simple(g711, g728, g723.1, g729) audio capability structure.
H245VideoCapability * ooCapabilityCreateH263VideoCapability (ooH323EpCapability *epCap, OOCTXT *pctxt, int dir)
 This function is used to create a H263 video capability structure.
ooH323EpCapabilityooIsAudioDataTypeSupported (struct OOH323CallData *call, H245AudioCapability *audioCap, int dir)
 This function is used to determine whether a particular capability can be supported by the endpoint.
ooH323EpCapabilityooIsVideoDataTypeSupported (struct OOH323CallData *call, H245VideoCapability *pVideoCap, int dir)
 This function is used to determine whether a particular video capability can be supported by the endpoint.
ooH323EpCapabilityooIsVideoDataTypeH263Supported (struct OOH323CallData *call, H245H263VideoCapability *pH263Cap, int dir, OOPictureFormat picFormat)
 This function is used to determine whether a particular H263 capability can be supported by the endpoint.
ooH323EpCapabilityooIsDataTypeSupported (struct OOH323CallData *call, H245DataType *data, int dir)
 This function is used to determine whether a particular capability type can be supported by the endpoint.
EXTERN int ooResetCapPrefs (struct OOH323CallData *call)
 This function is used to clear the capability preference order.
EXTERN int ooRemoveCapFromCapPrefs (struct OOH323CallData *call, int cap)
 This function is used to remove a particular capability from preference list.
EXTERN int ooAppendCapToCapPrefs (struct OOH323CallData *call, int cap)
 This function is used to append a particular capability to preference list.
EXTERN int ooChangeCapPrefOrder (struct OOH323CallData *call, int cap, int pos)
 This function is used to change preference order of a particular capability in the preference list.
EXTERN int ooPreppendCapToCapPrefs (struct OOH323CallData *call, int cap)
 This function is used to preppend a particular capability to preference list.
EXTERN const char * ooGetCapTypeText (OOCapabilities cap)
 This function is used to retrieve the text description for a capability type.


Detailed Description

This file contains Capability management functions.

Definition in file ooCapability.h.


Typedef Documentation

typedef int(*) cb_StartReceiveChannel(struct OOH323CallData *call, struct OOLogicalChannel *pChannel)

This callback is used for starting media receive channel.

This callback function is triggered when receive media channel has to be started.

Parameters:
call Call for which receive media channel has to be started.
pChannel Channel details. This structure has important information such as rtp ip:port and capability describing media type to be received.
Returns:
OO_OK, on success. OO_FAILED, on failure

Definition at line 131 of file ooCapability.h.

typedef int(*) cb_StartTransmitChannel(struct OOH323CallData *call, struct OOLogicalChannel *pChannel)

This callback is used for starting media transmit channel.

This callback function is triggered when transmit media channel has to be started.

Parameters:
call Call for which transmit media channel has to be started.
pChannel Channel details. This structure has important information such as rtp ip:port and capability describing media type to be transmitted.
Returns:
OO_OK, on success. OO_FAILED, on failure

Definition at line 144 of file ooCapability.h.

typedef int(*) cb_StopReceiveChannel(struct OOH323CallData *call, struct OOLogicalChannel *pChannel)

This callback is used for stopping media receive channel.

This callback function is triggered when receive media channel has to be stopped.

Parameters:
call Call for which receive media channel has to be stopped.
pChannel Channel details. This structure has important information such as rtp ip:port and capability describing media type being received.
Returns:
OO_OK, on success. OO_FAILED, on failure

Definition at line 156 of file ooCapability.h.

typedef int(*) cb_StopTransmitChannel(struct OOH323CallData *call, struct OOLogicalChannel *pChannel)

This callback is used for stopping media transmit channel.

This callback function is triggered when transmit media channel has to be stopped.

Parameters:
call Call for which transmit media channel has to be stopped.
pChannel Channel details. This structure has important information such as rtp ip:port and capability describing media type being transmitted.
Returns:
OO_OK, on success. OO_FAILED, on failure

Definition at line 168 of file ooCapability.h.


This file was last modified on 28 May 2010.
Objective Open H.323 Stack, 0.9.1