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

📄 djtts3.pas

📁 东进D160A板卡自动外呼程序代码
💻 PAS
字号:
unit DJTTS3;

interface

uses windows;

const
  INFO_CONVERT_COMPLATE =           1;   //语音文件转换完毕
  INFO_CONVERT_NOT_COMPLATE =       2;   //语音文件转换未完毕

  INFO_PLAY_COMPLATE =              3;   //转换播放完毕
  INFO_PLAY_NOT_COMPLATE =          4;   //转换播放未完毕

  INFO_USE_LABLE =                  1;   //使用使用转换标识
  INFO_NOTUSE_LABLE =               0;   //不使用使用转换标识

  INFO_TEXT_BUFFER =                0;   //文本字符串
  INFO_TEXT_FILENAME =             -1;   //文本文件名

  OPERATE_SUCCESS =                 0;   //操作成功

  ERR_NOT_INIT_TTS_CARD =          -1;  //没有初始化语音卡
  ERR_NOT_TTS_CARD =               -2;  //不是TTS卡
  ERR_MEMERY_ASSIGN_FAIL =         -3;  //内存分配失败
  ERR_NO_TTS_CHANNEL =             -4;  //没有TTS通道资源
  ERR_INIT_TTS_CHANNEL_FAIL =      -5;  //初始化TTS通道失败
  ERR_TTS_CHANNELNO_INVALID =      -6;  //TTS通道号无效
  ERR_TTS_CHANNEL_NO_FREE =        -7;  //TTS通道不空闲
  ERR_INPUTTEXTSTR_INVALID =       -8;  //输入文本字符串为空
  ERR_INPUTTEXTFILE_NOT_EXISTS =   -9;  //输入文本文件不存在

{-------------------------------------------------------------------------------
  Procedure: DJTTS3_Init
  Author:    Xsp
  DateTime:  2006.04.25
  Arguments:
  Result:    LongInt
    大于0的数值                      ·操作成功(返回可以使用语音通道数)
     ERR_NOT_INIT_TTS_CARD            ·没有初始化语音卡
     ERR_NOT_TTS_CARD                 ·不是TTS卡
     ERR_NO_TTS_CHANNEL               ·没有TTS通道资源
     ERR_INIT_TTS_CHANNEL_FAIL        ·初始化TTS通道失败
  Popose:     TTS初始化。为了使用TTS功能,必须成功调用本函数。本函数首先创建转换
    线程并分配内存。本函数还要求在系统中,存在D161A-TTS卡并且已经成功的初始化了
    该卡(成功调用函数EnableCard)。
-------------------------------------------------------------------------------}
function  DJTTS3_Init(): LongInt; stdcall; far external 'DJTTS3.dll';

{-------------------------------------------------------------------------------
  Procedure: DJTTS3_AddTTSToChannel
  Author:    Xsp
  DateTime:  2006.04.25
  Arguments: wChnlNo: Word
  Result:    LongInt
    OPERATE_SUCCESS                  ·操作成功
     ERR_TTS_CHANNELNO_INVALID         ·TTS通道号无效
     ERR_TTS_CHANNEL_ISNOT_ENOUGH      ·TTS通道资源不够
  Popose:    在DJTTS3_Init成功后调用,向可用的语音通道添加TTS引擎资源。为了使用
    TTS功能,必须成功调用本函数。注意:建议只对需要TTS功能的语音通道(一般为外线
    通道)添加TTS引擎资源,以减少系统资源的使用和转换效率的提高。
-------------------------------------------------------------------------------}
function  DJTTS3_AddTTSToChannel(wChnlNo: Word): LongInt; stdcall; far external 'DJTTS3.dll';

{-------------------------------------------------------------------------------
  Procedure: DJTTS3_DelTTSFromChannel
  Author:    Xsp
  DateTime:  2006.04.25
  Arguments: wChnlNo: Word
  Result:    LongInt
     OPERATE_SUCCESS                  ·操作成功
     ERR_TTS_CHANNELNO_INVALID        ·TTS通道号无效
  Popose:    在DJTTS3_Release前调用,从可用的语音通道释放TTS引擎资源。
-------------------------------------------------------------------------------}
function  DJTTS3_DelTTSFromChannel(wChnlNo: Word): LongInt; stdcall; far external 'DJTTS3.dll';

{-------------------------------------------------------------------------------
  Procedure: DJTTS3_GetTotalTTSChannel
  Author:    Xsp
  DateTime:  2006.04.25
  Arguments:
  Result:    integer
  Popose:    返回系统中激活的TTS通道资源的个数。
-------------------------------------------------------------------------------}
function DJTTS3_GetTotalTTSChannel(): Integer; stdcall; far external 'DJTTS3.dll';

{-------------------------------------------------------------------------------
  Procedure: DJTTS3_GetLeaveTTSChannel
  Author:    Xsp
  DateTime:  2006.04.25
  Arguments:
  Result:    integer
  Popose:    返回系统中激活了未使用的TTS通道资源的个数。
-------------------------------------------------------------------------------}
function DJTTS3_GetLeaveTTSChannel(): Integer; stdcall; far external 'DJTTS3.dll';

{-------------------------------------------------------------------------------
  Procedure: DJTTS3_Release
  Author:    Xsp
  DateTime:  2006.04.25
  Arguments: 
  Result:    None
  Popose:    释放初始化函数占用的资源。本函数必须在DisableCard之前调用。
-------------------------------------------------------------------------------}
procedure DJTTS3_Release(); stdcall; far external 'DJTTS3.dll';

