⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ixjdefs.h

📁 mgcp协议源代码。支持多种编码:g711
💻 H
📖 第 1 页 / 共 3 页
字号:
#define DEVCTRL_RINGSTATE_INIT		0#define DEVCTRL_RINGSTATE_RING_0	1#define DEVCTRL_RINGSTATE_RING_1	2#define DEVCTRL_RINGSTATE_RING_2	3#define DEVCTRL_RINGSTATE_RING_3	4#define DEVCTRL_RINGSTATE_RING_4	5#define DEVCTRL_RINGSTATE_RING_5	6#define DEVCTRL_RINGSTATE_RING_6	7#define DEVCTRL_RINGSTATE_RING_7	8#define DEVCTRL_RINGSTATE_RING_8	9#define DEVCTRL_RINGSTATE_RING_9	10#define DEVCTRL_RINGSTATE_RING_10	11#define DEVCTRL_RINGSTATE_RING_11	12//==========================================================================//--------------------------------------------------------------------------//	Filter support//--------------------------------------------------------------------------////	Additional bit patterns to 'Or' into Command Base 'words'#define FILTER_MODE_SYNC  0#define FILTER_MODE_ASYNC 1#define FILTER_LINE_VOLUME_POS_0DB 2	//	+0 dB#define FILTER_LINE_VOLUME_MUTE    3	//	Mute Microphone (also resets AEC)#define FILTER_SPEAKER_VOLUME_POS_14DB 0	//	+14 dB#define FILTER_SPEAKER_VOLUME_POS_12DB 1	//	+12 dB#define FILTER_SPEAKER_VOLUME_POS_10DB 2	//	+10 dB#define FILTER_SPEAKER_VOLUME_POS_8DB  3	//	+8 dB#define FILTER_SPEAKER_VOLUME_POS_6DB  4	//	+6 dB#define FILTER_SPEAKER_VOLUME_POS_4DB  5	//	+4 dB#define FILTER_SPEAKER_VOLUME_POS_2DB  6	//	+2 dB#define FILTER_SPEAKER_VOLUME_POS_0DB  7	//	0 dB#define FILTER_SPEAKER_VOLUME_NEG_2DB  8	//	-2 dB#define FILTER_SPEAKER_VOLUME_NEG_4DB  9	//	-4 dB#define FILTER_SPEAKER_VOLUME_NEG_6DB  10	//	-6 dB#define FILTER_SPEAKER_VOLUME_NEG_8DB  11	//	-8 dB#define FILTER_SPEAKER_VOLUME_NEG_10DB 12	//	-10 dB#define FILTER_SPEAKER_VOLUME_NEG_12DB 13	//	-12 dB#define FILTER_SPEAKER_VOLUME_NEG_14DB 14	//	-14 dB#define FILTER_SPEAKER_VOLUME_MUTE     15	//	Mute Filter#define FILTER_DTMFSTATE_INIT			0#define FILTER_DTMFSTATE_NOT_VALID_1	1#define FILTER_DTMFSTATE_NOT_VALID_2	2#define FILTER_DTMFSTATE_NOT_VALID_3	3#define FILTER_DTMFSTATE_VALID_1		4#define FILTER_DTMFSTATE_VALID_2		5#define FILTER_DTMFSTATE_VALID_3		6#define FrameCount( LineMonitor ) ((LineMonitor>>12)&0x0f)#define FilterBits( LineMonitor ) ((LineMonitor>>8)&0x0f)#define Peak( LineMonitor ) ((LineMonitor>>6)&1)#define DTMFValid( LineMonitor ) ((LineMonitor>>5)&1)#define CPFValid( LineMonitor ) ((LineMonitor>>4)&1)#define DTMFDigit( LineMonitor ) (LineMonitor&0x0f)//==========================================================================//--------------------------------------------------------------------------//	Idle support//--------------------------------------------------------------------------//#define IDLE_TONE_MODE_SYNC  0	//	Selects Synchronous Tone mode#define IDLE_TONE_MODE_ASYNC 1	//	Selects Asynchronous Tone mode#define IDLE_TONE_NOTONE	0#define IDLE_TONE_1		1#define IDLE_TONE_2		2#define IDLE_TONE_3		3#define IDLE_TONE_4		4#define IDLE_TONE_5		5#define IDLE_TONE_6		6#define IDLE_TONE_7		7#define IDLE_TONE_8		8#define IDLE_TONE_9		9#define IDLE_TONE_STAR	10#define IDLE_TONE_0		11#define IDLE_TONE_POUND	12#define IDLE_TONE_DIAL	25#define IDLE_TONE_RING	26#define IDLE_TONE_BUSY	27#define IDLE_TONE_A		28#define IDLE_TONE_B		29#define IDLE_TONE_C		30#define IDLE_TONE_D		31//	Table from TelTone M-991 Spec sheet (table 4).//	Tone Name				Frequency (Hz)			Interruption Rate//							 1			 2//-------------------------------------------------------------------------------------------//	Dial				|	350		|	440		|	Steady//	Reorder				|	480		|	620		|	Repeat, tones on and off 250 ms +- 25ms//	Busy				|	480		|	620		|	Repeat,	tones on and off 500 ms +- 50ms//	Audible Ring		|	480		|	480		|	Repeat,	tones on 2 +- 0.2sec, tones off 4 +- 0.4sec//	Recall Dial			|	350		|	440		|	Three bursts tones on and off 100 ms +- 20ms each followed by dial tone//	Special AR			|	440		|	480		|	Tones on 1 +- 0.2sec, followed by single 440Hz on for 0.2sec on, and silence for 3 +- 0.3sec, repeat//	Intercept			|	440		|	620		|	Repeat alternating tones, each on for 230ms +- 70ms with total cycle of 500 +- 50ms//	Call Waiting		|	440		|	Off		|	One burst 200 +- 100ms//	Busy Verification	|	440		|	Off		|	One burst of tone on 1.75 +- 0.25sec before attendant intrudes, followed by burst of tone 0.65 +- 0.15sec on, 8 to 20 sec apart for as long as the call lasts.//	Executive Override	|	440		|	Off		|	One burst of tone for 3 +- 1sec before overriding station intrudes.//	Confirmation		|	350		|	440		|	Three bursts on and off 100ms each or 100ms on, 100ms off, 300 ms on.#define TONE_DIAL				0#define	TONE_REORDER			1#define TONE_BUSY				2#define	TONE_AUDIBLE_RING		3#define	TONE_RECALL_DIAL		4#define	TONE_SPECIAL_AR			5#define	TONE_INTERCEPT			6#define	TONE_CALL_WAITING		7#define	TONE_BUSY_VERIFICATION	8#define	TONE_EXECUTIVE_OVERRIDE	9#define	TONE_CONFIRMATION		10typedef struct{    DWORD dwToneIndex;    DWORD dwDuration;	DWORD dwToneOnPeriod;	DWORD dwToneOffPeriod;	DWORD dwMasterGain;} IDLE_TONE;typedef struct{    DWORD dwToneIndex;   // 1-31, 0 reserved for silence    DWORD dwFrequencyFactor0; // dwFrequencyFactor0 = 32767 * cos( 2*Pi*(frequency0/8000) )	DWORD dwGain0;   // 0-15 See Tone Level Table    DWORD dwFrequencyFactor1; // dwFrequencyFactor1 = 32767 * cos( 2*Pi*(frequency1/8000) )	DWORD dwGain1;   // 0-15 See Tone Level Table} IDLE_NEW_TONE;//==========================================================================// // Tone Level Table//____________________________________________________________// Index     Codec Output Level (dB relative to 0.707 Vrms)//____________________________________________________________//      0                   +6//      1                   +4//      2                   +2//      3                     0//      4                    -2//      5                    -4//      6                    -6//      7                    -8//      8                  -10//      9                  -12//     10                 -14//     11                 -16//     12                 -18//     13                 -20//     14                 -22//     15                 -24//==========================================================================//--------------------------------------------------------------------------//	Mixer support//--------------------------------------------------------------------------//// Playback mixer lines#define PlaybackMaster			0#define PlaybackMicrophone		1#define PlaybackWave			2#define PlaybackCD				3#define PlaybackLineIn			4#define PlaybackPhoneIn			5#define PlaybackPhoneOut		6#define PlaybackPhoneLineOut	7#define PlaybackDeviceCount		8// Record mixer lines#define RecordMaster		0#define RecordMicrophone	1#define RecordWave			2#define RecordCD			3#define RecordLineIn		4#define RecordPhoneIn		5#define RecordPhoneLineIn	6#define RecordDeviceCount	7// Output mixer lines#define OutputMicrophone	PlaybackMicrophone#define OutputWave			PlaybackWave#define OutputCD			PlaybackCD#define OutputLineIn		PlaybackLineIn#define OutputPhoneIn		PlaybackPhoneIn// Input mixer lines#define InputMicrophone	RecordMicrophone#define InputWave		RecordWave#define InputCD			RecordCD#define InputLineIn		RecordLineIn#define InputPhoneIn	RecordPhoneIn// Mixer line structuretypedef struct _MIXER_LINE{    DWORD dwLineID;    DWORD dwMute;    DWORD dwLeftVolume;    DWORD dwRightVolume;}MIXER_LINE;#define MIXER_ACCESS TEXT( "MixerAccess" )//==========================================================================//--------------------------------------------------------------------------//	Playback support//--------------------------------------------------------------------------////	Additional bit patterns to 'Or' into Command Base 'words'#define PLAYBACK_TFRMODE_80X5 0	//	Selects Data transfer via Software Control and Status Registers (CT8015/CT8005 protocol mode).#define PLAYBACK_TFRMODE_8020 3	//	Selects Data transfer via Host Transmit Data Buffer Access Port.#define PLAYBACK_SYNC_MODE_CODEC	0#define PLAYBACK_SYNC_MODE_DATA		1#define PLAYBACK_SYNC_MODE_POLL		2#define PLAYBACK_SYNC_MODE_HOST		3//	Playback modes#define PLAYBACK_MODE_COMPRESSED		0	//	Selects: Compressed modes, TrueSpeech 8.5-4.1, G.723.1, G.722, G.728, G.729#define PLAYBACK_MODE_TRUESPEECH_V40	0	//	Selects: TrueSpeech 8.5, 6.3, 5.3, 4.8 or 4.1 Kbps#define PLAYBACK_MODE_TRUESPEECH		8	//	Selects: TrueSpeech 8.5, 6.3, 5.3, 4.8 or 4.1 Kbps Version 5.1#define PLAYBACK_MODE_ULAW				2	//	Selects: 64 Kbit/sec MuA-law PCM#define PLAYBACK_MODE_ALAW				10	//	Selects: 64 Kbit/sec A-law PCM#define PLAYBACK_MODE_16LINEAR			6	//	Selects: 128 Kbit/sec 16-bit linear#define PLAYBACK_MODE_8LINEAR			4	//	Selects: 64 Kbit/sec 8-bit signed linear#define PLAYBACK_MODE_8LINEAR_WSS		5	//	Selects: 64 Kbit/sec WSS 8-bit unsigned linear//	Playback rates#define PLAYBACK_RATE_TS85		0	//	Selects TrueSpeech 8.5 playback rate.#define PLAYBACK_RATE_TS63		1	//	Selects TrueSpeech 6.3 playback rate.#define PLAYBACK_RATE_TS53		2	//	Selects TrueSpeech 5.3 playback rate.#define PLAYBACK_RATE_TS48		3	//	Selects TrueSpeech 4.8 playback rate.#define PLAYBACK_RATE_TS41		4	//	Selects TrueSpeech 4.1 playback rate.#define PLAYBACK_RATE_G722		7	//	Selects G.722 playback rate.#define PLAYBACK_RATE_G723_63	PLAYBACK_RATE_TS63	//	Selects G.723.1 (6.3 kbps) playback rate.#define PLAYBACK_RATE_G723_53	PLAYBACK_RATE_TS53	//	Selects G.723.1 (5.3 kbps) playback rate.#define PLAYBACK_RATE_G728		5	//	Selects G.728 playback rate.#define PLAYBACK_RATE_G729		6	//	Selects G.729 playback rate.// Frame sizes in WORD units#define PLAYBACK_TS85_WORDS				16		//	TrueSpeech 8.5, 30ms frame size#define PLAYBACK_TS63_WORDS				12		//	TrueSpeech 6.3, 30ms frame size#define PLAYBACK_TS53_WORDS				10		//	TrueSpeech 5.3, 30ms frame size#define PLAYBACK_TS48_WORDS				9		//	TrueSpeech 4.8, 30ms frame size#define PLAYBACK_TS41_WORDS				8		//	TrueSpeech 4.1, 30ms frame size#define PLAYBACK_ALAW_WORDS				120		//	64 Kbit/sec A-law PCM, 30ms frame size#define PLAYBACK_ALAW_30MS_WORDS		120		//	64 Kbit/sec A-law PCM, 30ms frame size#define PLAYBACK_ALAW_20MS_WORDS		80		//	64 Kbit/sec A-law PCM, 20ms frame size#define PLAYBACK_ALAW_10MS_WORDS		40		//	64 Kbit/sec A-law PCM, 10ms frame size#define PLAYBACK_ULAW_WORDS				120		//	64 Kbit/sec Mu-law PCM, 30ms frame size#define PLAYBACK_ULAW_30MS_WORDS		120		//	64 Kbit/sec Mu-law PCM, 30ms frame size#define PLAYBACK_ULAW_20MS_WORDS		80		//	64 Kbit/sec Mu-law PCM, 20ms frame size#define PLAYBACK_ULAW_10MS_WORDS		40		//	64 Kbit/sec Mu-law PCM, 10ms frame size#define PLAYBACK_16LINEAR_WORDS			240		//	128 Kbit/sec 16-bit linear, 30ms frame size#define PLAYBACK_16LINEAR_30MS_WORDS	240		//	128 Kbit/sec 16-bit linear, 30ms frame size#define PLAYBACK_16LINEAR_20MS_WORDS	160		//	128 Kbit/sec 16-bit linear, 20ms frame size#define PLAYBACK_16LINEAR_10MS_WORDS	80		//	128 Kbit/sec 16-bit linear, 10ms frame size#define PLAYBACK_8LINEAR_WORDS			120		//	64 Kbit/sec 8-bit signed linear, 30ms frame size#define PLAYBACK_8LINEAR_30MS_WORDS		120		//	64 Kbit/sec 8-bit signed linear, 30ms frame size#define PLAYBACK_8LINEAR_20MS_WORDS		80		//	64 Kbit/sec 8-bit signed linear, 20ms frame size#define PLAYBACK_8LINEAR_10MS_WORDS		40		//	64 Kbit/sec 8-bit signed linear, 10ms frame size#define PLAYBACK_8LINEAR_WSS_WORDS		120		//	64 Kbit/sec WSS 8-bit unsigned linear, 30ms frame size#define PLAYBACK_8LINEAR_WSS_30MS_WORDS	120		//	64 Kbit/sec WSS 8-bit unsigned linear, 30ms frame size#define PLAYBACK_8LINEAR_WSS_20MS_WORDS	80		//	64 Kbit/sec WSS 8-bit unsigned linear, 20ms frame size#define PLAYBACK_8LINEAR_WSS_10MS_WORDS	40		//	64 Kbit/sec WSS 8-bit unsigned linear, 10ms frame size#define PLAYBACK_G722_WORDS				40		//	64 Kbit/sec G.722, 10ms frame size#define PLAYBACK_G723_63_WORDS			PLAYBACK_TS63_WORDS	//	6.3 Kbit/sec G.723.1, 30ms frame size#define PLAYBACK_G723_53_WORDS			PLAYBACK_TS53_WORDS	//	5.3 Kbit/sec G.723.1, 30ms frame size#define PLAYBACK_G728_10MS_WORDS		16		//	16 Kbit/sec G.728, 10ms frame size#define PLAYBACK_G728_20MS_WORDS		32		//	16 Kbit/sec G.728, 20ms frame size#define PLAYBACK_G728_30MS_WORDS		48		//	16 Kbit/sec G.728, 30ms frame size#define PLAYBACK_G729_10MS_WORDS		6		//	8 Kbit/sec G.729, 10ms frame size#define PLAYBACK_G729_20MS_WORDS		12		//	8 Kbit/sec G.729, 20ms frame size#define PLAYBACK_G729_30MS_WORDS		18		//	8 Kbit/sec G.729, 30ms frame size// Frame sizes in bytes#define PLAYBACK_FRAME_TS85				(PLAYBACK_TS85_WORDS*2)#define PLAYBACK_FRAME_TS63				(PLAYBACK_TS63_WORDS*2)#define PLAYBACK_FRAME_TS53				(PLAYBACK_TS53_WORDS*2)#define PLAYBACK_FRAME_TS48				(PLAYBACK_TS48_WORDS*2)#define PLAYBACK_FRAME_TS41				(PLAYBACK_TS41_WORDS*2)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -