OPAL  Version 3.18.8
opalplugin.h File Reference
#include <time.h>
Include dependency graph for opalplugin.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  PluginCodec_information
 
struct  PluginCodec_ControlDefn
 
struct  PluginCodec_Option
 
struct  PluginCodec_GetCodecFunction
 
union  PluginCodec_GetCodecFunction::_parm
 
struct  PluginCodec_GetCodecFunction::_parm::_audio
 
struct  PluginCodec_GetCodecFunction::_parm::_video
 
struct  PluginCodec_H323CapabilityExtension
 
struct  PluginCodec_H323NonStandardCodecData
 
struct  PluginCodec_H323GenericParameterDefinition
 
struct  PluginCodec_H323GenericCodecData
 
struct  PluginCodec_H323AudioGSMData
 
struct  PluginCodec_H323AudioG7231AnnexC
 
struct  PluginCodec_Video_FrameHeader
 

Macros

#define _CRT_NONSTDC_NO_DEPRECATE   1
 
#define _CRT_SECURE_NO_WARNINGS   1
 
#define PLUGIN_CODEC_DLL_API
 
#define PWLIB_PLUGIN_API_VERSION   1
 
#define PLUGIN_CODEC_VERSION_FIRST   1
 
#define PLUGIN_CODEC_VERSION_WIDEBAND   2
 
#define PLUGIN_CODEC_VERSION_VIDEO   3
 
#define PLUGIN_CODEC_VERSION_FAX   4
 
#define PLUGIN_CODEC_VERSION_OPTIONS   5
 
#define PLUGIN_CODEC_VERSION_INTERSECT   6
 
#define PLUGIN_CODEC_VERSION_H245_DEF_GEN_PARAM   7
 
#define PLUGIN_CODEC_VERSION   PLUGIN_CODEC_VERSION_H245_DEF_GEN_PARAM
 
#define PLUGIN_CODEC_API_VER_FN   PWLibPlugin_GetAPIVersion
 
#define PLUGIN_CODEC_API_VER_FN_STR   "PWLibPlugin_GetAPIVersion"
 
#define PLUGIN_CODEC_GET_CODEC_FN   OpalCodecPlugin_GetCodecs
 
#define PLUGIN_CODEC_GET_CODEC_FN_STR   "OpalCodecPlugin_GetCodecs"
 
#define PLUGIN_CODEC_API_VER_FN_DECLARE
 
#define PluginCodec_SetChannels(n)   (((n-1)<<PluginCodec_ChannelsPos)&PluginCodec_ChannelsMask)
 
#define PLUGINCODEC_CONTROL_VALID_FOR_PROTOCOL   "valid_for_protocol"
 
#define PLUGINCODEC_CONTROL_GET_CODEC_OPTIONS   "get_codec_options"
 
#define PLUGINCODEC_CONTROL_FREE_CODEC_OPTIONS   "free_codec_options"
 
#define PLUGINCODEC_CONTROL_GET_OUTPUT_DATA_SIZE   "get_output_data_size"
 
#define PLUGINCODEC_CONTROL_SET_CODEC_OPTIONS   "set_codec_options"
 
#define PLUGINCODEC_CONTROL_GET_ACTIVE_OPTIONS   "get_active_options"
 
#define PLUGINCODEC_CONTROL_TO_NORMALISED_OPTIONS   "to_normalised_options"
 
#define PLUGINCODEC_CONTROL_TO_CUSTOMISED_OPTIONS   "to_customised_options"
 
#define PLUGINCODEC_CONTROL_SET_INSTANCE_ID   "set_instance_id"
 
#define PLUGINCODEC_CONTROL_SET_LOG_FUNCTION   "set_log_function"
 
#define PLUGINCODEC_CONTROL_GET_STATISTICS   "get_statistics"
 
#define PLUGINCODEC_CONTROL_TERMINATE_CODEC   "terminate_codec"
 
#define PluginCodec_H245_Collapsing   0x40000000
 
#define PluginCodec_H245_NonCollapsing   0x20000000
 
#define PluginCodec_H245_Unsigned32   0x10000000
 
#define PluginCodec_H245_BooleanArray   0x08000000
 
#define PluginCodec_H245_TCS   0x04000000
 
#define PluginCodec_H245_OLC   0x02000000
 
#define PluginCodec_H245_ReqMode   0x01000000
 
#define PluginCodec_H245_OrdinalMask   0x0000ffff
 
#define PluginCodec_H245_PositionMask   0x00ff0000
 
#define PluginCodec_H245_PositionShift   16
 
#define PLUGINCODEC_OPTION_NEEDS_JITTER   "Needs Jitter"
 
#define PLUGINCODEC_OPTION_CLOCK_RATE   "Clock Rate"
 
#define PLUGINCODEC_OPTION_CHANNELS   "Channels"
 
#define PLUGINCODEC_OPTION_RTP_CLOCK_RATE   "RTP Clock Rate"
 
#define PLUGINCODEC_OPTION_RTP_CHANNELS   "RTP Channels"
 
#define PLUGINCODEC_OPTION_FRAME_TIME   "Frame Time"
 
#define PLUGINCODEC_OPTION_MAX_FRAME_SIZE   "Max Frame Size"
 
#define PLUGINCODEC_OPTION_MAX_TX_PACKET_SIZE   "Max Tx Packet Size" /* Really max PAYLOAD size */
 
#define PLUGINCODEC_OPTION_MAX_BIT_RATE   "Max Bit Rate"
 
#define PLUGINCODEC_OPTION_TARGET_BIT_RATE   "Target Bit Rate"
 
#define PLUGINCODEC_OPTION_RATE_CONTROL_PERIOD   "Rate Control Period"
 
#define PLUGINCODEC_OPTION_RX_FRAMES_PER_PACKET   "Rx Frames Per Packet"
 
#define PLUGINCODEC_OPTION_TX_FRAMES_PER_PACKET   "Tx Frames Per Packet"
 
#define PLUGINCODEC_OPTION_FRAME_WIDTH   "Frame Width"
 
#define PLUGINCODEC_OPTION_FRAME_HEIGHT   "Frame Height"
 
#define PLUGINCODEC_OPTION_MIN_RX_FRAME_WIDTH   "Min Rx Frame Width"
 
#define PLUGINCODEC_OPTION_MIN_RX_FRAME_HEIGHT   "Min Rx Frame Height"
 
#define PLUGINCODEC_OPTION_MAX_RX_FRAME_WIDTH   "Max Rx Frame Width"
 
#define PLUGINCODEC_OPTION_MAX_RX_FRAME_HEIGHT   "Max Rx Frame Height"
 
#define PLUGINCODEC_OPTION_TEMPORAL_SPATIAL_TRADE_OFF   "Temporal Spatial Trade Off"
 
#define PLUGINCODEC_OPTION_TX_KEY_FRAME_PERIOD   "Tx Key Frame Period"
 
#define PLUGINCODEC_OPTION_VOICE_ACTIVITY_DETECT   "VAD"
 
