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

📄 ac48drdf.h

📁 Audiocodes old vision DSP driver
💻 H
📖 第 1 页 / 共 4 页
字号:
				/* Word #3 */
		Word16 Coder                    :5;
		Word16 Const_0_3_5              :2;
		Word16 ReceptionOverRun         :1;
		Word16 HighPassFilterEnable		:1; /* "HPFE" */
		Word16 PostFilterEnable         :1; /* "PFE"  */
		Word16 SilenceCompressionEnable :1; /* "SCE"  */
		Word16 BadFrameInterpolation    :1; /* "BFI"  */
		Word16 MisAliamentDetectedCorrected :1; /* "MDC" */
        Word16 EchoCancellerFreeze      :1;
		Word16 EchoCanselerEnable       :1; /* "ECE"  */
		Word16 More3                    :1;	/* "M"    */
				/* Word #4 */
		Word16 ModulationType           :5; /* TModulationType */
		Word16                          :2;
		Word16 FrameType                :1;

		Word16 RelayType				:4; /* TRelayType */
		Word16                          :1;
        Word16 Protocol                 :1;
		Word16 DummyFaxPacket           :1; /* "D" */
		Word16                          :1;	/* "M" */
				/* Word #5 */
		Word16 ESigOnOffset             :5;	/* On-Hook  Offset */
		Word16 Const_0_5_5              :3;
		Word16 ESigOffOffset            :5;	/* Off-Hook Offset */
		Word16 Const_0_5_13             :2;
		Word16 More5                    :1;	/* "M" */
 		       	/* Word #6 */
		Word16 SignalingType			:3; /* TSignalingType */
		Word16 SignalingLevel           :5;
		Word16 DigitPair                :5; /* according to SignalingType */
		Word16 Const_0_6_13             :2; 
		Word16 More6                    :1;	/* "M" */
				/* Word #7 */
		Word16 SignalingOnOffset        :5;
		Word16 Const_0_7_5              :3;
		Word16 SignalingOffOffset       :5;
		Word16 Const_0_7_13             :2;
		Word16 More7                    :1;	/* "M" */
        }TStatusPacketHeader;
#elif ENDIAN_MODE == BIG_ENDIAN
	typedef struct
		{   	/* Word #0 */
		Word16 ConstAA                  :8;

		Word16 Const_0_0_13             :3;
		Word16 ChannelId                :5;
				/* Word #1 */
		Word16 PayLoadSize              :8;

		Word16 PacketSize               :8;
				/* Word #2 */
		Word16 Vfd						:2; /* "TVoiceFaxData" */
		Word16 VoiceVolume              :6;

		Word16 More2                    :1;	/* "M" */
		Word16 Idle						:1;
		Word16 Test                     :3; /* TTest */
		Word16 OverRun       			:1; /* Const_0_2_9 */
		Word16 UnderRun   				:1; /* Const_0_2_9 */
		Word16 VoiceActivityDetector    :1; /* "VAD" */
				/* Word #3 */
		Word16 ReceptionOverRun         :1;
		Word16 Const_0_3_5              :2;
		Word16 Coder                    :5;

		Word16 More3                    :1;	/* "M"    */
		Word16 EchoCanselerEnable       :1; /* "ECE"  */
        Word16 EchoCancellerFreeze      :1;
		Word16 MisAliamentDetectedCorrected :1; /* "MDC" */
		Word16 BadFrameInterpolation    :1; /* "BFI"  */
		Word16 SilenceCompressionEnable :1; /* "SCE"  */
		Word16 PostFilterEnable         :1; /* "PFE"  */
		Word16 HighPassFilterEnable		:1; /* "HPFE" */
				/* Word #4 */
		Word16 FrameType                :1;
		Word16                          :2;
		Word16 ModulationType           :5; /* TModulationType */

		Word16                          :1;	/* "M" */
		Word16 DummyFaxPacket           :1; /* "D" */
        Word16 Protocol                 :1;
		Word16                          :1;
		Word16 RelayType				:4; /* TRelayType */
													
				/* Word #5 */
		Word16 Const_0_5_5              :3;
		Word16 ESigOnOffset             :5;	/* On-Hook  Offset */

		Word16 More5                    :1;	/* "M" */
		Word16 Const_0_5_13             :2;
		Word16 ESigOffOffset            :5;	/* Off-Hook Offset */
				/* Word #6 */
		Word16 SignalingLevel           :5;
		Word16 SignalingType			:3; /* TSignalingType */

		Word16 More6                    :1;	/* "M" */
		Word16 Const_0_6_13             :2;
		Word16 DigitPair                :5; /*acording to SignalingType*/
				/* Word #7 */
		Word16 Const_0_7_5              :3;
		Word16 SignalingOnOffset        :5;

		Word16 More7                    :1;	/* "M" */
		Word16 Const_0_7_13             :2;
		Word16 SignalingOffOffset       :5;
		}TStatusPacketHeader;
