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

📄 tma4drv.h

📁 包括语音识别和数字TTS 设置语音识别内容的列表
💻 H
📖 第 1 页 / 共 5 页
字号:
//		 FilePath:					文件录音
//		 lSeek:						0表示新建一个文件录音,1表示打开存在的文件,从最后继续追加录音
//		 lMaxNum:					保留。和输入任意值
//
// Return:				
//		 -1:						录音失败
//		 其它:						返回设备播放的通道ID,用来停止,等操作
//
// Notes:							把当前设备采集到的数据保存到指定的文件中
// 
//////////////////////////////////////////////////////////////////////////
long	TELMATEFUNC TV_StartRecordFile (char *FilePath, long lSeek, long lMaxNum);

//////////////////////////////////////////////////////////////////////////
//
// Function:			TV_SetRecordFileFormate
//
// Description:			设置录音文件格式
//
// Inputs:          
//		WF_LINE			线性的wave格式.8k,16bit,单声道
//		WF_ALAW			A率的格式。
//		WF_729B			使用729B压缩达到:1k/s,压缩后的文件不能被windows播放器播放
// Return:  
//      true:成功
//		false:失败
//
// Notes:	设置的录音格式不影响当前正在录音的文件,有下一次启动文件录音时开始有效
//////////////////////////////////////////////////////////////////////////
BOOL	TELMATEFUNC TV_SetRecordFileFormate(long iFormate);
//////////////////////////////////////////////////////////////////////////
//
// Function:			TV_GetRecordFileFormate
//
// Description:			得到录音文件格式
//
// Inputs:				无
//
// Return:
//		WF_LINE			线性的wave格式.8k,16bit,单声道
//		WF_ALAW			A率的格式。
//		WF_729B			使用729B压缩达到:1k/s,压缩后的文件不能被windows播放器播放
//
//////////////////////////////////////////////////////////////////////////
long	TELMATEFUNC TV_GetRecordFileFormate();



//////////////////////////////////////////////////////////////////////////
//
// Function:			TV_SetRecordDataFormat
//
// Description:			设置录音回调数据的格式。默认为1024,8位的ALAW格式
//						此设置同时有效于TI_RECORDBUF_MESSAGE接受到的数据
//						
// Inputs:				
//		lDevID:			保留,
// Return:              
//
// Notes:	
//					    具体格式的使用方法可参数windows的PCM编码格式
//
//////////////////////////////////////////////////////////////////////////
void TELMATEFUNC TV_SetRecordDataFormat(TMWAVEFORMATEX *pFormat,long lDevID);


//////////////////////////////////////////////////////////////////////////
//
// Function:		TV_PauseRecordFile
//
// Description:	    暂停录文件
//
// Inputs:          
//		lDevID		TV_StartRecordFile返回的ID
//
// Return:         
//		false:失败
//		true:成功
// Notes:	
//			暂停文件录音
//////////////////////////////////////////////////////////////////////////
BOOL	TELMATEFUNC TV_PauseRecordFile(long lDevID);

//////////////////////////////////////////////////////////////////////////
//
// Function:		TV_ResumeRecordFile
//
// Description:	    恢复录文件
//
// Inputs:          
//		
//		lDevID		TV_StartRecordFile返回的ID
//
// Return:         
//
//		false:失败
//		true:成功
//
// Notes:	
// 
//////////////////////////////////////////////////////////////////////////
BOOL	TELMATEFUNC TV_ResumeRecordFile(long lDevID);

//////////////////////////////////////////////////////////////////////////
//
// Function:				TV_StopRecordFile
//
// Description:				停止文件录音
//
// Inputs:				
//		 DevID				TV_StartRecordFile返回的ID(如果ID为16进制0xFFFE就停止全部)
//		 bClearBusy			是否过滤录音文件最后的忙音
//							如果是因为忙音自动停止录音就可以使用此来过滤
//						   (如使用留言的时候肯定会有测到忙音才挂机,所有会有忙音信号被录入)
//
// Return:					保留
//
// Notes:	
// 
//////////////////////////////////////////////////////////////////////////
long	TELMATEFUNC TV_StopRecordFile (long lDevID,BOOL bClearBusy);


//////////////////////////////////////////////////////////////////////////
//
// Function:			TV_GetRecFilePath
//
// Description:			取得正在录音的文件路径
//
// Inputs:          
//		 FilePath:保存路径的字符指针地址。
//		 分配足够的内存长度,最大长度为MAX_PATH.
//		
// Return:              
//		TRUE:取得路径成功,路径保存在FilePath
//		FALSE:取得路径失败。可能是已经不在录音,或者录音文件路径为空	
// Notes:	
//			录音停止后,不能再取得录音文件路径
//
//////////////////////////////////////////////////////////////////////////
BOOL	TELMATEFUNC	TV_GetRecFilePath(char *FilePath,long lDevID);