#define PLUGINCODEC_OPTION_DYNAMIC_PACKET_LOSS   "Dynamic Packet Loss"
 
#define PLUGINCODEC_OPTION_PROTOCOL   "Protocol"
 
#define PLUGINCODEC_OPTION_PROTOCOL_H323   "H.323"
 
#define PLUGINCODEC_OPTION_PROTOCOL_SIP   "SIP"
 
#define PLUGINCODEC_RAW_AUDIO   "L16"
 
#define PLUGINCODEC_RAW_VIDEO   "YUV420P"
 
#define PLUGINCODEC_VIDEO_CLOCK   90000
 
#define PLUGINCODEC_MAX_FRAME_RATE   30
 
#define PLUGINCODEC_CIF_WIDTH   352
 
#define PLUGINCODEC_CIF_HEIGHT   288
 
#define PLUGINCODEC_CIF4_WIDTH   (PLUGINCODEC_CIF_WIDTH*2)
 
#define PLUGINCODEC_CIF4_HEIGHT   (PLUGINCODEC_CIF_HEIGHT*2)
 
#define PLUGINCODEC_CIF16_WIDTH   (PLUGINCODEC_CIF_WIDTH*4)
 
#define PLUGINCODEC_CIF16_HEIGHT   (PLUGINCODEC_CIF_HEIGHT*4)
 
#define PLUGINCODEC_QCIF_WIDTH   (PLUGINCODEC_CIF_WIDTH/2)
 
#define PLUGINCODEC_QCIF_HEIGHT   (PLUGINCODEC_CIF_HEIGHT/2)
 
#define PLUGINCODEC_QCIF4_WIDTH   (PLUGINCODEC_CIF4_WIDTH/2)
 
#define PLUGINCODEC_QCIF4_HEIGHT   (PLUGINCODEC_CIF4_HEIGHT/2)
 
#define PLUGINCODEC_SQCIF_WIDTH   128
 
#define PLUGINCODEC_SQCIF_HEIGHT   96
 
#define __TIMESTAMP__   "0"
 
#define PLUGINCODEC_LICENSE(p1, p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p13, p14, p15)   static struct PluginCodec_information MyLicenseInfo = { 0,p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,__TIMESTAMP__ }
 
#define PLUGINCODEC_CODEC_PAIR(MediaFormat,PayloadName,Description,SampleRate,BitsPerSecond,FrameTime,p1, p2, p3, p4, PayloadType,H323type,H323data,CreateEncoder,DestroyEncoder, EncodeMedia,CreateDecoder,DestroyDecoder, DecodeMedia,ControlsTable,Flags,RawFormat,UserData)
 Declare a pair of plug in definition entries for a codec. More...
 
#define PLUGINCODEC_AUDIO_CODEC(MediaFormat,PayloadName,Description,SampleRate,BitsPerSecond,SamplesPerFrame, RecFramesPerPacket, MaxFramesPerPacket, RtpFlags,PayloadType,H323type,H323data,CreateEncoder,DestroyEncoder,EncodeAudio,CreateDecoder,DestroyDecoder,DecodeAudio,ControlsTable)
 
#define PLUGINCODEC_ONE_AUDIO_CODEC(MediaFormat,PayloadName,Description,SampleRate,BitsPerSecond,SamplesPerFrame, RecFramesPerPacket, MaxFramesPerPacket, RtpFlags,PayloadType,H323type,H323data)
 
#define PLUGINCODEC_VIDEO_CODEC(MediaFormat,PayloadName,Description,BitsPerSecond,MaxWidth,MaxHeight,RtpFlags,PayloadType,H323type,H323data,CreateEncoder,DestroyEncoder,EncodeVideo,CreateDecoder,DestroyDecoder,DecodeVideo,ControlsTable)
 
#define PLUGINCODEC_ONE_VIDEO_CODEC(MediaFormat,PayloadName,Description,BitsPerSecond,MaxWidth,MaxHeight,RtpFlags,PayloadType,H323type,H323data)
 
#define OpalPluginCodec_Identifer_AMR   "0.0.8.245.1.1.1"
 
#define PLUGINCODEC_OPTION_OCTET_ALIGNED   "Octet Aligned"
 
#define OpalPluginCodec_Identifer_AMR_NB   "0.0.8.245.1.1.9"
 
#define OpalPluginCodec_Identifer_AMR_WB   "0.0.8.245.1.1.10"
 
#define OpalPluginCodec_Identifer_G7221   "0.0.7.7221.1.0"
 
#define OpalPluginCodec_Identifer_G7221ext   "0.0.7.7221.1.1.0"
 
#define OpalPluginCodec_Identifer_G7222   "0.0.7.7222.1.0"
 
#define OpalPluginCodec_Identifer_iLBC   "0.0.8.245.1.1.11"
 
#define PLUGINCODEC_OPTION_PROFILE   "Profile"
 
#define PLUGINCODEC_OPTION_SIMPLE_PROFILE   "Simple"
 
#define PLUGINCODEC_OPTION_LEVEL   "Level"
 
#define OpalPluginCodec_Identifer_H264_Aligned   "0.0.8.241.0.0.0.0"
 
#define OpalPluginCodec_Identifer_H264_NonInterleaved   "0.0.8.241.0.0.0.1"
 
#define OpalPluginCodec_Identifer_H264_Interleaved   "0.0.8.241.0.0.0.2"
 
#define OpalPluginCodec_Identifer_H264_Generic   "0.0.8.241.0.0.1"
 
#define PLUGINCODEC_OPTION_MAX_NALU_SIZE   "Max NALU Size"
 
#define PLUGINCODEC_OPTION_H264_PACKET_MODE   "Packetization Mode"
 
#define OpalPluginCodec_Identifer_MPEG4   "0.0.8.245.1.0.0"
 
#define PLUGINCODEC_OPTION_MPEG4_ADV_SIMPLE_PROFILE   "Advanced Simple"
 
#define PLUGINCODEC_OPTION_MPEG4_DECODER_CONFIG   "DCI"
 
#define PLUGINCODEC_SQCIF_MPI   "SQCIF MPI"
 
#define PLUGINCODEC_QCIF_MPI   "QCIF MPI"
 
#define PLUGINCODEC_CIF_MPI   "CIF MPI"
 
#define PLUGINCODEC_CIF4_MPI   "CIF4 MPI"
 
#define PLUGINCODEC_CIF16_MPI   "CIF16 MPI"
 
#define PLUGINCODEC_CUSTOM_MPI   "Custom MPI"
 
#define PLUGINCODEC_MPI_DISABLED   33
 
#define PLUGINCODEC_MEDIA_PACKETIZATION   "Media Packetization"
 
#define PLUGINCODEC_MEDIA_PACKETIZATIONS   "Media Packetizations"
 
#define H261_ANNEX_D   "Annex D - Still Image Transmit"
 
#define H263_ANNEX_D   "Annex D - Unrestricted Motion Vector"
 
#define H263_ANNEX_F   "Annex F - Advanced Prediction"
 