#endif	/* ENDIAN_MODE */

#elif AC48_SIGNALING_MODE == AC48_EXTENDED_SIGNALING_MODE

/*--------------------------- Tone & Cas Footers ------------------------*/

#if ENDIAN_MODE == LITTLE_ENDIAN
	typedef struct
		{     	/* Word #6 */
        Word16 SignalingType			:3; /* TSignalingType */
		Word16 SignalingGain            :5;
		Word16 DigitPair                :5; /* according to SignalingType */
		Word16 SignalingMode            :2; /* extended, CAS or no-change */
		Word16 More6                    :1;	/* "M" */
				/* Word #7 */
		Word16 SignalingOnOffset        :5;
		Word16 Const_0_7_5              :3;
		Word16 SignalingOffOffset       :5;
		Word16 Const_0_7_13             :2;
		Word16 More7                    :1;	/* "M" */
        }TToneSignalingFooter;
	typedef struct
		{  	    /* Word #6 */
		Word16 SignalDst				:1; /* state after first change   */ 
		Word16 SignalCst                :1; /*           --"--            */
		Word16 SignalBst                :1; /*           --"--            */ 
		Word16 SignalAst                :1; /*           --"--            */ 
		Word16 Const_0_6_4              :4;
 		
        Word16 SignalDnd				:1; /* state after second change  */ 
		Word16 SignalCnd                :1; /*           --"--            */ 
		Word16 SignalBnd                :1; /*           --"--            */ 
		Word16 SignalAnd                :1; /*           --"--            */ 
		Word16 Const_0_6_12             :1;
        Word16 SignalingMode            :2; /* extended, CAS or no-change */ 
		Word16 More6                    :1;	/* "M" */
				/* Word #7 */
		Word16 FirstChangeOffset        :5;
		Word16 Const_0_7_5              :3;
		
        Word16 SecondChangeOffset       :5;
		Word16 Const_0_7_13             :2;
		Word16 More7                    :1;	/* "M" */
        }TCasFooter;
#elif ENDIAN_MODE == BIG_ENDIAN
	typedef struct
        {     	/* Word #6 */
		Word16 SignalingGain            :5;
		Word16 SignalingType			:3; /* TSignalingType */
		
		Word16 More6                    :1;	/* "M" */
		Word16 SignalingMode            :2; /* extended, CAS or no-change */
        Word16 DigitPair                :5; /* according to SignalingType */
				/* Word #7 */
		Word16 Const_0_7_5              :3;
		Word16 SignalingOnOffset        :5;
		
		Word16 More7                    :1;	/* "M" */
		Word16 Const_0_7_13             :2;
        Word16 SignalingOffOffset       :5;
        }TToneSignalingFooter;
	typedef struct
        {      	/* Word #6 */
		Word16 Const_0_6_4              :4;
		Word16 SignalAst                :1; /*           --"--            */ 
		Word16 SignalBst                :1; /*           --"--            */ 
		Word16 SignalCst                :1; /*           --"--            */
		Word16 SignalDst				:1; /* state after first change   */ 
     
		Word16 More6                    :1;	/* "M" */
        Word16 SignalingMode            :2; /* extended, CAS or no-change */ 
		Word16 Const_0_6_12             :1;
		Word16 SignalAnd                :1; /*           --"--            */ 
		Word16 SignalBnd                :1; /*           --"--            */ 
		Word16 SignalCnd                :1; /*           --"--            */ 
        Word16 SignalDnd				:1; /* state after second change  */ 
				/* Word #7 */
		Word16 Const_0_7_5              :3;
		Word16 FirstChangeOffset        :5;
		
		Word16 More7                    :1;	/* "M" */
		Word16 Const_0_7_13             :2;
        Word16 SecondChangeOffset       :5;
        }TCasFooter;
