Sintetizador de Voz

Delphi

04/07/2008

Olá pessoal,

Estou desenvolvendo uma aplicação para deficientes fisicos. É um teclado virtual onde o usuário terá a opção de sintetizar em voz o que ele escrever....

Bem, o problema é que tow meio enrolado em como fazer.....O q eu consegui até agora foi sintetizar em inglês....mas preciso q seja em português....


Os tutos q encontro são em inglês e não entendo mt coisa.....

Andei lendo q preciso usar lhttsptb e spchapi....mas tbm não sei como fazer...

Se alguém puder me ajudar....Ficaria mt grato pela colaboração.....

Vlw.....


Williame Rocha


Wdrocha

Wdrocha

Curtidas 0

Respostas

Rm

Rm

04/07/2008

Tem um post de 16/06/2006 ´O Delphi sabe falar´ que não consegui localizar no forum.Tenho salvo e utilzei para fazer agente falar em portugues:

__________________________________________________
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComObj, StdCtrls;

type
TForm1 = class(TForm)
Memo1: TMemo;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
voz: OLEVariant;
begin
voz := CreateOLEObject (´SAPI.SpVoice´);
voz.Speak (memo1.Text, 0);
end;

end.
__________________________________________________

Tem sim kra, segue abaixo um breve passo a passo:

1. Faça o Download do arquivo MSAgent.exe, pois este é o componente essencial.
Observação Se o seu Sistema for Windows 2000 ou superior ignore esse Dica, pois os componentes essenciais do Microsoft Agent já Foram instalados.

Local de Download:
[url]http://activex.microsoft.com/activex/controls/agent2/MSagen t.exe[/url]


2. Se você quer ouvir seu agenter falar, faça o download do arquivo tv_enua.exe e o instale.

Local de Download:
[url]http://activex.microsoft.com/activex/controls/agent2/tv_enu a.exe[/url]

Para que nosso agente Fale em português é necessária a instalação de mais dois arquivos.
[url]http://www.htmlbible.com/MicrosoftSpeechComponents/

Role a pagina Ate ver a opção Português (Brasil) e baixe os dois Arquivos:
O lhttsptb.exe e o AgtX0416.

3. Para ele receber Comandos de Voz faça o Download de mais um Arquivo.
(Você precisa falar os comandos através do microfone). Faça o download do arquivo o Microsoft Speech Recognition Engine.

Local de Download:
http://activex.microsoft.com/activex/controls/agent2/actcnc .exe[/url]

4. Em nosso pc configuramos quase tudo através do painel de controle para você ter a opção de controlar, habilitar e gerenciar todas as Engines de Reconhecimento e de Speech instaladas em seu sistema, Baixe e instale o seguinte arquivo: spchcpl.exe.

Local de Download:
http://agent.microsoft.com/agent2/spchcpl.exe

5. Agora você só precisa baixar o character (Agentes) do Microsoft Agent.
Você pode encontrar vários Agentes no endereço abaixo.
http://www.msagentring.org/chars.htm

Muito Bem, agora você precisa importar o controle ActiveX dos agentes para o Delphi:

1) Abra o Delphi
2) Clique em ´Component -> Import ActiveX Control”
3) Selecione o componente ´Microsoft Agent Control 2.0”
4) Clique no botão “Install... , OK...,Yes “
5) Prossiga a instalação do controle

Um novo componente TAgent vai ser adicionado à palheta de componentes do Delphi, na aba ActiveX.

Após a Instalação dos Arquivos Necessários Para controle do Agente, No meu Caso Com Windows 98 SE, MSAgent.exe, tv_enua.exe, lhttsptb.exe e o AgtX0416 e Instalação do Componente TAgent.

REINICIE SEU COMPUTADOR:

Crie um novo projeto para testar a programação com agente. O programa vai mostrar alguns ´comportamentos´ do personagem Peedy e fazê-lo falar.
No formulário coloque um componente Tagent, e um Tedit para digitar o texto que o personagem vai falar.

Declare a Seguinte Variável na Opção Private da unit.

Agente: IAgentCtlCharacter;

No Evento FormCreate escreva:

Agent1.Connected := True;
Agent1.Characters.Load(´Papagaio´, ´Peedy.acs´);
// Associar o agente à variável Agente
Agente := Agent1.Characters[´ Papagaio ´];
Agente.Show(0); // Aparecer 0-lentamente 1-instantaneamente
// Encenação de abertura
Agente.Play(´Greet´); // Cumprimentar
Agente.Play(´Announce´); // Anunciar
Agente.Speak(´Ola Tudo Bem´, EmptyStr); // Falar
Sleep(700); // Da uma pausa ao programa
Agente.Speak(´Escreva um texto e clique no botão´, EmptyStr);
Agente.Play(´RestPose´); // Descansar

No Evento FormDestroy escreva:
Agente.Hide(0);
Agent1.Connected:=false;
No evento OnClick do Botão escreva:
Agente.Speak(edit1.Text,EmptyStr);

Prontinho Seu Programa Agora tem um agente que Fala e se move, igual ao da Microsoft.

obs.: No caso de algum link desse aew não tiver funionando pega o nome do arquivo e programa no google que vc deve achar o link novo no site da microsoft.

Qq coisa posta aew... vlw... té mais...


GOSTEI 0
Wdrocha

Wdrocha

04/07/2008

Boa.....mas não é necessário q o agente apareça.....

É apenas para o Sintetizador ler o q estiver escrito.....


Sem a necessidade do agente aparecer.....

Foi isso q ainda não achei....


GOSTEI 0
POSTAR