#define H263_ANNEX_I   "Annex I - Advanced INTRA Coding"
 
#define H263_ANNEX_J   "Annex J - Deblocking Filter"
 
#define H263_ANNEX_K   "Annex K - Slice Structure"
 
#define H263_ANNEX_N   "Annex N - Reference Picture Selection"
 
#define H263_ANNEX_S   "Annex S - Alternative INTER VLC"
 
#define H263_ANNEX_T   "Annex T - Modified Quantization"
 
#define __INTERNAL_STRINGIZE__(v)   #v
 
#define STRINGIZE(v)   __INTERNAL_STRINGIZE__(v)
 
#define PluginCodec_RTP_MaxPacketSize   (1518-14-4-8-20-16)
 
#define PluginCodec_RTP_MinHeaderSize   (12)
 
#define PluginCodec_RTP_MaxPayloadSize   (PluginCodec_RTP_MaxPacketSize - PluginCodec_RTP_MinHeaderSize)
 
#define PluginCodec_RTP_GetWORD(ptr, off)   ((((unsigned char*)(ptr))[off] << 8) | ((unsigned char*)(ptr))[off+1])
 
#define PluginCodec_RTP_GetDWORD(ptr, off)
 
#define PluginCodec_RTP_SetWORD(ptr, off, val)
 
#define PluginCodec_RTP_SetDWORD(ptr, off, val)
 
#define PluginCodec_RTP_GetCSRCHdrLength(ptr)   ((((unsigned char*)(ptr))[0] & 0x0f)*4 + PluginCodec_RTP_MinHeaderSize)
 
#define PluginCodec_RTP_GetExtHdrLength(ptr)   ((((unsigned char*)(ptr))[0] & 0x10) ? (PluginCodec_RTP_GetWORD(ptr, PluginCodec_RTP_GetCSRCHdrLength(ptr)+2)*4+4) : 0)
 
#define PluginCodec_RTP_GetHeaderLength(ptr)   (PluginCodec_RTP_GetCSRCHdrLength(ptr) + PluginCodec_RTP_GetExtHdrLength(ptr))
 
#define PluginCodec_RTP_GetPayloadPtr(ptr)   ((unsigned char*)(ptr) + PluginCodec_RTP_GetHeaderLength(ptr))
 
#define PluginCodec_RTP_GetPayloadType(ptr)   (((unsigned char*)(ptr))[1] & 0x7f)
 
#define PluginCodec_RTP_SetPayloadType(ptr, type)   (((unsigned char*)(ptr))[1] = (unsigned char)((((unsigned char*)(ptr))[1] & 0x80) | (type & 0x7f)))
 
#define PluginCodec_RTP_GetMarker(ptr)   ((((unsigned char*)(ptr))[1] & 0x80) != 0)
 
#define PluginCodec_RTP_SetMarker(ptr, mark)   (((unsigned char*)(ptr))[1] = (unsigned char)((((unsigned char*)(ptr))[1] & 0x7f) | (mark != 0 ? 0x80 : 0)))
 
#define PluginCodec_RTP_GetTimestamp(ptr)   PluginCodec_RTP_GetDWORD(ptr, 4)
 
#define PluginCodec_RTP_SetTimestamp(ptr, ts)   PluginCodec_RTP_SetDWORD(ptr, 4, ts)
 
#define PluginCodec_RTP_GetSequenceNumber(ptr)   PluginCodec_RTP_GetWORD(ptr, 2)
 
#define PluginCodec_RTP_SetSequenceNumber(ptr, sn)   PluginCodec_RTP_SetWORD(ptr, 2, sn)
 
#define PluginCodec_RTP_GetSSRC(ptr)   PluginCodec_RTP_GetDWORD(ptr, 8)
 
#define PluginCodec_RTP_SetSSRC(ptr, ssrc)   PluginCodec_RTP_SetDWORD(ptr, 8, ssrc)
 
#define PLUGIN_CODEC_IMPLEMENT(name)
 
#define PLUGIN_CODEC_IMPLEMENT_ALL(name, table, ver)
 

Typedefs

typedef int(* PluginCodec_LogFunction )(unsigned level, const char *file, unsigned line, const char *section, const char *log)
 
typedef int(* PluginCodec_MergeFunction )(char **result, const char *dest, const char *src)
 
typedef void(* PluginCodec_FreeFunction )(char *string)
 
typedef unsigned(* PluginCodec_GetAPIVersionFunction )()
 

Enumerations

enum  {
  PluginCodec_License_None = 0, PluginCodec_Licence_None = PluginCodec_License_None, PluginCodec_License_GPL = 1, PluginCodec_License_MPL = 2,
  PluginCodec_License_Freeware = 3, PluginCodec_License_ResearchAndDevelopmentUseOnly = 4, PluginCodec_License_BSD = 5, PluginCodec_License_LGPL = 6,
  PluginCodec_License_NoRoyalties = 0x7f, PluginCodec_License_RoyaltiesRequired = 0x80
}
 
enum  PluginCodec_Flags {
  PluginCodec_MediaTypeMask = 0x000f, PluginCodec_MediaTypeAudio = 0x0000, PluginCodec_MediaTypeVideo = 0x0001, PluginCodec_MediaTypeAudioStreamed = 0x0002,
  PluginCodec_MediaTypeFax = 0x0003, PluginCodec_MediaTypeKnown = 0x000f, PluginCodec_InputTypeMask = 0x0010, PluginCodec_InputTypeRaw = 0x0000,
  PluginCodec_InputTypeRTP = 0x0010, PluginCodec_OutputTypeMask = 0x0020, PluginCodec_OutputTypeRaw = 0x0000, PluginCodec_OutputTypeRTP = 0x0020,
  PluginCodec_RTPTypeMask = 0x0040, PluginCodec_RTPTypeDynamic = 0x0000, PluginCodec_RTPTypeExplicit = 0x0040, PluginCodec_RTPSharedMask = 0x0080,
  PluginCodec_RTPTypeNotShared = 0x0000, PluginCodec_RTPTypeShared = 0x0080, PluginCodec_DecodeSilenceMask = 0x0100, PluginCodec_NoDecodeSilence = 0x0000,
  PluginCodec_DecodeSilence = 0x0100, PluginCodec_EncodeSilenceMask = 0x0200, PluginCodec_NoEncodeSilence = 0x0000, PluginCodec_EncodeSilence = 0x0200,
  PluginCodec_MediaExtensionMask = 0x0400, PluginCodec_MediaTypeExtVideo = 0x0400, PluginCodec_ComfortNoiseMask = 0x0800, PluginCodec_ComfortNoise = 0x0800,
  PluginCodec_ErrorConcealmentMask = 0x0800, PluginCodec_ErrorConcealment = 0x0800, PluginCodec_EmptyPayloadMask = 0x1000, PluginCodec_EmptyPayload = 0x1000,
  PluginCodec_OtherPayloadMask = 0x2000, PluginCodec_OtherPayload = 0x2000, PluginCodec_BitsPerSamplePos = 12, PluginCodec_BitsPerSampleMask = 0xf000,
  PluginCodec_ChannelsPos = 16, PluginCodec_ChannelsMask = 0x003f0000
}
 