#endif	/* ENDIAN_MODE */

/*---------------------------TCommandPacketHeader------------------------*/

#if ENDIAN_MODE == LITTLE_ENDIAN
	typedef struct
		{   	/* Word #0 */
		Word16 ConstAA                  :8;
		Word16 ChannelId                :5;
		Word16 Const_0_0_13             :3;
				/* Word #1 */
		Word16 PayLoadSize              :8;
		Word16 PacketSize               :8;
				/* Word #2 */
		Word16 VoiceVolume              :6;
		Word16 Vfd						:2; /* "TVoiceFaxData" */
		Word16 ToneGeneratorRedirection	:1; 
		Word16 DecoderOutMode           :2; /* "DOM" */
		Word16 Test                     :3; /* TTest */
		Word16 Idle						:1;
		Word16 More2                    :1;	/* "M"   */
				/* Word #3 */
		Word16 Coder                    :5;
		Word16 Const_0_3_5              :2;
		Word16 OnTheFlyRelayDisable     :1;

		Word16 HighPassFilterEnable		:1; /* "HPFE" */
		Word16 PostFilterEnable         :1; /* "PFE"  */
		Word16 SilenceCompressionEnable :1; /* "SCE"  */
		Word16 BadFrameInterpolation    :1; /* "BFI"  */
		Word16 CallerIdEnable           :1;
        Word16 EchoCancellerFreeze      :1;
		Word16 EchoCanselerEnable       :1; /* "ECE"  */
		Word16 More3                    :1;	/* "M"    */
				/* Word #4 */
		Word16 ModulationType           :5; /* TModulationType */
		Word16                          :2;
		Word16 FrameType                :1;

		Word16 RelayType				:4; /* TRelayType */
		Word16                          :1;
        Word16 Protocol                 :1;
		Word16 DummyFaxPacket			:1; /* "D" */
		Word16                          :1;	/* "M" */
               /* Word #5 */
               /* Signaling Control flages for   */
               /* Enable/Disable Signal Detectors */
        Word16 MfR1RegisterSignaling    :1;
        Word16 MfSs5RegisterSignaling   :1;
        Word16 MfR2ForwardRegisterSignaling  :1;
        Word16 MfR2BackwardRegisterSignaling :1;
        Word16 R1LineSignaling          :1;
        Word16 Ac15SignalingSystem      :1;
        Word16 Ss4SignalingSystem       :1;
        Word16 Ss5LineSignaling         :1;

        Word16 R2LineSignaling          :1;
        Word16 Dtmf                     :1;
        Word16 CallProgress             :1;
        Word16 FaxTest                  :1;
        Word16 UserDefinedTones         :1;
        Word16                          :3;
        union
            {
            TToneSignalingFooter Tone;
            TCasFooter Cas;
            }u;
        }TCommandPacketHeader;