//////////////////////////////////////////////////////////////////////////
//
// Function:			TV_EnableEchoCanceller
//
// Description:			打开/关闭回音抵消功能
//
// Inputs:          
//		 bEnable:TRUE  打开回音抵消模块
//       bEnable:FALSE 关闭回音抵消模块
// Return:              
//
// Notes:	
//		只需要在设置TV_SetRecSource为RS_MIC并且电话机摘着放音时
//      才有必要打开此功能。如使用电话打IP电话时。建议平时不要打开,节省电脑资源
//		抵消本地电话机产生的回音,避免对方听到自己的说话音。
//		不能抵消对方设备产生的回音,如:使用在网络电话时本地听到自己的说话。(对方用音响产生的回音)
//		
//////////////////////////////////////////////////////////////////////////
void	TELMATEFUNC TV_EnableEchoCanceller(BOOL bEnable);

//////////////////////////////////////////////////////////////////////////
//
// Function:			TV_EnableReceiveRemoteDTMF
//
// Description:			设置接收对方按键状态,这样不会漏掉对方按键声音轻的DTMF
//
// Inputs:				
//		TRUE:			启动接收对方按键,必须跟TV_EnableEchoCanceller配合使用.
//		FALSE:			启动接收对方按键
// Return:              
//
// Notes:				
//					当需要接收对方按键时,(如:应用在语音答录时),建议启动。
//					要准确接收对方按键,调用步骤/方法:
//					如:
//					CallIn....来电时.
//					1.TV_OffHookCtrl();摘机连通
//					2.TV_SetRecSource(RS_SPK);设置录音方式为电话线上录音。RS_SPK为一个数值,不是字符,可参考A4Drv.h中找到。
//					3.TV_EnableEchoCanceller(TRUE);//启动回音抵消,避免本地向对方播放提示音时干扰对方的按键
//					4.TV_EnableReceiveRemoteDTMF(TRUE);//设置为接收对方按键模式
//
//					如果有不能接收到对方按键现象,请调整TV_SetDTMFParam中的参数。
//					TV_SetDTMFParam(2,2,0.1,3);//如,降低第一个和最后一个参数值。
//					说明:打开该功能,如果在通话中本地按键,还是可以接收到DTMF
//					
//					注意:打开该功能后回音抵消时系统自动保留部分回音,所以再不需要接收对方按键时停止该功能,建议在TV_HangUpCtrl()后关闭。
//					
///////////////////////////////////////////////////////////////////////////////
BOOL	TELMATEFUNC	 TV_EnableReceiveRemoteDTMF(BOOL bEnable);

//////////////////////////////////////////////////////////////////////////
//
// Function:			TV_RegRecordCallBack
//
// Description:			注册录音回调函数,使用这种方式采集录音数据要比接受录音消息的时时性要好。
//						
// Inputs:				
//			
// Return:              
//
// Notes:				建议在语音数据时时性高的地方(如用在网络传输语音)使用此函数,不建议使用注册接受录音数据消息
//					   	注册后自动被归纳到组ID号为1,这样可以使用TV_SetVolume来修改录音的音量 
//						修改音量只对录音格式为默认的ALAW有效
//////////////////////////////////////////////////////////////////////////
void TELMATEFUNC TV_RegRecordCallBack(void *pParam,CallBack_Record RecordFunc);

//////////////////////////////////////////////////////////////////////////
//
// Function:			TV_RegRecordCallBack2
//
// Description:			注册录音回调函数.使用这种方式采集录音数据要比接受录音消息的时时性要好。
//				
// DATE:				2004/12/14
//
// Inputs:				
//			
// Return:              
//
// Notes:	
//				建议在语音数据时时性高的地方(如用在网络传输语音)使用此函数,不建议使用注册接受录音数据消息
//				用结构方式回调数据
//				建议DELPHI语言使用此回调	    
//				注册后自动被归纳到组ID号为2,这样可以使用TV_SetVolume来修改录音的音量
//				修改音量只对录音格式为默认的ALAW有效
//////////////////////////////////////////////////////////////////////////
void TELMATEFUNC TV_RegRecordCallBack2(void *pParam,CallBack_Record2 RecordFunc);


//////////////////////////////////////////////////////////////////////////
//
// Function:			TV_UnRegRecordCallBack
//
// Description:			删除录音回调函数
//						
// Inputs:				无
//			
// Return:              无
//
// Notes:	
//					    
//
//////////////////////////////////////////////////////////////////////////
void TELMATEFUNC TV_UnRegRecordCallBack();