enum  PluginCodec_CoderFlags { PluginCodec_CoderSilenceFrame = 1, PluginCodec_CoderForceIFrame = 2, PluginCodec_CoderPacketLoss = 4 }
 
enum  PluginCodec_ReturnCoderFlags { PluginCodec_ReturnCoderLastFrame = 1, PluginCodec_ReturnCoderIFrame = 2, PluginCodec_ReturnCoderRequestIFrame = 4, PluginCodec_ReturnCoderBufferTooSmall = 8 }
 
enum  PluginCodec_OptionTypes {
  PluginCodec_StringOption, PluginCodec_BoolOption, PluginCodec_IntegerOption, PluginCodec_RealOption,
  PluginCodec_EnumOption, PluginCodec_OctetsOption, PluginCodec_NumOptionTypes
}
 
enum  PluginCodec_OptionMerge {
  PluginCodec_NoMerge, PluginCodec_MinMerge, PluginCodec_MaxMerge, PluginCodec_EqualMerge,
  PluginCodec_NotEqualMerge, PluginCodec_AlwaysMerge, PluginCodec_CustomMerge, PluginCodec_IntersectionMerge,
  PluginCodec_AndMerge = PluginCodec_MinMerge, PluginCodec_OrMerge = PluginCodec_MaxMerge
}
 
enum  {
  PluginCodec_H323Codec_undefined, PluginCodec_H323Codec_programmed, PluginCodec_H323Codec_nonStandard, PluginCodec_H323Codec_generic,
  PluginCodec_H323AudioCodec_g711Alaw_64k, PluginCodec_H323AudioCodec_g711Alaw_56k, PluginCodec_H323AudioCodec_g711Ulaw_64k, PluginCodec_H323AudioCodec_g711Ulaw_56k,
  PluginCodec_H323AudioCodec_g722_64k, PluginCodec_H323AudioCodec_g722_56k, PluginCodec_H323AudioCodec_g722_48k, PluginCodec_H323AudioCodec_g7231,
  PluginCodec_H323AudioCodec_g728, PluginCodec_H323AudioCodec_g729, PluginCodec_H323AudioCodec_g729AnnexA, PluginCodec_H323AudioCodec_is11172,
  PluginCodec_H323AudioCodec_is13818Audio, PluginCodec_H323AudioCodec_g729wAnnexB, PluginCodec_H323AudioCodec_g729AnnexAwAnnexB, PluginCodec_H323AudioCodec_g7231AnnexC,
  PluginCodec_H323AudioCodec_gsmFullRate, PluginCodec_H323AudioCodec_gsmHalfRate, PluginCodec_H323AudioCodec_gsmEnhancedFullRate, PluginCodec_H323AudioCodec_g729Extensions,
  PluginCodec_H323VideoCodec_h261, PluginCodec_H323VideoCodec_h262, PluginCodec_H323VideoCodec_h263, PluginCodec_H323VideoCodec_is11172,
  PluginCodec_H323VideoCodec_Extended, PluginCodec_H323T38Codec, PluginCodec_H323Codec_NoH323 = 0xff
}
 

Macro Definition Documentation