#elif ENDIAN_MODE == BIG_ENDIAN
	typedef struct
		{   	/* Word #0 */
		Word16 ConstAA                  :8;

		Word16 Const_0_0_13             :3;
		Word16 ChannelId                :5;
				/* Word #1 */
		Word16 PayLoadSize              :8;

		Word16 PacketSize               :8;
				/* Word #2 */
		Word16 Vfd						:2; /* "TVoiceFaxData" */
		Word16 VoiceVolume              :6;

		Word16 More2                    :1;	
		Word16 Idle						:1;
		Word16 Test                     :3; /* TTest */
		Word16 DecoderOutMode           :2; /* "DOM" */
		Word16 ToneGeneratorRedirection :1; 
				/* Word #3 */
		Word16 OnTheFlyRelayDisable     :1;
		Word16 Const_0_3_5              :2;
		Word16 Coder                    :5;

		Word16 More3                    :1;	
		Word16 EchoCanselerEnable       :1; /* "ECE"  */
        Word16 EchoCancellerFreeze      :1;
		Word16 CallerIdEnable           :1;
		Word16 BadFrameInterpolation    :1; /* "BFI"  */
		Word16 SilenceCompressionEnable :1; /* "SCE"  */
		Word16 PostFilterEnable         :1; /* "PFE"  */
		Word16 HighPassFilterEnable		:1; /* "HPFE" */
				/* Word #4 */
		Word16 FrameType                :1;
		Word16                          :2;
		Word16 ModulationType           :5; /* TModulationType */

		Word16                          :1;	
		Word16 DummyFaxPacket			:1; /* "D" */
        Word16 Protocol                 :1;
		Word16                          :1;
		Word16 RelayType				:4; /* TRelayType */
                /* Word #5 */
                /* Signaling Control flages for   */
                /* Enable/Disable Signal Detectors */
        Word16 Ss5LineSignaling         :1;
        Word16 Ss4SignalingSystem       :1;
        Word16 Ac15SignalingSystem      :1;
        Word16 R1LineSignaling          :1;
        Word16 MfR2BackwardRegisterSignaling :1;
        Word16 MfR2ForwardRegisterSignaling  :1;
        Word16 MfSs5RegisterSignaling   :1;
        Word16 MfR1RegisterSignaling    :1;
      
        Word16                          :3; 
        Word16 UserDefinedTones         :1;
        Word16 FaxTest                  :1;
        Word16 CallProgress             :1;
        Word16 Dtmf                     :1;
        Word16 R2LineSignaling          :1;
        union
            {
            TToneSignalingFooter Tone;
            TCasFooter Cas;
            }u;
        }TCommandPacketHeader;
#endif	/* ENDIAN_MODE */

/*--------------------------TStatusPacketHeader------------------------*/

#if ENDIAN_MODE == LITTLE_ENDIAN
    typedef struct
		{	 	/* Word #0 */
		Word16 ConstAA                  :8;
		Word16 ChannelId                :5;
		Word16 Const_0_0_13             :3;
				/* Word #1 */
		Word16 PayLoadSize              :8;
		Word16 PacketSize               :8;
				/* Word #2 */
		Word16 VoiceVolume              :6;
		Word16 Vfd						:2; /* "TVoiceFaxData" */
		Word16 VoiceActivityDetector    :1; /* "VAD" */
		Word16 UnderRun   				:1; /* Const_0_2_9 */
        Word16 OverRun       			:1; /* Const_0_2_9 */
		Word16 Test                     :3; /* TTest */
		Word16 Idle						:1;
		Word16 More2                    :1;	
				/* Word #3 */
		Word16 Coder                    :5;
		Word16 Const_0_3_5              :2;
		Word16 ReceptionOverRun         :1;
		Word16 HighPassFilterEnable		:1; /* "HPFE" */
		Word16 PostFilterEnable         :1; /* "PFE"  */
		Word16 SilenceCompressionEnable :1; /* "SCE"  */
		Word16 BadFrameInterpolation    :1; /* "BFI"  */
		Word16 MisAliamentDetectedCorrected :1; /* "MDC" */
        Word16 EchoCancellerFreeze      :1;
		Word16 EchoCanselerEnable       :1; /* "ECE"  */
		Word16 More3                    :1;	
				/* Word #4 */
		Word16 ModulationType           :5; /* TModulationType */
		Word16                          :2;
		Word16 FrameType                :1;

		Word16 RelayType				:4; /* TRelayType */
		Word16                          :1;
        Word16 Protocol                 :1;
		Word16 DummyFaxPacket           :1; /* "D" */
		Word16                          :1;	
 		   	/* Word #5 */
        Word16 FrameEnergy              :8;
        Word16 SignalDStatus            :1;
        Word16 SignalCStatus            :1;
        Word16 SignalBStatus            :1;
        Word16 SignalAStatus            :1;
        Word16 Const_0_5_12             :4;
        union
            {
            TToneSignalingFooter Tone;
            TCasFooter Cas;
            }u;
        }TStatusPacketHeader;  	
