1. 程式人生 > >delphi 播放語音

delphi 播放語音

public flag ssa unit voc nts sse pub rap

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes,
  Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls,
  SpeechLib_TLB;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    
procedure FormCreate(Sender: TObject); procedure FormDestroy(Sender: TObject); private { Private declarations } procedure PlaywavByStrs(pvWavStr: string; SVSFlagsAsync: Integer); public { Public declarations } end; var Form1: TForm1; fVoce: ISpeechVoice; implementation {
$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin PlaywavByStrs(Edit1.Text, 0); end; procedure TForm1.FormCreate(Sender: TObject); begin fVoce := CoSpVoice.Create; fVoce.Resume; end; procedure TForm1.FormDestroy(Sender: TObject); begin fVoce._Release; end; procedure TForm1.PlaywavByStrs(pvWavStr: string; SVSFlagsAsync: Integer);
begin if fVoce.Status.RunningState = SRSEDone then fVoce.Speak(pvWavStr, SVSFlagsAsync); end; end.

需要引用SpeechLib_TLB.pas 文件

delphi 播放語音