#define __INTERNAL_STRINGIZE__ (   v)    #v
#define __TIMESTAMP__   "0"
#define _CRT_NONSTDC_NO_DEPRECATE   1
#define _CRT_SECURE_NO_WARNINGS   1
#define H261_ANNEX_D   "Annex D - Still Image Transmit"
#define H263_ANNEX_D   "Annex D - Unrestricted Motion Vector"
#define H263_ANNEX_F   "Annex F - Advanced Prediction"
#define H263_ANNEX_I   "Annex I - Advanced INTRA Coding"
#define H263_ANNEX_J   "Annex J - Deblocking Filter"
#define H263_ANNEX_K   "Annex K - Slice Structure"
#define H263_ANNEX_N   "Annex N - Reference Picture Selection"
#define H263_ANNEX_S   "Annex S - Alternative INTER VLC"
#define H263_ANNEX_T   "Annex T - Modified Quantization"
#define OpalPluginCodec_Identifer_AMR   "0.0.8.245.1.1.1"
#define OpalPluginCodec_Identifer_AMR_NB   "0.0.8.245.1.1.9"
#define OpalPluginCodec_Identifer_AMR_WB   "0.0.8.245.1.1.10"
#define OpalPluginCodec_Identifer_G7221   "0.0.7.7221.1.0"
#define OpalPluginCodec_Identifer_G7221ext   "0.0.7.7221.1.1.0"
#define OpalPluginCodec_Identifer_G7222   "0.0.7.7222.1.0"
#define OpalPluginCodec_Identifer_H264_Aligned   "0.0.8.241.0.0.0.0"
#define OpalPluginCodec_Identifer_H264_Generic   "0.0.8.241.0.0.1"
#define OpalPluginCodec_Identifer_H264_Interleaved   "0.0.8.241.0.0.0.2"
#define OpalPluginCodec_Identifer_H264_NonInterleaved   "0.0.8.241.0.0.0.1"
#define OpalPluginCodec_Identifer_iLBC   "0.0.8.245.1.1.11"
#define OpalPluginCodec_Identifer_MPEG4   "0.0.8.245.1.0.0"
#define PLUGIN_CODEC_API_VER_FN   PWLibPlugin_GetAPIVersion
#define PLUGIN_CODEC_API_VER_FN_DECLARE
Value:
#define PLUGIN_CODEC_API_VER_FN
Definition: opalplugin.h:92
#define PWLIB_PLUGIN_API_VERSION
Definition: opalplugin.h:80
#define PLUGIN_CODEC_DLL_API
Definition: opalplugin.h:73
#define PLUGIN_CODEC_API_VER_FN_STR   "PWLibPlugin_GetAPIVersion"
#define PLUGIN_CODEC_DLL_API
#define PLUGIN_CODEC_GET_CODEC_FN   OpalCodecPlugin_GetCodecs
#define PLUGIN_CODEC_GET_CODEC_FN_STR   "OpalCodecPlugin_GetCodecs"
#define PLUGIN_CODEC_IMPLEMENT (   name)
Value:
#define PLUGIN_CODEC_API_VER_FN
Definition: opalplugin.h:92
#define PWLIB_PLUGIN_API_VERSION
Definition: opalplugin.h:80
#define PLUGIN_CODEC_DLL_API
Definition: opalplugin.h:73
#define PLUGIN_CODEC_IMPLEMENT_ALL (   name,
  table,
  ver 
)
Value:
{ *count = sizeof(table)/sizeof(struct PluginCodec_Definition); return version < ver ? NULL : table; }
Definition: opalplugin.h:339
#define PLUGIN_CODEC_GET_CODEC_FN
Definition: opalplugin.h:95
#define PLUGIN_CODEC_IMPLEMENT(name)
Definition: opalplugin.h:1004
unsigned int version
Definition: opalplugin.h:340
#define PLUGIN_CODEC_DLL_API
Definition: opalplugin.h:73
#define PLUGIN_CODEC_VERSION   PLUGIN_CODEC_VERSION_H245_DEF_GEN_PARAM
#define PLUGIN_CODEC_VERSION_FAX   4
#define PLUGIN_CODEC_VERSION_FIRST   1
#define PLUGIN_CODEC_VERSION_H245_DEF_GEN_PARAM   7
#define PLUGIN_CODEC_VERSION_INTERSECT   6
#define PLUGIN_CODEC_VERSION_OPTIONS   5
#define PLUGIN_CODEC_VERSION_VIDEO   3
#define PLUGIN_CODEC_VERSION_WIDEBAND   2
#define PLUGINCODEC_AUDIO_CODEC (   MediaFormat,
  PayloadName,
  Description,
  SampleRate,
  BitsPerSecond,
  SamplesPerFrame,
  RecFramesPerPacket,
  MaxFramesPerPacket,
  RtpFlags,
  PayloadType,
  H323type,
  H323data,
  CreateEncoder,
  DestroyEncoder,
  EncodeAudio,
  CreateDecoder,
  DestroyDecoder,
  DecodeAudio,
  ControlsTable 
)
Value:
PLUGINCODEC_CODEC_PAIR(MediaFormat, \
PayloadName, \
Description, \
SampleRate, \
BitsPerSecond, \
(SamplesPerFrame)*1000000/(SampleRate), \
SamplesPerFrame, \
(BitsPerSecond)*(SampleRate)/(SamplesPerFrame)/8, \
RecFramesPerPacket, \
MaxFramesPerPacket, \
PayloadType, \
H323type, \
H323data, \
CreateEncoder, \
DestroyEncoder, \
EncodeAudio, \
CreateDecoder, \
DestroyDecoder, \
DecodeAudio, \
ControlsTable, \
PluginCodec_MediaTypeAudio | /* audio codec */ \
PluginCodec_InputTypeRaw | /* raw input data */ \
PluginCodec_OutputTypeRaw | /* raw output data */ \
(RtpFlags), \
NULL)
#define PLUGINCODEC_CODEC_PAIR(MediaFormat,PayloadName,Description,SampleRate,BitsPerSecond,FrameTime,p1, p2, p3, p4, PayloadType,H323type,H323data,CreateEncoder,DestroyEncoder, EncodeMedia,CreateDecoder,DestroyDecoder, DecodeMedia,ControlsTable,Flags,RawFormat,UserData)
Declare a pair of plug in definition entries for a codec.
Definition: opalplugin.h:448
Definition: opalplugin.h:152
Definition: opalplugin.h:145
Definition: opalplugin.h:156
#define PLUGINCODEC_RAW_AUDIO
Definition: opalplugin.h:404
#define PLUGINCODEC_CIF16_HEIGHT   (PLUGINCODEC_CIF_HEIGHT*4)
#define PLUGINCODEC_CIF16_MPI   "CIF16 MPI"
#define PLUGINCODEC_CIF16_WIDTH   (PLUGINCODEC_CIF_WIDTH*4)
#define PLUGINCODEC_CIF4_HEIGHT   (PLUGINCODEC_CIF_HEIGHT*2)
#define PLUGINCODEC_CIF4_MPI   "CIF4 MPI"
#define PLUGINCODEC_CIF4_WIDTH   (PLUGINCODEC_CIF_WIDTH*2)
#define PLUGINCODEC_CIF_HEIGHT   288
#define PLUGINCODEC_CIF_MPI   "CIF MPI"
#define PLUGINCODEC_CIF_WIDTH   352
#define PLUGINCODEC_CODEC_PAIR (   MediaFormat,
  PayloadName,
  Description,
  SampleRate,
  BitsPerSecond,
  FrameTime,
  p1,
  p2,
  p3,
  p4,
  PayloadType,
  H323type,
  H323data,
  CreateEncoder,
  DestroyEncoder,
  EncodeMedia,
  CreateDecoder,
  DestroyDecoder,
  DecodeMedia,
  ControlsTable,
  Flags,
  RawFormat,
  UserData 
)
Value:
{ \
PLUGIN_CODEC_VERSION, &MyLicenseInfo, Flags, Description, RawFormat, MediaFormat, UserData, \
SampleRate, BitsPerSecond, FrameTime, {{ p1,p2,p3,p4 }}, PayloadType, PayloadName, \
CreateEncoder, DestroyEncoder, EncodeMedia, ControlsTable, H323type, H323data \
}, \
{ \
PLUGIN_CODEC_VERSION, &MyLicenseInfo, Flags, Description, MediaFormat, RawFormat, UserData, \
SampleRate, BitsPerSecond, FrameTime, {{ p1,p2,p3,p4 }}, PayloadType, PayloadName, \
CreateDecoder, DestroyDecoder, DecodeMedia, ControlsTable, H323type, H323data \
}
#define PLUGIN_CODEC_VERSION
Definition: opalplugin.h:90

Declare a pair of plug in definition entries for a codec.

< Media Format < IANA RTP payload code < Description text < Sample rate < Maximum bits per second < Microseconds per frame < IANA RTP payload type code < h323CapabilityType enumeration < Data to go with h323CapabilityType < Create encoder function < Destroy encoder function < Encode media function < Create decoder function < Destroy decoder function < Decode media function < Codec controls tables < Flags < Raw format < User Data Media Format IANA RTP payload code Description text Sample rate Maximum bits per second Samples per audio frame Recommended frames per packet Maximum frames per packet Extra flags typically if RTP payload type is fixed IANA RTP payload type code h323CapabilityType enumeration Data to go with h323CapabilityType Create encoder function Destroy encoder function Encode media function Create decoder function Destroy decoder function Decode media function Codec controls tables Media Format IANA RTP payload code Description text Sample rate Maximum bits per second Samples per audio frame Recommended frames per packet Maximum frames per packet Extra flags typically if RTP payload type is fixed IANA RTP payload type code h323CapabilityType enumeration Data to go with h323CapabilityType Media Format IANA RTP payload code Description text Maximum bits per second Max resolution (width) Max resolution (height) Extra flags typically if RTP payload type is fixed IANA RTP payload type code h323CapabilityType enumeration Data to go with h323CapabilityType Create encoder function Destroy encoder function Encode media function Create decoder function Destroy decoder function Decode media function Codec controls tables Media Format IANA RTP payload code Description text Maximum bits per second Max resolution (width) Max resolution (height) Extra flags typically if RTP payload type is fixed IANA RTP payload type code h323CapabilityType enumeration Data to go with h323CapabilityType

