sipxmedialib
Version 3.3
|
Go to the source code of this file.
Classes | |
struct | MppCodecInfoV1_1 |
Generic information about codec. More... | |
struct | MppCodecFmtpInfoV1_2 |
Information about concrete codec instance (i.e. with selected fmtp). More... | |
Macros | |
#define | CODEC_DYNAMIC |
#define | CODEC_API |
#define | FALSE (0!=0) |
#define | TRUE (0==0) |
#define | DECLARE_FUNCS_V1(x) |
#define | CPP_DECLARE_FUNCS_V1(x) extern "C" DECLARE_FUNCS_V1(x) |
#define | PLG_GET_CODEC_NAME get_codecs_v1 |
#define | PLG_GET_INFO_V1_1(x) x##_get_info_v1_1 |
#define | PLG_INIT_V1_2(x) x##_init_v1_2 |
#define | PLG_GET_PACKET_SAMPLES_V1_2(x) x##_get_packet_samples_v1_2 |
#define | PLG_DECODE_V1(x) x##_decode_v1 |
#define | PLG_ENCODE_V1(x) x##_encode_v1 |
#define | PLG_FREE_V1(x) x##_free_v1 |
#define | PLG_SIGNALING_V1(x) x##_signaling_v1 |
#define | MSK_GET_CODEC_NAME_V1 "get_codecs_v1" |
#define | MSK_GET_INFO_V1_1 "_get_info_v1_1" |
#define | MSK_INIT_V1_2 "_init_v1_2" |
#define | MSK_GET_PACKET_SAMPLES_V1_2 "_get_packet_samples_v1_2" |
#define | MSK_DECODE_V1 "_decode_v1" |
#define | MSK_ENCODE_V1 "_encode_v1" |
#define | MSK_FREE_V1 "_free_v1" |
#define | MSK_SIGNALING_V1 "_signaling_v1" |
#define | IPLG_ENUM_CODEC_NAME plugin_enum_codec |
#define | IPLG_ENUM_CODEC_START static const char* IPLG_ENUM_CODEC_NAME [] = { |
#define | IPLG_ENUM_CODEC(x) #x , |
#define | IPLG_ENUM_CODEC_END NULL}; |
#define | IPLG_ENUM_CODEC_FUNC |
#define | DEFINE_STATIC_REGISTRATOR |
#define | REG_STATIC_NAME(y) registerStatic_##y |
#define | REGISTER_STATIC_PLG(x) |
#define | SPLG_ENUM_CODEC_START(y) void REG_STATIC_NAME(y) (void) { |
#define | SPLG_ENUM_CODEC(x) |
#define | SPLG_ENUM_CODEC_SPECIAL_PACKING(x) PLG_GET_PACKET_SAMPLES_V1_2(x), |
#define | SPLG_ENUM_CODEC_NO_SPECIAL_PACKING(x) NULL, |
#define | SPLG_ENUM_CODEC_SIGNALING(x) PLG_SIGNALING_V1(x)); |
#define | SPLG_ENUM_CODEC_NO_SIGNALING(x) NULL); |
#define | SPLG_ENUM_CODEC_END } |
#define | PLG_ENUM_CODEC_START(y) IPLG_ENUM_CODEC_START |
#define | PLG_ENUM_CODEC(x) IPLG_ENUM_CODEC(x) |
#define | PLG_ENUM_CODEC_SPECIAL_PACKING(x) |
#define | PLG_ENUM_CODEC_NO_SPECIAL_PACKING(x) |
#define | PLG_ENUM_CODEC_SIGNALING(x) |
#define | PLG_ENUM_CODEC_NO_SIGNALING(x) |
#define | PLG_ENUM_CODEC_END |
#define | PLG_SINGLE_CODEC_SIG(x) |
#define | PLG_SINGLE_CODEC(x) |
#define | PLG_DOUBLE_CODECS(x, y) |
#define | SIZE_OF_SAMPLE 2 |
#define | SIZE_OF_SAMPLE_BITS (SIZE_OF_SAMPLE * 8) |
#define | PLG_MAX(a, b) (((a) > (b)) ? (a) : (b)) |
#define | PLG_MIN(a, b) (((a) < (b)) ? (a) : (b)) |
Constants for plgCodecStaticInfoV1::codecType values. | |
#define | CODEC_TYPE_FRAME_BASED 0 |
Codec is frame based (like GSM, iLBC, etc). More... | |
#define | CODEC_TYPE_SAMPLE_BASED 1 |
Codec is sample based (like G.711, G.726, etc). More... | |
Constants for plgCodecStaticInfoV1::framePacking values. | |
#define | CODEC_FRAME_PACKING_NONE 0 |
Frames could be simply concatenated (like GSM, iLBC, etc). More... | |
#define | CODEC_FRAME_PACKING_SPECIAL 1 |
Constants for plgCodecStaticInfoV1::packetLossConcealment values. | |
#define | CODEC_PLC_NONE 0 |
Codec need external PLC. More... | |
#define | CODEC_PLC_INTERNAL 1 |
Codec have internal PLC. More... | |
Constants for plgCodecStaticInfoV1::vadCng values. | |
#define | CODEC_CNG_NONE 0 |
Codec need external PLC. More... | |
#define | CODEC_CNG_INTERNAL 1 |
Codec have internal PLC. More... | |
Return codes for API functions | |
#define | RPLG_SUCCESS 0 |
#define | RPLG_INVALID_ARGUMENT (-1) |
#define | RPLG_FAILED (-2) |
#define | RPLG_NOT_SUPPORTED (-3) |
#define | RPLG_CORRUPTED_DATA (-4) |
Encoded data is corrupted. More... | |
#define | RPLG_BAD_HANDLE (-5) |
#define | RPLG_NO_MORE_DATA (-6) |
#define | RPLG_BUFFER_TOO_SMALL (-7) |
is too small for output data. More... | |
Values for PLG_INIT_V1() and PLG_FREE_V1() isDecoder argument | |
#define | CODEC_DECODER 1 |
#define | CODEC_ENCODER 0 |
Typedefs | |
typedef int(* | dlGetCodecsV1) (int iNum, const char **pCodecModuleName) |
typedef int(* | dlPlgGetInfoV1_1) (const struct MppCodecInfoV1_1 **codecInfo) |
typedef void *(* | dlPlgInitV1_2) (const char *fmtp, int isDecoder, struct MppCodecFmtpInfoV1_2 *pCodecFmtpInfo) |
typedef int(* | dlPlgGetSignalingDataV1) (void *handle, uint32_t *outEvent, uint32_t *outDuration, uint32_t *startStatus, uint32_t *stopStatus) |
typedef int(* | dlPlgGetPacketSamplesV1_2) (void *handle, const uint8_t *pPacketData, unsigned packetSize, unsigned *pNumSamples, const struct RtpHeader *pRtpHeader) |
typedef int(* | dlPlgDecodeV1) (void *handle, const void *pCodedData, unsigned cbCodedPacketSize, void *pAudioBuffer, unsigned cbBufferSize, unsigned *pcbDecodedSize, const struct RtpHeader *pRtpHeader) |
typedef int(* | dlPlgEncodeV1) (void *handle, const void *pAudioBuffer, unsigned cbAudioSamples, int *rSamplesConsumed, void *pCodedData, unsigned cbMaxCodedData, int *pcbCodedSize, unsigned *pbSendNow) |
typedef int(* | dlPlgFreeV1) (void *handle, int isDecoder) |
typedef int16_t | audio_sample_t |
Functions | |
void | mppLogError (const char *format,...) |
#define CODEC_DYNAMIC |
#define CODEC_API |
#define FALSE (0!=0) |
#define TRUE (0==0) |
#define CODEC_TYPE_FRAME_BASED 0 |
Codec is frame based (like GSM, iLBC, etc).
#define CODEC_TYPE_SAMPLE_BASED 1 |
Codec is sample based (like G.711, G.726, etc).
#define CODEC_FRAME_PACKING_NONE 0 |
Frames could be simply concatenated (like GSM, iLBC, etc).
#define CODEC_FRAME_PACKING_SPECIAL 1 |
Codec require special processing to pack several frames in one RTP packet (like AMR, Speex, etc).
#define CODEC_PLC_NONE 0 |
Codec need external PLC.
#define CODEC_PLC_INTERNAL 1 |
Codec have internal PLC.
#define CODEC_CNG_NONE 0 |
Codec need external PLC.
#define CODEC_CNG_INTERNAL 1 |
Codec have internal PLC.
#define RPLG_SUCCESS 0 |
#define RPLG_INVALID_ARGUMENT (-1) |
#define RPLG_FAILED (-2) |
#define RPLG_NOT_SUPPORTED (-3) |
#define RPLG_CORRUPTED_DATA (-4) |
Encoded data is corrupted.
#define RPLG_BAD_HANDLE (-5) |
#define RPLG_NO_MORE_DATA (-6) |
#define RPLG_BUFFER_TOO_SMALL (-7) |
is too small for output data.
Encoding/decoding buffer
#define CODEC_DECODER 1 |
#define CODEC_ENCODER 0 |
#define DECLARE_FUNCS_V1 | ( | x | ) |
#define CPP_DECLARE_FUNCS_V1 | ( | x | ) | extern "C" DECLARE_FUNCS_V1(x) |
#define PLG_GET_CODEC_NAME get_codecs_v1 |
#define PLG_GET_INFO_V1_1 | ( | x | ) | x##_get_info_v1_1 |
#define PLG_INIT_V1_2 | ( | x | ) | x##_init_v1_2 |
#define PLG_GET_PACKET_SAMPLES_V1_2 | ( | x | ) | x##_get_packet_samples_v1_2 |
#define PLG_DECODE_V1 | ( | x | ) | x##_decode_v1 |
#define PLG_ENCODE_V1 | ( | x | ) | x##_encode_v1 |
#define PLG_FREE_V1 | ( | x | ) | x##_free_v1 |
#define PLG_SIGNALING_V1 | ( | x | ) | x##_signaling_v1 |
#define MSK_GET_CODEC_NAME_V1 "get_codecs_v1" |
#define MSK_GET_INFO_V1_1 "_get_info_v1_1" |
#define MSK_INIT_V1_2 "_init_v1_2" |
#define MSK_GET_PACKET_SAMPLES_V1_2 "_get_packet_samples_v1_2" |
#define MSK_DECODE_V1 "_decode_v1" |
#define MSK_ENCODE_V1 "_encode_v1" |
#define MSK_FREE_V1 "_free_v1" |
#define MSK_SIGNALING_V1 "_signaling_v1" |
#define IPLG_ENUM_CODEC_NAME plugin_enum_codec |
#define IPLG_ENUM_CODEC_START static const char* IPLG_ENUM_CODEC_NAME [] = { |
#define IPLG_ENUM_CODEC | ( | x | ) | #x , |
#define IPLG_ENUM_CODEC_END NULL}; |
#define IPLG_ENUM_CODEC_FUNC |
#define DEFINE_STATIC_REGISTRATOR |
#define REG_STATIC_NAME | ( | y | ) | registerStatic_##y |
#define REGISTER_STATIC_PLG | ( | x | ) |
#define SPLG_ENUM_CODEC_START | ( | y | ) | void REG_STATIC_NAME(y) (void) { |
#define SPLG_ENUM_CODEC | ( | x | ) |
#define SPLG_ENUM_CODEC_SPECIAL_PACKING | ( | x | ) | PLG_GET_PACKET_SAMPLES_V1_2(x), |
#define SPLG_ENUM_CODEC_NO_SPECIAL_PACKING | ( | x | ) | NULL, |
#define SPLG_ENUM_CODEC_SIGNALING | ( | x | ) | PLG_SIGNALING_V1(x)); |
#define SPLG_ENUM_CODEC_NO_SIGNALING | ( | x | ) | NULL); |
#define SPLG_ENUM_CODEC_END } |
#define PLG_ENUM_CODEC_START | ( | y | ) | IPLG_ENUM_CODEC_START |
#define PLG_ENUM_CODEC | ( | x | ) | IPLG_ENUM_CODEC(x) |
#define PLG_ENUM_CODEC_SPECIAL_PACKING | ( | x | ) |
#define PLG_ENUM_CODEC_NO_SPECIAL_PACKING | ( | x | ) |
#define PLG_ENUM_CODEC_SIGNALING | ( | x | ) |
#define PLG_ENUM_CODEC_NO_SIGNALING | ( | x | ) |
#define PLG_ENUM_CODEC_END |
#define PLG_SINGLE_CODEC_SIG | ( | x | ) |
#define PLG_SINGLE_CODEC | ( | x | ) |
#define PLG_DOUBLE_CODECS | ( | x, | |
y | |||
) |
#define SIZE_OF_SAMPLE 2 |
#define SIZE_OF_SAMPLE_BITS (SIZE_OF_SAMPLE * 8) |
#define PLG_MAX | ( | a, | |
b | |||
) | (((a) > (b)) ? (a) : (b)) |
#define PLG_MIN | ( | a, | |
b | |||
) | (((a) < (b)) ? (a) : (b)) |
typedef int(* dlGetCodecsV1) (int iNum, const char **pCodecModuleName) |
typedef int(* dlPlgGetInfoV1_1) (const struct MppCodecInfoV1_1 **codecInfo) |
typedef void*(* dlPlgInitV1_2) (const char *fmtp, int isDecoder, struct MppCodecFmtpInfoV1_2 *pCodecFmtpInfo) |
typedef int(* dlPlgGetSignalingDataV1) (void *handle, uint32_t *outEvent, uint32_t *outDuration, uint32_t *startStatus, uint32_t *stopStatus) |
typedef int(* dlPlgGetPacketSamplesV1_2) (void *handle, const uint8_t *pPacketData, unsigned packetSize, unsigned *pNumSamples, const struct RtpHeader *pRtpHeader) |
typedef int(* dlPlgDecodeV1) (void *handle, const void *pCodedData, unsigned cbCodedPacketSize, void *pAudioBuffer, unsigned cbBufferSize, unsigned *pcbDecodedSize, const struct RtpHeader *pRtpHeader) |
typedef int(* dlPlgEncodeV1) (void *handle, const void *pAudioBuffer, unsigned cbAudioSamples, int *rSamplesConsumed, void *pCodedData, unsigned cbMaxCodedData, int *pcbCodedSize, unsigned *pbSendNow) |
typedef int(* dlPlgFreeV1) (void *handle, int isDecoder) |
typedef int16_t audio_sample_t |
void mppLogError | ( | const char * | format, |
... | |||
) |