//////////////////////////////////////////////////////////////////////////
//
// Function:			TV_RegRecBufWnd
//
// Description:			注册接受录音数据的窗口
//
// Inputs:          
//		 hWnd:			窗口句柄
//		
// Return:              
//		TRUE:			注册成功
//		FALSE:			注册失败
// Notes:	
//			在关闭设备(调用TV_Disable)前确认所有注册的窗口都已经被反注册)
//			或保证注册的窗口还没被销毁
//
//			如果您在关闭设备前没有反注册窗口而把应用程序的窗口给销毁了,会引起不正常关闭设备
//
//////////////////////////////////////////////////////////////////////////
BOOL	TELMATEFUNC TV_RegRecBufWnd(HWND hWnd);

//////////////////////////////////////////////////////////////////////////
//
// Function:			TV_UnRegRecBufWnd
//
// Description:			反注册接受录音数据的窗口
//
// Inputs:          
//		 hWnd:			窗口句柄
//		
// Return:              
//		TRUE:			反注册成功
//		FALSE:			反注册失败,没有注册过此窗口
// Notes:	
//			
//
//////////////////////////////////////////////////////////////////////////
BOOL	TELMATEFUNC TV_UnRegRecBufWnd(HWND hWnd);

//////////////////////////////////////////////////////////////////////////
//
// Function:						TV_StartSoundRecordFile
//
// Description:						开始文件录音
//
// Date:							2005/04/29
//
// Inputs:          
//		 FilePath:					文件录音
//		 bMix:						是否跟本地录音数据混合
//		 lSeek:						0表示新建一个文件录音,1表示打开存在的文件,从最后继续追加录音
//		 lMaxNum:					保留。和输入任意值
//
// Return:				
//		 -1:						录音失败
//		 其它:						成功
//
// Notes:							把当前从声卡过来的数据保存到指定的文件中
// 
//////////////////////////////////////////////////////////////////////////
long	TELMATEFUNC TV_StartSoundRecordFile (char *FilePath,BOOL bMix,long lSeek, long lMaxNum);

//////////////////////////////////////////////////////////////////////////
//
// Function:						TV_StartSoundRecordFile
//
// Date:							2005/04/29
//
// Description:						停止声卡数据录音
//
// Date:							2005/04/29
//
// Inputs:							无
//
// Return:				
//		 0:						    停止失败
//		 其它:						成功
//
// Notes:							停止从声卡数据录音
// 
//////////////////////////////////////////////////////////////////////////
long	TELMATEFUNC TV_StopSoundRecordFile ();


//////////////////////////////////////////////////////////////////////////
//
// Function:		TV_PauseSoundRecordFile
//
// Date:			2005/04/29
//
// Description:	    暂停声卡文件录音
//
// Inputs:			无
//
// Return:         
//		false:失败
//		true:成功
// Notes:	
//			暂停声卡数据录音
//////////////////////////////////////////////////////////////////////////
BOOL	TELMATEFUNC TV_PauseSoundRecordFile();

//////////////////////////////////////////////////////////////////////////
//
// Function:		TV_ResumeSoundRecordFile
//
// Date:			2005/04/29
//
// Description:	    恢复声卡文件录音
//
// Inputs:			无
//
// Return:         
//		false:失败
//		true:成功
// Notes:	
//			恢复声卡数据录音
//////////////////////////////////////////////////////////////////////////
BOOL	TELMATEFUNC TV_ResumeSoundRecordFile();

//////////////////////////////////////////////////////////////////////////
//
// Function:		TV_IsSoundRecordFile
//
// Date:			2005/04/29
//
// Description:	    是否在声卡录音
//
// Inputs:			无
//
// Return:         
//		FALSE:		声卡录音没有在进行
//		TRUE:		声卡录音正在进行
// Notes:	
//
//////////////////////////////////////////////////////////////////////////
BOOL	TELMATEFUNC TV_IsSoundRecordFile();

//////////////////////////////////////////////////////////////////////////
//
// Function:			TV_GetSoundRecordFilePath
//
// Description:			取得正在声卡录音的文件路径
//
// Inputs:          
//		pOutBuf:		输出的BUF
//      iLen:			分配的BUF的长度,BUF不够长就会返回失败
//		
// Return:              
//		1:				pOutBuf保存输出的空间
//		-1:取得路径失败。没有在录音
//		-2:录音文件路径为空
//		-3:分配的BUF不够大	
// Notes:	
//			录音停止后,不能再取得录音文件路径
//
//////////////////////////////////////////////////////////////////////////
long		TELMATEFUNC	TV_GetSoundRecordFilePath(char *pOutBuf,long iLen);







/*************************************************************************/
//

⌨️ 快捷键说明

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