#define PLUGINCODEC_CONTROL_FREE_CODEC_OPTIONS   "free_codec_options"
#define PLUGINCODEC_CONTROL_GET_ACTIVE_OPTIONS   "get_active_options"
#define PLUGINCODEC_CONTROL_GET_CODEC_OPTIONS   "get_codec_options"
#define PLUGINCODEC_CONTROL_GET_OUTPUT_DATA_SIZE   "get_output_data_size"
#define PLUGINCODEC_CONTROL_GET_STATISTICS   "get_statistics"
#define PLUGINCODEC_CONTROL_SET_CODEC_OPTIONS   "set_codec_options"
#define PLUGINCODEC_CONTROL_SET_INSTANCE_ID   "set_instance_id"
#define PLUGINCODEC_CONTROL_SET_LOG_FUNCTION   "set_log_function"
#define PLUGINCODEC_CONTROL_TERMINATE_CODEC   "terminate_codec"
#define PLUGINCODEC_CONTROL_TO_CUSTOMISED_OPTIONS   "to_customised_options"
#define PLUGINCODEC_CONTROL_TO_NORMALISED_OPTIONS   "to_normalised_options"
#define PLUGINCODEC_CONTROL_VALID_FOR_PROTOCOL   "valid_for_protocol"
#define PLUGINCODEC_CUSTOM_MPI   "Custom MPI"
#define PluginCodec_H245_BooleanArray   0x08000000
#define PluginCodec_H245_Collapsing   0x40000000
#define PluginCodec_H245_NonCollapsing   0x20000000
#define PluginCodec_H245_OLC   0x02000000
#define PluginCodec_H245_OrdinalMask   0x0000ffff
#define PluginCodec_H245_PositionMask   0x00ff0000
#define PluginCodec_H245_PositionShift   16
#define PluginCodec_H245_ReqMode   0x01000000
#define PluginCodec_H245_TCS   0x04000000
#define PluginCodec_H245_Unsigned32   0x10000000
#define PLUGINCODEC_LICENSE (   p1,
  p2,
  p3,
  p4,
  p5,
  p6,
  p7,
  p8,
  p9,
  p10,
  p11,
  p12,
  p13,
  p14,
  p15 
)    static struct PluginCodec_information MyLicenseInfo = { 0,p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,__TIMESTAMP__ }
#define PLUGINCODEC_MAX_FRAME_RATE   30
#define PLUGINCODEC_MEDIA_PACKETIZATION   "Media Packetization"
#define PLUGINCODEC_MEDIA_PACKETIZATIONS   "Media Packetizations"
#define PLUGINCODEC_MPI_DISABLED   33
#define PLUGINCODEC_ONE_AUDIO_CODEC (   MediaFormat,
  PayloadName,
  Description,
  SampleRate,
  BitsPerSecond,
  SamplesPerFrame,
  RecFramesPerPacket,
  MaxFramesPerPacket,
  RtpFlags,
  PayloadType,
  H323type,
  H323data 
)
Value:
static struct PluginCodec_Definition CodecDefinitionTable[] = { \
PayloadName, \
Description, \
SampleRate, \
BitsPerSecond, \
SamplesPerFrame, \
RecFramesPerPacket, \
MaxFramesPerPacket, \
RtpFlags, \
PayloadType, \
H323type, \
H323data, \
MyCreateEncoder, \
MyDestroyEncoder, \
MyEncodeAudio, \
MyCreateDecoder, \
MyDestroyDecoder, \
MyDecodeAudio, \
MyControlsTable \
) \
}
Definition: opalplugin.h:339
#define PLUGINCODEC_AUDIO_CODEC(MediaFormat,PayloadName,Description,SampleRate,BitsPerSecond,SamplesPerFrame, RecFramesPerPacket, MaxFramesPerPacket, RtpFlags,PayloadType,H323type,H323data,CreateEncoder,DestroyEncoder,EncodeAudio,CreateDecoder,DestroyDecoder,DecodeAudio,ControlsTable)
#define PLUGINCODEC_ONE_VIDEO_CODEC (   MediaFormat,
  PayloadName,
  Description,
  BitsPerSecond,
  MaxWidth,
  MaxHeight,
  RtpFlags,
  PayloadType,
  H323type,
  H323data 
)
Value:
static struct PluginCodec_Definition CodecDefinitionTable[] = { \
PayloadName, \
Description, \
BitsPerSecond, \
MaxWidth, \
MaxHeight, \
RtpFlags, \
PayloadType, \
H323type, \
H323data, \
CreateEncoder, \
DestroyEncoder, \
EncodeAudio, \
CreateDecoder, \
DestroyDecoder, \
DecodeAudio, \
ControlsTable \
) \
}
Definition: opalplugin.h:339
#define PLUGINCODEC_VIDEO_CODEC(MediaFormat,PayloadName,Description,BitsPerSecond,MaxWidth,MaxHeight,RtpFlags,PayloadType,H323type,H323data,CreateEncoder,DestroyEncoder,EncodeVideo,CreateDecoder,DestroyDecoder,DecodeVideo,ControlsTable)
#define PLUGINCODEC_OPTION_CHANNELS   "Channels"
#define PLUGINCODEC_OPTION_CLOCK_RATE   "Clock Rate"
#define PLUGINCODEC_OPTION_DYNAMIC_PACKET_LOSS   "Dynamic Packet Loss"
#define PLUGINCODEC_OPTION_FRAME_HEIGHT   "Frame Height"
#define PLUGINCODEC_OPTION_FRAME_TIME   "Frame Time"
#define PLUGINCODEC_OPTION_FRAME_WIDTH   "Frame Width"
#define PLUGINCODEC_OPTION_H264_PACKET_MODE   "Packetization Mode"
#define PLUGINCODEC_OPTION_LEVEL   "Level"
#define PLUGINCODEC_OPTION_MAX_BIT_RATE   "Max Bit Rate"
#define PLUGINCODEC_OPTION_MAX_FRAME_SIZE   "Max Frame Size"
#define PLUGINCODEC_OPTION_MAX_NALU_SIZE   "Max NALU Size"
#define PLUGINCODEC_OPTION_MAX_RX_FRAME_HEIGHT   "Max Rx Frame Height"
#define PLUGINCODEC_OPTION_MAX_RX_FRAME_WIDTH   "Max Rx Frame Width"
#define PLUGINCODEC_OPTION_MAX_TX_PACKET_SIZE   "Max Tx Packet Size" /* Really max PAYLOAD size */
#define PLUGINCODEC_OPTION_MIN_RX_FRAME_HEIGHT   "Min Rx Frame Height"
#define PLUGINCODEC_OPTION_MIN_RX_FRAME_WIDTH   "Min Rx Frame Width"
#define PLUGINCODEC_OPTION_MPEG4_ADV_SIMPLE_PROFILE   "Advanced Simple"
#define PLUGINCODEC_OPTION_MPEG4_DECODER_CONFIG   "DCI"
#define PLUGINCODEC_OPTION_NEEDS_JITTER   "Needs Jitter"
#define PLUGINCODEC_OPTION_OCTET_ALIGNED   "Octet Aligned"
#define PLUGINCODEC_OPTION_PROFILE   "Profile"
#define PLUGINCODEC_OPTION_PROTOCOL   "Protocol"
#define PLUGINCODEC_OPTION_PROTOCOL_H323   "H.323"
#define PLUGINCODEC_OPTION_PROTOCOL_SIP   "SIP"
#define PLUGINCODEC_OPTION_RATE_CONTROL_PERIOD   "Rate Control Period"
#define PLUGINCODEC_OPTION_RTP_CHANNELS   "RTP Channels"
#define PLUGINCODEC_OPTION_RTP_CLOCK_RATE   "RTP Clock Rate"
#define PLUGINCODEC_OPTION_RX_FRAMES_PER_PACKET   "Rx Frames Per Packet"
#define PLUGINCODEC_OPTION_SIMPLE_PROFILE   "Simple"
#define PLUGINCODEC_OPTION_TARGET_BIT_RATE   "Target Bit Rate"
#define PLUGINCODEC_OPTION_TEMPORAL_SPATIAL_TRADE_OFF   "Temporal Spatial Trade Off"
#define PLUGINCODEC_OPTION_TX_FRAMES_PER_PACKET   "Tx Frames Per Packet"
#define PLUGINCODEC_OPTION_TX_KEY_FRAME_PERIOD   "Tx Key Frame Period"
#define PLUGINCODEC_OPTION_VOICE_ACTIVITY_DETECT   "VAD"
#define PLUGINCODEC_QCIF4_HEIGHT   (PLUGINCODEC_CIF4_HEIGHT/2)
#define PLUGINCODEC_QCIF4_WIDTH   (PLUGINCODEC_CIF4_WIDTH/2)
#define PLUGINCODEC_QCIF_HEIGHT   (PLUGINCODEC_CIF_HEIGHT/2)
#define PLUGINCODEC_QCIF_MPI   "QCIF MPI"
#define PLUGINCODEC_QCIF_WIDTH   (PLUGINCODEC_CIF_WIDTH/2)
#define PLUGINCODEC_RAW_AUDIO   "L16"
#define PLUGINCODEC_RAW_VIDEO   "YUV420P"
#define PluginCodec_RTP_GetCSRCHdrLength (   ptr)    ((((unsigned char*)(ptr))[0] & 0x0f)*4 + PluginCodec_RTP_MinHeaderSize)
#define PluginCodec_RTP_GetDWORD (   ptr,
  off 
)
Value:
((((unsigned char*)(ptr))[off ] << 24)|\
(((unsigned char*)(ptr))[off+1] << 16)|\
(((unsigned char*)(ptr))[off+2] << 8 )|\
((unsigned char*)(ptr))[off+3])
#define PluginCodec_RTP_GetExtHdrLength (   ptr)    ((((unsigned char*)(ptr))[0] & 0x10) ? (PluginCodec_RTP_GetWORD(ptr, PluginCodec_RTP_GetCSRCHdrLength(ptr)+2)*4+4) : 0)
#define PluginCodec_RTP_GetHeaderLength (   ptr)    (PluginCodec_RTP_GetCSRCHdrLength(ptr) + PluginCodec_RTP_GetExtHdrLength(ptr))
#define PluginCodec_RTP_GetMarker (   ptr)    ((((unsigned char*)(ptr))[1] & 0x80) != 0)
#define PluginCodec_RTP_GetPayloadPtr (   ptr)    ((unsigned char*)(ptr) + PluginCodec_RTP_GetHeaderLength(ptr))
#define PluginCodec_RTP_GetPayloadType (   ptr)    (((unsigned char*)(ptr))[1] & 0x7f)
#define PluginCodec_RTP_GetSequenceNumber (   ptr)    PluginCodec_RTP_GetWORD(ptr, 2)
#define PluginCodec_RTP_GetSSRC (   ptr)    PluginCodec_RTP_GetDWORD(ptr, 8)
#define PluginCodec_RTP_GetTimestamp (   ptr)    PluginCodec_RTP_GetDWORD(ptr, 4)
#define PluginCodec_RTP_GetWORD (   ptr,
  off 
)    ((((unsigned char*)(ptr))[off] << 8) | ((unsigned char*)(ptr))[off+1])
#define PluginCodec_RTP_MaxPacketSize   (1518-14-4-8-20-16)
#define PluginCodec_RTP_MaxPayloadSize   (PluginCodec_RTP_MaxPacketSize - PluginCodec_RTP_MinHeaderSize)
#define PluginCodec_RTP_MinHeaderSize   (12)
#define PluginCodec_RTP_SetDWORD (   ptr,
  off,
  val 
)
Value:
((((unsigned char*)(ptr))[off ] = (unsigned char)((val) >> 24)),\
(((unsigned char*)(ptr))[off+1] = (unsigned char)((val) >> 16)),\
(((unsigned char*)(ptr))[off+2] = (unsigned char)((val) >> 8 )),\
(((unsigned char*)(ptr))[off+3] = (unsigned char) (val) ))
#define PluginCodec_RTP_SetMarker (   ptr,
  mark 
)    (((unsigned char*)(ptr))[1] = (unsigned char)((((unsigned char*)(ptr))[1] & 0x7f) | (mark != 0 ? 0x80 : 0)))
#define PluginCodec_RTP_SetPayloadType (   ptr,
  type 
)    (((unsigned char*)(ptr))[1] = (unsigned char)((((unsigned char*)(ptr))[1] & 0x80) | (type & 0x7f)))
#define PluginCodec_RTP_SetSequenceNumber (   ptr,
  sn 
)    PluginCodec_RTP_SetWORD(ptr, 2, sn)
#define PluginCodec_RTP_SetSSRC (   ptr,
  ssrc 
)    PluginCodec_RTP_SetDWORD(ptr, 8, ssrc)
#define PluginCodec_RTP_SetTimestamp (   ptr,
  ts 
)    PluginCodec_RTP_SetDWORD(ptr, 4, ts)
#define PluginCodec_RTP_SetWORD (   ptr,
  off,
  val 
)
Value:
((((unsigned char*)(ptr))[off ] = (unsigned char)((val) >> 8 )),\
(((unsigned char*)(ptr))[off+1] = (unsigned char) (val) ))

