39 #ifndef OPAL_CODEC_OPALPLUGIN_H
40 #define OPAL_CODEC_OPALPLUGIN_H
46 #ifndef _CRT_NONSTDC_NO_DEPRECATE
47 #define _CRT_NONSTDC_NO_DEPRECATE 1
50 #ifndef _CRT_SECURE_NO_WARNINGS
51 #define _CRT_SECURE_NO_WARNINGS 1
57 #pragma warning(disable:4201)
61 # ifdef PLUGIN_CODEC_DLL_EXPORTS
62 # define PLUGIN_CODEC_DLL_API __declspec(dllexport)
64 # define PLUGIN_CODEC_DLL_API __declspec(dllimport)
67 #if !defined(strcasecmp)
68 #define strcasecmp stricmp
73 #define PLUGIN_CODEC_DLL_API
77 #ifdef PWLIB_PLUGIN_API_VERSION
78 #undef PWLIB_PLUGIN_API_VERSION
80 #define PWLIB_PLUGIN_API_VERSION 1
82 #define PLUGIN_CODEC_VERSION_FIRST 1 // initial version
83 #define PLUGIN_CODEC_VERSION_WIDEBAND 2 // added wideband
84 #define PLUGIN_CODEC_VERSION_VIDEO 3 // added video
85 #define PLUGIN_CODEC_VERSION_FAX 4 // added fax
86 #define PLUGIN_CODEC_VERSION_OPTIONS 5 // added options handling
87 #define PLUGIN_CODEC_VERSION_INTERSECT 6 // added media option intersection merge functionality
88 #define PLUGIN_CODEC_VERSION_H245_DEF_GEN_PARAM 7 // added suppression of H.245 generic parameters via default
90 #define PLUGIN_CODEC_VERSION PLUGIN_CODEC_VERSION_H245_DEF_GEN_PARAM // Always latest version
92 #define PLUGIN_CODEC_API_VER_FN PWLibPlugin_GetAPIVersion
93 #define PLUGIN_CODEC_API_VER_FN_STR "PWLibPlugin_GetAPIVersion"
95 #define PLUGIN_CODEC_GET_CODEC_FN OpalCodecPlugin_GetCodecs
96 #define PLUGIN_CODEC_GET_CODEC_FN_STR "OpalCodecPlugin_GetCodecs"
98 #define PLUGIN_CODEC_API_VER_FN_DECLARE \
99 PLUGIN_CODEC_DLL_API unsigned int PLUGIN_CODEC_API_VER_FN() \
100 { return PWLIB_PLUGIN_API_VERSION; }
197 #define PluginCodec_SetChannels(n) (((n-1)<<PluginCodec_ChannelsPos)&PluginCodec_ChannelsMask)
218 #define PLUGINCODEC_CONTROL_VALID_FOR_PROTOCOL "valid_for_protocol"
219 #define PLUGINCODEC_CONTROL_GET_CODEC_OPTIONS "get_codec_options"
220 #define PLUGINCODEC_CONTROL_FREE_CODEC_OPTIONS "free_codec_options"
221 #define PLUGINCODEC_CONTROL_GET_OUTPUT_DATA_SIZE "get_output_data_size"
222 #define PLUGINCODEC_CONTROL_SET_CODEC_OPTIONS "set_codec_options"
223 #define PLUGINCODEC_CONTROL_GET_ACTIVE_OPTIONS "get_active_options"
224 #define PLUGINCODEC_CONTROL_TO_NORMALISED_OPTIONS "to_normalised_options"
225 #define PLUGINCODEC_CONTROL_TO_CUSTOMISED_OPTIONS "to_customised_options"
226 #define PLUGINCODEC_CONTROL_SET_INSTANCE_ID "set_instance_id"
227 #define PLUGINCODEC_CONTROL_SET_LOG_FUNCTION "set_log_function"
228 #define PLUGINCODEC_CONTROL_GET_STATISTICS "get_statistics"
229 #define PLUGINCODEC_CONTROL_TERMINATE_CODEC "terminate_codec"
240 const char * section,
247 const char *
name,
void *
parm,
unsigned * parmLen);
275 #define PluginCodec_H245_Collapsing 0x40000000
276 #define PluginCodec_H245_NonCollapsing 0x20000000
277 #define PluginCodec_H245_Unsigned32 0x10000000
278 #define PluginCodec_H245_BooleanArray 0x08000000
279 #define PluginCodec_H245_TCS 0x04000000
280 #define PluginCodec_H245_OLC 0x02000000
281 #define PluginCodec_H245_ReqMode 0x01000000
282 #define PluginCodec_H245_OrdinalMask 0x0000ffff
283 #define PluginCodec_H245_PositionMask 0x00ff0000
284 #define PluginCodec_H245_PositionShift 16
308 #define PLUGINCODEC_OPTION_NEEDS_JITTER "Needs Jitter"
309 #define PLUGINCODEC_OPTION_CLOCK_RATE "Clock Rate"
310 #define PLUGINCODEC_OPTION_CHANNELS "Channels"
311 #define PLUGINCODEC_OPTION_RTP_CLOCK_RATE "RTP Clock Rate"
312 #define PLUGINCODEC_OPTION_RTP_CHANNELS "RTP Channels"
313 #define PLUGINCODEC_OPTION_FRAME_TIME "Frame Time"
314 #define PLUGINCODEC_OPTION_MAX_FRAME_SIZE "Max Frame Size"
315 #define PLUGINCODEC_OPTION_MAX_TX_PACKET_SIZE "Max Tx Packet Size"
316 #define PLUGINCODEC_OPTION_MAX_BIT_RATE "Max Bit Rate"
317 #define PLUGINCODEC_OPTION_TARGET_BIT_RATE "Target Bit Rate"
318 #define PLUGINCODEC_OPTION_RATE_CONTROL_PERIOD "Rate Control Period"
319 #define PLUGINCODEC_OPTION_RX_FRAMES_PER_PACKET "Rx Frames Per Packet"
320 #define PLUGINCODEC_OPTION_TX_FRAMES_PER_PACKET "Tx Frames Per Packet"
321 #define PLUGINCODEC_OPTION_FRAME_WIDTH "Frame Width"
322 #define PLUGINCODEC_OPTION_FRAME_HEIGHT "Frame Height"
323 #define PLUGINCODEC_OPTION_MIN_RX_FRAME_WIDTH "Min Rx Frame Width"
324 #define PLUGINCODEC_OPTION_MIN_RX_FRAME_HEIGHT "Min Rx Frame Height"
325 #define PLUGINCODEC_OPTION_MAX_RX_FRAME_WIDTH "Max Rx Frame Width"
326 #define PLUGINCODEC_OPTION_MAX_RX_FRAME_HEIGHT "Max Rx Frame Height"
327 #define PLUGINCODEC_OPTION_TEMPORAL_SPATIAL_TRADE_OFF "Temporal Spatial Trade Off"
328 #define PLUGINCODEC_OPTION_TX_KEY_FRAME_PERIOD "Tx Key Frame Period"
329 #define PLUGINCODEC_OPTION_VOICE_ACTIVITY_DETECT "VAD"
330 #define PLUGINCODEC_OPTION_DYNAMIC_PACKET_LOSS "Dynamic Packet Loss"
332 #define PLUGINCODEC_OPTION_PROTOCOL "Protocol"
333 #define PLUGINCODEC_OPTION_PROTOCOL_H323 "H.323"
334 #define PLUGINCODEC_OPTION_PROTOCOL_SIP "SIP"
383 const void * from,
unsigned * fromLen,
384 void * to,
unsigned * toLen,
385 unsigned int * flag);
398 typedef const struct PluginCodec_Definition * (* PluginCodec_GetCodecFunction)(
unsigned int *,
unsigned int);
404 #define PLUGINCODEC_RAW_AUDIO "L16"
405 #define PLUGINCODEC_RAW_VIDEO "YUV420P"
406 #define PLUGINCODEC_VIDEO_CLOCK 90000
407 #define PLUGINCODEC_MAX_FRAME_RATE 30
409 #define PLUGINCODEC_CIF_WIDTH 352
410 #define PLUGINCODEC_CIF_HEIGHT 288
412 #define PLUGINCODEC_CIF4_WIDTH (PLUGINCODEC_CIF_WIDTH*2)
413 #define PLUGINCODEC_CIF4_HEIGHT (PLUGINCODEC_CIF_HEIGHT*2)
415 #define PLUGINCODEC_CIF16_WIDTH (PLUGINCODEC_CIF_WIDTH*4)
416 #define PLUGINCODEC_CIF16_HEIGHT (PLUGINCODEC_CIF_HEIGHT*4)
418 #define PLUGINCODEC_QCIF_WIDTH (PLUGINCODEC_CIF_WIDTH/2)
419 #define PLUGINCODEC_QCIF_HEIGHT (PLUGINCODEC_CIF_HEIGHT/2)
421 #define PLUGINCODEC_QCIF4_WIDTH (PLUGINCODEC_CIF4_WIDTH/2)
422 #define PLUGINCODEC_QCIF4_HEIGHT (PLUGINCODEC_CIF4_HEIGHT/2)
424 #define PLUGINCODEC_SQCIF_WIDTH 128
425 #define PLUGINCODEC_SQCIF_HEIGHT 96
430 inline size_t OpalDataSizeYUV420P(
unsigned width,
unsigned height)
432 return ((width+1)&~1) * ((height+1)&~1) * 3 / 2;
439 #ifndef __TIMESTAMP__
440 #define __TIMESTAMP__ "0"
443 #define PLUGINCODEC_LICENSE(p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15) \
444 static struct PluginCodec_information MyLicenseInfo = { 0,p1,p2,p3,p4,p5,p6,p7,p8,p9,p10,p11,p12,p13,p14,p15,__TIMESTAMP__ }
448 #define PLUGINCODEC_CODEC_PAIR(MediaFormat, \
470 PLUGIN_CODEC_VERSION, &MyLicenseInfo, Flags, Description, RawFormat, MediaFormat, UserData, \
471 SampleRate, BitsPerSecond, FrameTime, {{ p1,p2,p3,p4 }}, PayloadType, PayloadName, \
472 CreateEncoder, DestroyEncoder, EncodeMedia, ControlsTable, H323type, H323data \
475 PLUGIN_CODEC_VERSION, &MyLicenseInfo, Flags, Description, MediaFormat, RawFormat, UserData, \
476 SampleRate, BitsPerSecond, FrameTime, {{ p1,p2,p3,p4 }}, PayloadType, PayloadName, \
477 CreateDecoder, DestroyDecoder, DecodeMedia, ControlsTable, H323type, H323data \
480 #define PLUGINCODEC_AUDIO_CODEC(MediaFormat, \
486 RecFramesPerPacket, \
487 MaxFramesPerPacket, \
500 PLUGINCODEC_CODEC_PAIR(MediaFormat, \
505 (SamplesPerFrame)*1000000/(SampleRate), \
507 (BitsPerSecond)*(SampleRate)/(SamplesPerFrame)/8, \
508 RecFramesPerPacket, \
509 MaxFramesPerPacket, \
520 PluginCodec_MediaTypeAudio | \
521 PluginCodec_InputTypeRaw | \
522 PluginCodec_OutputTypeRaw | \
524 PLUGINCODEC_RAW_AUDIO, \
527 #define PLUGINCODEC_ONE_AUDIO_CODEC(MediaFormat, \
533 RecFramesPerPacket, \
534 MaxFramesPerPacket, \
540 static struct PluginCodec_Definition CodecDefinitionTable[] = { \
541 PLUGINCODEC_AUDIO_CODEC(MediaFormat, \
547 RecFramesPerPacket, \
548 MaxFramesPerPacket, \
563 #define PLUGINCODEC_VIDEO_CODEC(MediaFormat, \
581 PLUGINCODEC_CODEC_PAIR(MediaFormat, \
586 1000000/PLUGINCODEC_MAX_FRAME_RATE, \
589 0,PLUGINCODEC_MAX_FRAME_RATE, \
600 PluginCodec_MediaTypeVideo | \
601 PluginCodec_InputTypeRTP | \
602 PluginCodec_OutputTypeRTP | \
604 PLUGINCODEC_RAW_VIDEO, \
607 #define PLUGINCODEC_ONE_VIDEO_CODEC(MediaFormat, \
618 static struct PluginCodec_Definition CodecDefinitionTable[] = { \
619 PLUGINCODEC_VIDEO_CODEC(MediaFormat, \
657 const unsigned char *
data;
795 #define OpalPluginCodec_Identifer_AMR "0.0.8.245.1.1.1"
796 #define PLUGINCODEC_OPTION_OCTET_ALIGNED "Octet Aligned"
800 #define OpalPluginCodec_Identifer_AMR_NB "0.0.8.245.1.1.9"
801 #define OpalPluginCodec_Identifer_AMR_WB "0.0.8.245.1.1.10"
804 #define OpalPluginCodec_Identifer_G7221 "0.0.7.7221.1.0"
805 #define OpalPluginCodec_Identifer_G7221ext "0.0.7.7221.1.1.0"
808 #define OpalPluginCodec_Identifer_G7222 "0.0.7.7222.1.0"
811 #define OpalPluginCodec_Identifer_iLBC "0.0.8.245.1.1.11"
816 #define PLUGINCODEC_OPTION_PROFILE "Profile"
817 #define PLUGINCODEC_OPTION_SIMPLE_PROFILE "Simple"
818 #define PLUGINCODEC_OPTION_LEVEL "Level"
821 #define OpalPluginCodec_Identifer_H264_Aligned "0.0.8.241.0.0.0.0"
822 #define OpalPluginCodec_Identifer_H264_NonInterleaved "0.0.8.241.0.0.0.1"
823 #define OpalPluginCodec_Identifer_H264_Interleaved "0.0.8.241.0.0.0.2"
824 #define OpalPluginCodec_Identifer_H264_Generic "0.0.8.241.0.0.1"
825 #define PLUGINCODEC_OPTION_MAX_NALU_SIZE "Max NALU Size"
826 #define PLUGINCODEC_OPTION_H264_PACKET_MODE "Packetization Mode"
829 #define OpalPluginCodec_Identifer_MPEG4 "0.0.8.245.1.0.0"
830 #define PLUGINCODEC_OPTION_MPEG4_ADV_SIMPLE_PROFILE "Advanced Simple"
831 #define PLUGINCODEC_OPTION_MPEG4_DECODER_CONFIG "DCI"
839 #define PLUGINCODEC_SQCIF_MPI "SQCIF MPI"
840 #define PLUGINCODEC_QCIF_MPI "QCIF MPI"
841 #define PLUGINCODEC_CIF_MPI "CIF MPI"
842 #define PLUGINCODEC_CIF4_MPI "CIF4 MPI"
843 #define PLUGINCODEC_CIF16_MPI "CIF16 MPI"
844 #define PLUGINCODEC_CUSTOM_MPI "Custom MPI"
846 #define PLUGINCODEC_MPI_DISABLED 33
848 #define PLUGINCODEC_MEDIA_PACKETIZATION "Media Packetization"
849 #define PLUGINCODEC_MEDIA_PACKETIZATIONS "Media Packetizations"
851 #define H261_ANNEX_D "Annex D - Still Image Transmit"
852 #define H263_ANNEX_D "Annex D - Unrestricted Motion Vector"
853 #define H263_ANNEX_F "Annex F - Advanced Prediction"
854 #define H263_ANNEX_I "Annex I - Advanced INTRA Coding"
855 #define H263_ANNEX_J "Annex J - Deblocking Filter"
856 #define H263_ANNEX_K "Annex K - Slice Structure"
857 #define H263_ANNEX_N "Annex N - Reference Picture Selection"
858 #define H263_ANNEX_S "Annex S - Alternative INTER VLC"
859 #define H263_ANNEX_T "Annex T - Modified Quantization"
862 #define __INTERNAL_STRINGIZE__(v) #v
863 #define STRINGIZE(v) __INTERNAL_STRINGIZE__(v)
872 #define PluginCodec_RTP_MaxPacketSize (1518-14-4-8-20-16) // Max Ethernet packet (1518 bytes) minus 802.3/CRC, 802.3, IP, UDP headers
873 #define PluginCodec_RTP_MinHeaderSize (12)
874 #define PluginCodec_RTP_MaxPayloadSize (PluginCodec_RTP_MaxPacketSize - PluginCodec_RTP_MinHeaderSize)
876 #define PluginCodec_RTP_GetWORD(ptr, off) ((((unsigned char*)(ptr))[off] << 8) | ((unsigned char*)(ptr))[off+1])
878 #define PluginCodec_RTP_GetDWORD(ptr, off) ((((unsigned char*)(ptr))[off ] << 24)|\
879 (((unsigned char*)(ptr))[off+1] << 16)|\
880 (((unsigned char*)(ptr))[off+2] << 8 )|\
881 ((unsigned char*)(ptr))[off+3])
883 #define PluginCodec_RTP_SetWORD(ptr, off, val) ((((unsigned char*)(ptr))[off ] = (unsigned char)((val) >> 8 )),\
884 (((unsigned char*)(ptr))[off+1] = (unsigned char) (val) ))
886 #define PluginCodec_RTP_SetDWORD(ptr, off, val) ((((unsigned char*)(ptr))[off ] = (unsigned char)((val) >> 24)),\
887 (((unsigned char*)(ptr))[off+1] = (unsigned char)((val) >> 16)),\
888 (((unsigned char*)(ptr))[off+2] = (unsigned char)((val) >> 8 )),\
889 (((unsigned char*)(ptr))[off+3] = (unsigned char) (val) ))
891 #define PluginCodec_RTP_GetCSRCHdrLength(ptr) ((((unsigned char*)(ptr))[0] & 0x0f)*4 + PluginCodec_RTP_MinHeaderSize)
892 #define PluginCodec_RTP_GetExtHdrLength(ptr) ((((unsigned char*)(ptr))[0] & 0x10) ? (PluginCodec_RTP_GetWORD(ptr, PluginCodec_RTP_GetCSRCHdrLength(ptr)+2)*4+4) : 0)
894 #define PluginCodec_RTP_GetHeaderLength(ptr) (PluginCodec_RTP_GetCSRCHdrLength(ptr) + PluginCodec_RTP_GetExtHdrLength(ptr))
895 #define PluginCodec_RTP_GetPayloadPtr(ptr) ((unsigned char*)(ptr) + PluginCodec_RTP_GetHeaderLength(ptr))
896 #define PluginCodec_RTP_GetPayloadType(ptr) (((unsigned char*)(ptr))[1] & 0x7f)
897 #define PluginCodec_RTP_SetPayloadType(ptr, type) (((unsigned char*)(ptr))[1] = (unsigned char)((((unsigned char*)(ptr))[1] & 0x80) | (type & 0x7f)))
898 #define PluginCodec_RTP_GetMarker(ptr) ((((unsigned char*)(ptr))[1] & 0x80) != 0)
899 #define PluginCodec_RTP_SetMarker(ptr, mark) (((unsigned char*)(ptr))[1] = (unsigned char)((((unsigned char*)(ptr))[1] & 0x7f) | (mark != 0 ? 0x80 : 0)))
900 #define PluginCodec_RTP_GetTimestamp(ptr) PluginCodec_RTP_GetDWORD(ptr, 4)
901 #define PluginCodec_RTP_SetTimestamp(ptr, ts) PluginCodec_RTP_SetDWORD(ptr, 4, ts)
902 #define PluginCodec_RTP_GetSequenceNumber(ptr) PluginCodec_RTP_GetWORD(ptr, 2)
903 #define PluginCodec_RTP_SetSequenceNumber(ptr, sn) PluginCodec_RTP_SetWORD(ptr, 2, sn)
904 #define PluginCodec_RTP_GetSSRC(ptr) PluginCodec_RTP_GetDWORD(ptr, 8)
905 #define PluginCodec_RTP_SetSSRC(ptr, ssrc) PluginCodec_RTP_SetDWORD(ptr, 8, ssrc)
924 inline size_t OpalVideoFrameSizeForResolution(
unsigned width,
unsigned height)
931 return OpalVideoFrameSizeForResolution(base->
width - base->
x, base->
height - base->
y);
941 {
return OpalVideoFrameDataPtr(base); }
952 #ifdef OPAL_STATIC_CODEC
954 # undef PLUGIN_CODEC_DLL_API
955 # define PLUGIN_CODEC_DLL_API static
956 # define PLUGIN_CODEC_IMPLEMENT(name) \
957 unsigned int Opal_StaticCodec_##name##_GetAPIVersion() \
958 { return PWLIB_PLUGIN_API_VERSION; } \
959 static const struct PluginCodec_Definition * PLUGIN_CODEC_GET_CODEC_FN(unsigned * count, unsigned ); \
960 struct const PluginCodec_Definition * Opal_StaticCodec_##name##_GetCodecs(unsigned * p1, unsigned p2) \
961 { return PLUGIN_CODEC_GET_CODEC_FN(p1,p2); } \
963 # define PLUGIN_CODEC_IMPLEMENT_ALL(name, table, ver) \
964 unsigned int Opal_StaticCodec_##name##_GetAPIVersion() \
965 { return PWLIB_PLUGIN_API_VERSION; } \
966 PLUGIN_CODEC_DLL_API const struct PluginCodec_Definition * Opal_StaticCodec_##name##_GetCodecs(unsigned * count, unsigned version) \
967 { *count = sizeof(table)/sizeof(struct PluginCodec_Definition); return version < ver ? NULL : table; }
972 # define PLUGIN_CODEC_IMPLEMENT(name) \
973 PLUGIN_CODEC_DLL_API unsigned int PLUGIN_CODEC_API_VER_FN() \
974 { return PWLIB_PLUGIN_API_VERSION; } \
976 # define PLUGIN_CODEC_IMPLEMENT_ALL(name, table, ver) \
977 PLUGIN_CODEC_IMPLEMENT(name) \
978 PLUGIN_CODEC_DLL_API const struct PluginCodec_Definition * PLUGIN_CODEC_GET_CODEC_FN(unsigned * count, unsigned version) \
979 { *count = sizeof(table)/sizeof(struct PluginCodec_Definition); return version < ver ? NULL : table; }
990 #pragma warning(default:4201)
993 #endif // OPAL_CODEC_OPALPLUGIN_H
Definition: opalplugin.h:810
Definition: opalplugin.h:727
Definition: opalplugin.h:182
Definition: opalplugin.h:159
Definition: opalplugin.h:339
Definition: opalplugin.h:695
int excludeOLC
Definition: opalplugin.h:707
Definition: opalplugin.h:188
Definition: opalplugin.h:266
Definition: opalplugin.h:203
Definition: opalplugin.h:289
Definition: opalplugin.h:109
Definition: opalplugin.h:363
Definition: opalplugin.h:780
int collapsing
Definition: opalplugin.h:705
Definition: opalplugin.h:797
const char * sourceFormat
Definition: opalplugin.h:353
Definition: opalplugin.h:184
void(* destroyCodec)(const struct PluginCodec_Definition *codec, void *context)
Definition: opalplugin.h:381
Definition: opalplugin.h:262
const void * h323CapabilityData
Definition: opalplugin.h:390
Definition: opalplugin.h:107
int sidMode1
Definition: opalplugin.h:774
unsigned long integer
Definition: opalplugin.h:740
unsigned int flags
Definition: opalplugin.h:345
int readOnly
Definition: opalplugin.h:709
Definition: opalplugin.h:179
Definition: opalplugin.h:796
Definition: opalplugin.h:809
Definition: opalplugin.h:798
PluginCodec_FreeFunction m_freeFunction
Definition: opalplugin.h:302
unsigned int maxFrameRate
Definition: opalplugin.h:373
int(* capabilityMatchFunction)(struct PluginCodec_H323NonStandardCodecData *)
Definition: opalplugin.h:691
Definition: opalplugin.h:254
unsigned int dataLength
Definition: opalplugin.h:690
union PluginCodec_Definition::_parm parm
enum PluginCodec_OptionMerge m_merge
Definition: opalplugin.h:294
Definition: opalplugin.h:733
unsigned m_readOnly
Definition: opalplugin.h:293
unsigned int maxFrameWidth
Definition: opalplugin.h:370
Definition: opalplugin.h:110
Definition: opalplugin.h:152
int excludeReqMode
Definition: opalplugin.h:708
Definition: opalplugin.h:106
int sidMode0
Definition: opalplugin.h:773
Definition: opalplugin.h:257
int lowRateMode0
Definition: opalplugin.h:771
Definition: opalplugin.h:256
unsigned int sampleRate
Definition: opalplugin.h:358
Definition: opalplugin.h:794
Definition: opalplugin.h:732
Definition: opalplugin.h:272
Definition: opalplugin.h:271
Definition: opalplugin.h:813
Definition: opalplugin.h:202
Definition: opalplugin.h:208
Definition: opalplugin.h:185
int(* codecFunction)(const struct PluginCodec_Definition *codec, void *context, const void *from, unsigned *fromLen, void *to, unsigned *toLen, unsigned int *flag)
Definition: opalplugin.h:382
Definition: opalplugin.h:369
Definition: opalplugin.h:781
const char * octetstring
Definition: opalplugin.h:741
Definition: opalplugin.h:146
Definition: opalplugin.h:263
Definition: opalplugin.h:148
PluginCodec_ReturnCoderFlags
Definition: opalplugin.h:206
Definition: opalplugin.h:814
Definition: opalplugin.h:258
Definition: opalplugin.h:720
Definition: opalplugin.h:729
Definition: opalplugin.h:181
unsigned int index
Definition: opalplugin.h:679
const char * m_FMTPDefault
Definition: opalplugin.h:297
Definition: opalplugin.h:153
Definition: opalplugin.h:268
unsigned int recommendedFrameRate
Definition: opalplugin.h:372
PluginCodec_H323GenericParameterType
Definition: opalplugin.h:716
Definition: opalplugin.h:169
int(* PluginCodec_LogFunction)(unsigned level, const char *file, unsigned line, const char *section, const char *log)
Definition: opalplugin.h:237
unsigned char h323CapabilityType
Definition: opalplugin.h:389
Definition: opalplugin.h:789
Definition: opalplugin.h:252
Definition: opalplugin.h:201
Definition: opalplugin.h:734
Definition: opalplugin.h:804
Definition: opalplugin.h:267
unsigned char t35CountryCode
Definition: opalplugin.h:686
Definition: opalplugin.h:171
Definition: opalplugin.h:787
PluginCodec_OptionTypes
Definition: opalplugin.h:251
unsigned int maxFrameHeight
Definition: opalplugin.h:371
int highRateMode1
Definition: opalplugin.h:770
enum PluginCodec_OptionTypes m_type
Definition: opalplugin.h:291
int comfortNoise
Definition: opalplugin.h:762
PluginCodec_CoderFlags
Definition: opalplugin.h:200
Definition: opalplugin.h:164
Definition: opalplugin.h:108
Definition: opalplugin.h:105
PluginCodec_MergeFunction m_mergeFunction
Definition: opalplugin.h:301
Definition: opalplugin.h:786
int silenceSuppression
Definition: opalplugin.h:768
struct PluginCodec_H323GenericParameterDefinition * params
Definition: opalplugin.h:757
Definition: opalplugin.h:795
Definition: opalplugin.h:168
Definition: opalplugin.h:147
unsigned int id
Definition: opalplugin.h:714
Definition: opalplugin.h:115
struct PluginCodec_information * info
Definition: opalplugin.h:343
Definition: opalplugin.h:207
Definition: opalplugin.h:722
Definition: opalplugin.h:792
const char * sdpFormat
Definition: opalplugin.h:378
unsigned int usPerFrame
Definition: opalplugin.h:360
const char * standardIdentifier
Definition: opalplugin.h:750
Definition: opalplugin.h:807
Definition: opalplugin.h:721
PluginCodec_Flags
Definition: opalplugin.h:143
Definition: opalplugin.h:175
Definition: opalplugin.h:790
Definition: opalplugin.h:244
unsigned short manufacturerCode
Definition: opalplugin.h:688
Definition: opalplugin.h:167
unsigned int version
Definition: opalplugin.h:340
Definition: opalplugin.h:678
Definition: opalplugin.h:265
int scrambled
Definition: opalplugin.h:763
Definition: opalplugin.h:155
Definition: opalplugin.h:726
Definition: opalplugin.h:176
Definition: opalplugin.h:800
const char * m_value
Definition: opalplugin.h:295
const char * m_maximum
Definition: opalplugin.h:300
Definition: opalplugin.h:761
Definition: opalplugin.h:165
const unsigned char * data
Definition: opalplugin.h:689
int lowRateMode1
Definition: opalplugin.h:772
Definition: opalplugin.h:730
Definition: opalplugin.h:163
const char * objectId
Definition: opalplugin.h:685
unsigned int nParameters
Definition: opalplugin.h:755
struct PluginCodec_Definition::_parm::_video video
Definition: opalplugin.h:160
unsigned int bitsPerSec
Definition: opalplugin.h:359
unsigned char t35Extension
Definition: opalplugin.h:687
Definition: opalplugin.h:255
Definition: opalplugin.h:210
Definition: opalplugin.h:190
PluginCodec_OptionMerge
Definition: opalplugin.h:261
Definition: opalplugin.h:362
Definition: opalplugin.h:785
Definition: opalplugin.h:157
Definition: opalplugin.h:191
Definition: opalplugin.h:103
Definition: opalplugin.h:802
const void * userData
Definition: opalplugin.h:356
Definition: opalplugin.h:766
Definition: opalplugin.h:145
unsigned int maxFramesPerPacket
Definition: opalplugin.h:367
Definition: opalplugin.h:187
Definition: opalplugin.h:269
Definition: opalplugin.h:149
Definition: opalplugin.h:684
unsigned int bytesPerFrame
Definition: opalplugin.h:365
unsigned(* PluginCodec_GetAPIVersionFunction)()
Definition: opalplugin.h:399
Definition: opalplugin.h:172
Definition: opalplugin.h:104
const char * m_name
Definition: opalplugin.h:292
Definition: opalplugin.h:112
struct PluginCodec_ControlDefn * codecControls
Definition: opalplugin.h:386
const char * name
Definition: opalplugin.h:245
Definition: opalplugin.h:791
void * data
Definition: opalplugin.h:680
int highRateMode0
Definition: opalplugin.h:769
Definition: opalplugin.h:782
const char * m_minimum
Definition: opalplugin.h:299
int excludeTCS
Definition: opalplugin.h:706
const char * descr
Definition: opalplugin.h:351
Definition: opalplugin.h:817
Definition: opalplugin.h:808
struct PluginCodec_H323GenericParameterDefinition * genericparameter
Definition: opalplugin.h:742
Definition: opalplugin.h:156
Definition: opalplugin.h:803
Definition: opalplugin.h:746
Definition: opalplugin.h:144
Definition: opalplugin.h:193
Definition: opalplugin.h:736
Definition: opalplugin.h:173
Definition: opalplugin.h:253
Definition: opalplugin.h:209
Definition: opalplugin.h:161
Definition: opalplugin.h:194
Definition: opalplugin.h:724
Definition: opalplugin.h:735
Definition: opalplugin.h:779
Definition: opalplugin.h:151
Definition: opalplugin.h:723
int(* PluginCodec_MergeFunction)(char **result, const char *dest, const char *src)
Definition: opalplugin.h:286
Definition: opalplugin.h:788
const char * m_H245Default
Definition: opalplugin.h:303
unsigned dataLength
Definition: opalplugin.h:681
Definition: opalplugin.h:264
unsigned int recommendedFramesPerPacket
Definition: opalplugin.h:366
unsigned char maxAl_sduAudioFrames
Definition: opalplugin.h:767
unsigned int maxBitRate
Definition: opalplugin.h:751
const char * destFormat
Definition: opalplugin.h:354
struct PluginCodec_Definition::_parm::_audio audio
Definition: opalplugin.h:731
Definition: opalplugin.h:793
Definition: opalplugin.h:178
Definition: opalplugin.h:801
int(* control)(const struct PluginCodec_Definition *codec, void *context, const char *name, void *parm, unsigned *parmLen)
Definition: opalplugin.h:246
unsigned char rtpPayload
Definition: opalplugin.h:377
void(* PluginCodec_FreeFunction)(char *string)
Definition: opalplugin.h:287
const char * m_FMTPName
Definition: opalplugin.h:296
enum PluginCodec_H323GenericParameterDefinition::PluginCodec_H323GenericParameterType type
Definition: opalplugin.h:799
unsigned int samplesPerFrame
Definition: opalplugin.h:364
int m_H245Generic
Definition: opalplugin.h:298
Definition: opalplugin.h:725
union PluginCodec_H323GenericParameterDefinition::@4 value