#elif ENDIAN_MODE == BIG_ENDIAN
	typedef struct
		{	    /* Word #0 */
		Word16 ConstAA                  :8;

		Word16 Const_0_0_13             :3;
		Word16 ChannelId                :5;
				/* Word #1 */
		Word16 PayLoadSize              :8;

		Word16 PacketSize               :8;
				/* Word #2 */
		Word16 Vfd						:2; /* "TVoiceFaxData" */
		Word16 VoiceVolume              :6;

		Word16 More2                    :1;	/* "M" */
		Word16 Idle						:1;
		Word16 Test                     :3; /* TTest */
		Word16 OverRun       			:1; /* Const_0_2_9 */
		Word16 UnderRun   				:1; /* Const_0_2_9 */
		Word16 VoiceActivityDetector    :1; /* "VAD" */
				/* Word #3 */
		Word16 ReceptionOverRun         :1;
		Word16 Const_0_3_5              :2;
		Word16 Coder                    :5;

		Word16 More3                    :1;	/* "M"    */
		Word16 EchoCanselerEnable       :1; /* "ECE"  */
        Word16 EchoCancellerFreeze      :1;
		Word16 MisAliamentDetectedCorrected :1; /* "MDC" */
		Word16 BadFrameInterpolation    :1; /* "BFI"  */
		Word16 SilenceCompressionEnable :1; /* "SCE"  */
		Word16 PostFilterEnable         :1; /* "PFE"  */
		Word16 HighPassFilterEnable		:1; /* "HPFE" */
				/* Word #4 */
		Word16 FrameType                :1;
		Word16                          :2;
		Word16 ModulationType           :5; /* TModulationType */

		Word16                          :1;	/* "M" */
		Word16 DummyFaxPacket           :1; /* "D" */
        Word16 Protocol                 :1;
		Word16                          :1;
		Word16 RelayType				:4; /* TRelayType */
                /* Word #5 */
        Word16 FrameEnergy              :8;

        Word16 Const_0_5_12             :4;
        Word16 SignalAStatus            :1;
        Word16 SignalBStatus            :1;
        Word16 SignalCStatus            :1;
        Word16 SignalDStatus            :1;
        union
            {
            TToneSignalingFooter Tone;
            TCasFooter Cas;
            }u;
        }TStatusPacketHeader;
#endif	/* ENDIAN_MODE */
#endif /* AC48_SIGNALING_MODE */

    typedef struct
	    {
	    TCommandPacketHeader Header;
	    char Payload[MAX_PAYLOAD_SIZE+PACKET_FOOTER_SIZE];   
	    }TCommandPacket;

    typedef struct
	    {
	    TStatusPacketHeader Header;
	    char Payload[MAX_PAYLOAD_SIZE+PACKET_FOOTER_SIZE];    
	    }TStatusPacket;


/* 	#define TReceivePacketErrorFlags struct TReceivePacketErrorFlags
   	TReceivePacketErrorFlags
   		{
   		Word16 ChecksumError		  	:1;
   		Word16 SequenceNumberError  	:1;	/* The frame will be  	*/
   						/* corrently processed. after reporting, the  	*/
   						/* DSP will init the internal counter acording	*/
   						/* to the number reported by the host 		  	*/
/* 		Word16 SyncHeaderError	 	:1;	/* The DSP will not  	*/
   						/* rocess the frame in which the error has found*/
/* 		Word16 ModeError		   		:1;
   		Word16 UnderRunError	   		:1;/*Bad Frame Interpolation*/
/* 		Word16 OverRunError	   		:1; /* The DSP will dispose */
   				   		/* the extra frame 								*/
/* 		Word16 				   		:2;
   		};
*/

#endif  /* TypeDef_h */

⌨️ 快捷键说明

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