Referenced by PluginCodec_RTP::SetExtended().

#define PluginCodec_SetChannels (   n)    (((n-1)<<PluginCodec_ChannelsPos)&PluginCodec_ChannelsMask)
#define PLUGINCODEC_SQCIF_HEIGHT   96
#define PLUGINCODEC_SQCIF_MPI   "SQCIF MPI"
#define PLUGINCODEC_SQCIF_WIDTH   128
#define PLUGINCODEC_VIDEO_CLOCK   90000
#define PLUGINCODEC_VIDEO_CODEC (   MediaFormat,
  PayloadName,
  Description,
  BitsPerSecond,
  MaxWidth,
  MaxHeight,
  RtpFlags,
  PayloadType,
  H323type,
  H323data,
  CreateEncoder,
  DestroyEncoder,
  EncodeVideo,
  CreateDecoder,
  DestroyDecoder,
  DecodeVideo,
  ControlsTable 
)
Value:
PLUGINCODEC_CODEC_PAIR(MediaFormat, \
PayloadName, \
Description, \
SampleRate, \
BitsPerSecond, \
MaxWidth, \
MaxHeight, \
PayloadType, \
H323type, \
H323data, \
CreateEncoder, \
DestroyEncoder, \
EncodeVideo, \
CreateDecoder, \
DestroyDecoder, \
DecodeVideo, \
ControlsTable, \
PluginCodec_MediaTypeVideo | /* video codec */ \
PluginCodec_InputTypeRTP | /* RTP input data */ \
PluginCodec_OutputTypeRTP | /* RTP output data */ \
(RtpFlags), \
NULL)
#define PLUGINCODEC_CODEC_PAIR(MediaFormat,PayloadName,Description,SampleRate,BitsPerSecond,FrameTime,p1, p2, p3, p4, PayloadType,H323type,H323data,CreateEncoder,DestroyEncoder, EncodeMedia,CreateDecoder,DestroyDecoder, DecodeMedia,ControlsTable,Flags,RawFormat,UserData)
Declare a pair of plug in definition entries for a codec.
Definition: opalplugin.h:448
#define PLUGINCODEC_RAW_VIDEO
Definition: opalplugin.h:405
#define PLUGINCODEC_MAX_FRAME_RATE
Definition: opalplugin.h:407
Definition: opalplugin.h:146
Definition: opalplugin.h:153
Definition: opalplugin.h:157
#define PWLIB_PLUGIN_API_VERSION   1
#define STRINGIZE (   v)    __INTERNAL_STRINGIZE__(v)