{-------------------------------------------------------------------------------
  Procedure: DJTTS3_StartPlayText
  Author:    Xsp
  DateTime:  2006.04.25
  Arguments: wChnlNo: Word; pText: Pchar; InputType: Integer; iVoice: Integer = 0; iSpeed: Integer = 50; iVolume: Integer = 50; iLableFlag: Integer = INFO_USE_LABLE
  Result:    LongInt
   OPERATE_SUCCESS               ·操作成功
   ERR_TTS_CHANNELNO_INVALID      ·TTS通道号无效
   ERR_NO_TTS_CHANNEL             ·没有TTS引擎资源
   ERR_TTS_CHANNEL_NO_FREE        ·TTS通道不空闲
   ERR_INPUTTEXTSTR_INVALID       ·输入文本字符串为空
     ERR_INPUTTEXTFILE_NOT_EXISTS   ·输入文本文件不存在
  Popose:    某个通道开始一个TTS放音。当成功的调用了本函数后,应该不断的调用函数
    DJTTS3_CheckPlayTextEnd,以维持TTS放音的持续;如果需要停止TTS放音,可以调用
    函数DJTTS3_StopPlayText。
-------------------------------------------------------------------------------}
function  DJTTS3_StartPlayText(wChnlNo: Word; pText: Pchar; InputType: Integer;
  iVoice: Integer = 0; iSpeed: Integer = 50; iVolume: Integer = 50;
  iLableFlag: Integer = INFO_USE_LABLE): LongInt; stdcall; far external 'DJTTS3.dll';

{-------------------------------------------------------------------------------
  Procedure: DJTTS3_CheckPlayTextEnd
  Author:    Xsp
  DateTime:  2006.04.25
  Arguments: wChnlNo: word
  Result:    LongInt
     INFO_PLAY_COMPLATE              ·转换播放完毕
     INFO_PLAY_NOT_COMPLATE          ·转换播放未完毕
     ERR_TTS_CHANNELNO_INVALID       ·TTS通道号无效
     ERR_NO_TTS_CHANNEL              ·没有TTS引擎资源
  Popose:    检查通道TTS放音是否结束,并维持TTS放音的持续。在成功调用函数
    DJTTS3_StartPlayText开始一个TTS放音以后,必须不断的调用本函数。
-------------------------------------------------------------------------------}
function  DJTTS3_CheckPlayTextEnd(wChnlNo: word): LongInt; stdcall; far external 'DJTTS3.dll';
{-------------------------------------------------------------------------------
  Procedure: DJTTS3_StopPlayText
  Author:    Xsp
  DateTime:  2006.04.25
  Arguments: wChnlNo: word
  Result:    LongInt
     OPERATE_SUCCESS                 ·操作成功
     ERR_TTS_CHANNELNO_INVALID       ·TTS通道号无效
     ERR_NO_TTS_CHANNEL              ·没有TTS引擎资源
  Popose:    停止通道TTS放音。
-------------------------------------------------------------------------------}
function	DJTTS3_StopPlayText(wChnlNo: word): LongInt; stdcall; far external 'DJTTS3.dll';

function	DJTTS3_CvtTextToVocFile(pText: Pchar; iVoice: Integer;
  pVocFileName: Pchar; wChnlNo: Word = 0; iSpeed: Integer = 50;
  iVolume: Integer = 50; iLableFlag: Integer = INFO_USE_LABLE): LongInt; stdcall; far external 'DJTTS3.dll';
function	DJTTS3_CvtTextToWaveFile(pText: Pchar; iVoice: Integer;
  pWaveFileName: PChar; wChnlNo: Word = 0; iSpeed: Integer = 50;
  iVolume: Integer = 50; iLableFlag: Integer = INFO_USE_LABLE): LongInt; stdcall; far external 'DJTTS3.dll';
function	DJTTS3_CvtTextFileToVocFile(pTextFileName: Pchar; iVoice: Integer;
  pVocFileName: Pchar; wChnlNo: Word = 0; iSpeed: Integer = 50;
  iVolume: Integer = 50; iLableFlag: Integer = INFO_USE_LABLE): LongInt; stdcall; far external 'DJTTS3.dll';
function	DJTTS3_CvtTextFileToWaveFile(pTextFileName: PChar; iVoice: Integer;
  pWaveFileName: Pchar; wChnlNo: Word = 0; iSpeed: Integer = 50;
  iVolume: Integer = 50; iLableFlag: Integer = INFO_USE_LABLE): LongInt; stdcall; far external 'DJTTS3.dll';
function  DJTTS3_CheckCvtEnd(wChnlNo: Word = 0): LongInt; stdcall; far external 'DJTTS3.dll';
function  DJTTS3_CvtStop(wChnlNo: Word = 0): LongInt; stdcall; far external 'DJTTS3.dll';

function  DJTTS3_StartAudioPlayText(pText: PChar; InputType: Integer;
  iVoice: Integer = 0; iSpeed: Integer = 50; iVolume: Integer = 50;
  iLableFlag: Integer = INFO_USE_LABLE): LongInt; stdcall; far external 'DJTTS3.dll';
function  DJTTS3_StopAudioPlayText(): LongInt; stdcall; far external 'DJTTS3.dll';
function  DJTTS3_CheckAudioPlayText(): LongInt; stdcall; far external 'DJTTS3.dll';

implementation

end.

⌨️ 快捷键说明

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