Typedef Documentation

typedef void(* PluginCodec_FreeFunction)(char *string)
typedef unsigned(* PluginCodec_GetAPIVersionFunction)()
typedef int(* PluginCodec_LogFunction)(unsigned level, const char *file, unsigned line, const char *section, const char *log)
typedef int(* PluginCodec_MergeFunction)(char **result, const char *dest, const char *src)

Enumeration Type Documentation

anonymous enum
Enumerator
PluginCodec_License_None 
PluginCodec_Licence_None 
PluginCodec_License_GPL 
PluginCodec_License_MPL 
PluginCodec_License_Freeware 
PluginCodec_License_ResearchAndDevelopmentUseOnly 
PluginCodec_License_BSD 
PluginCodec_License_LGPL 
PluginCodec_License_NoRoyalties 
PluginCodec_License_RoyaltiesRequired 
anonymous enum
Enumerator
PluginCodec_H323Codec_undefined 
PluginCodec_H323Codec_programmed 
PluginCodec_H323Codec_nonStandard 
PluginCodec_H323Codec_generic 
PluginCodec_H323AudioCodec_g711Alaw_64k 
PluginCodec_H323AudioCodec_g711Alaw_56k 
PluginCodec_H323AudioCodec_g711Ulaw_64k 
PluginCodec_H323AudioCodec_g711Ulaw_56k 
PluginCodec_H323AudioCodec_g722_64k 
PluginCodec_H323AudioCodec_g722_56k 
PluginCodec_H323AudioCodec_g722_48k 
PluginCodec_H323AudioCodec_g7231 
PluginCodec_H323AudioCodec_g728 
PluginCodec_H323AudioCodec_g729 
PluginCodec_H323AudioCodec_g729AnnexA 
PluginCodec_H323AudioCodec_is11172 
PluginCodec_H323AudioCodec_is13818Audio 
PluginCodec_H323AudioCodec_g729wAnnexB 
PluginCodec_H323AudioCodec_g729AnnexAwAnnexB 
PluginCodec_H323AudioCodec_g7231AnnexC 
PluginCodec_H323AudioCodec_gsmFullRate 
PluginCodec_H323AudioCodec_gsmHalfRate 
PluginCodec_H323AudioCodec_gsmEnhancedFullRate 
PluginCodec_H323AudioCodec_g729Extensions 
PluginCodec_H323VideoCodec_h261 
PluginCodec_H323VideoCodec_h262 
PluginCodec_H323VideoCodec_h263 
PluginCodec_H323VideoCodec_is11172 
PluginCodec_H323VideoCodec_Extended 
PluginCodec_H323T38Codec 
PluginCodec_H323Codec_NoH323 
Enumerator
PluginCodec_CoderSilenceFrame 
PluginCodec_CoderForceIFrame 
PluginCodec_CoderPacketLoss 
Enumerator
PluginCodec_MediaTypeMask 
PluginCodec_MediaTypeAudio 
PluginCodec_MediaTypeVideo 
PluginCodec_MediaTypeAudioStreamed 
PluginCodec_MediaTypeFax 
PluginCodec_MediaTypeKnown 
PluginCodec_InputTypeMask 
PluginCodec_InputTypeRaw 
PluginCodec_InputTypeRTP 
PluginCodec_OutputTypeMask 
PluginCodec_OutputTypeRaw 
PluginCodec_OutputTypeRTP 
PluginCodec_RTPTypeMask 
PluginCodec_RTPTypeDynamic 
PluginCodec_RTPTypeExplicit 
PluginCodec_RTPSharedMask 
PluginCodec_RTPTypeNotShared 
PluginCodec_RTPTypeShared 
PluginCodec_DecodeSilenceMask 
PluginCodec_NoDecodeSilence 
PluginCodec_DecodeSilence 
PluginCodec_EncodeSilenceMask 
PluginCodec_NoEncodeSilence 
PluginCodec_EncodeSilence 
PluginCodec_MediaExtensionMask 
PluginCodec_MediaTypeExtVideo 
PluginCodec_ComfortNoiseMask 
PluginCodec_ComfortNoise 
PluginCodec_ErrorConcealmentMask 
PluginCodec_ErrorConcealment 
PluginCodec_EmptyPayloadMask 
PluginCodec_EmptyPayload 
PluginCodec_OtherPayloadMask 
PluginCodec_OtherPayload 
PluginCodec_BitsPerSamplePos 
PluginCodec_BitsPerSampleMask 
PluginCodec_ChannelsPos 
PluginCodec_ChannelsMask 
Enumerator
PluginCodec_NoMerge 
PluginCodec_MinMerge 
PluginCodec_MaxMerge 
PluginCodec_EqualMerge 
PluginCodec_NotEqualMerge 
PluginCodec_AlwaysMerge 
PluginCodec_CustomMerge 
PluginCodec_IntersectionMerge 
PluginCodec_AndMerge 
PluginCodec_OrMerge 
Enumerator
PluginCodec_StringOption 
PluginCodec_BoolOption 
PluginCodec_IntegerOption 
PluginCodec_RealOption 
PluginCodec_EnumOption 
PluginCodec_OctetsOption 
PluginCodec_NumOptionTypes 
Enumerator
PluginCodec_ReturnCoderLastFrame 
PluginCodec_ReturnCoderIFrame 
PluginCodec_ReturnCoderRequestIFrame 
PluginCodec_ReturnCoderBufferTooSmall