Voice Translator

TsgcAIVoiceTranslator traduce il parlato mentre l'utente parla. Invia il microfono a OpenAI gpt-realtime-translate tramite WebSocket, riproduce il parlato tradotto man mano che arriva e riporta trascrizioni in diretta di ciò che è stato detto e della traduzione.

TsgcAIVoiceTranslator

Un traduttore da voce a voce in tempo reale. Imposta la chiave API e la lingua di destinazione, chiama Start e parla. Il modello rileva la lingua di partenza, quindi non c'è altro da configurare.

Classe del componente

TsgcAIVoiceTranslator

Scopo

Traduzione da voce a voce dal vivo

Famiglia

Chat e agenti

Piattaforme

Windows con microfono e altoparlanti. Linux e macOS con il tuo audio.

Edizioni. TsgcAIVoiceTranslator è incluso in sgcAI e in sgcWebSockets Enterprise, le stesse edizioni dell'agente vocale in tempo reale TsgcAIVoiceAgent. sgcAI è autonomo: include il runtime sgcWebSockets Core su cui è costruito il componente. Disponibile per Delphi 7 fino a Delphi 13 e C++ Builder.

Parla in qualsiasi lingua, ascolta lo spagnolo

Imposta la chiave API e la lingua di destinazione, assegna gli eventi di trascrizione e chiama Start.

uses
  sgcWebSocket_Types, sgcAI_VoiceTranslator;

procedure TForm1.StartTranslator;
begin
  oTranslator := TsgcAIVoiceTranslator.Create(Self);
  oTranslator.ApiKey := 'sk-...';
  oTranslator.Language := 'es';   // speak any language, hear Spanish
  oTranslator.NotifyEvents := neAsynchronous;
  oTranslator.OnInputTranscript := DoInputTranscript;
  oTranslator.OnOutputTranscript := DoOutputTranscript;
  oTranslator.OnError := DoError;
  oTranslator.Start;   // microphone in, translated speech out
end;

procedure TForm1.DoInputTranscript(Sender: TObject; const aDelta: string);
begin
  memoSource.Text := memoSource.Text + aDelta;   // what was said
end;

procedure TForm1.DoOutputTranscript(Sender: TObject; const aDelta: string);
begin
  memoTarget.Text := memoTarget.Text + aDelta;   // the translation
end;

procedure TForm1.DoError(Sender: TObject; const aError: string);
begin
  ShowMessage(aError);
end;

procedure TForm1.SwitchLanguage;
begin
  oTranslator.Language := 'fr';   // applied to the running session
end;
// includes: sgcWebSocket_Types.hpp, sgcAI_VoiceTranslator.hpp

void TForm1::StartVoiceTranslator()
{
  oTranslator = new TsgcAIVoiceTranslator(this);
  oTranslator->ApiKey = "sk-...";
  oTranslator->Language = "es";
  oTranslator->NotifyEvents = neAsynchronous;
  oTranslator->OnInputTranscript = DoInputTranscript;
  oTranslator->OnOutputTranscript = DoOutputTranscript;
  oTranslator->OnError = DoError;
  oTranslator->Start();
}

void __fastcall TForm1::DoInputTranscript(TObject *Sender, const String aDelta)
{
  memoSource->Text = memoSource->Text + aDelta;
}

void __fastcall TForm1::DoOutputTranscript(TObject *Sender, const String aDelta)
{
  memoTarget->Text = memoTarget->Text + aDelta;
}

void __fastcall TForm1::DoError(TObject *Sender, const String aError)
{
  ShowMessage(aError);
}

Porta la tua sorgente audio

Disattiva i dispositivi per tradurre l'audio di un file, di una linea telefonica o di uno stream di rete. Invia PCM16 a 24 kHz mono con SendAudio e preleva il parlato tradotto da OnOutputAudio.

procedure TForm1.StartCustomAudio(const aPCM16: TBytes);
begin
  oTranslator.AudioCapture := False;   // no microphone
  oTranslator.AudioPlayback := False;  // no speakers
  oTranslator.OnOutputAudio := DoOutputAudio;
  oTranslator.Start;
  oTranslator.SendAudio(aPCM16);   // PCM16, 24 kHz, mono
end;

procedure TForm1.DoOutputAudio(Sender: TObject; const aPCM16: TBytes);
begin
  // translated speech, PCM16 24 kHz mono, in order
end;

Proprietà e metodi principali

I membri che userai più spesso.

Sessione

Start si connette, attende la sessione, invia la lingua di destinazione e apre i dispositivi. Stop svuota l'audio in sospeso e chiude la sessione. Active fa lo stesso dall'Object Inspector.

Lingua

Il codice della lingua di destinazione, en per impostazione predefinita. Assegna un nuovo valore mentre la sessione è in corso e la modifica viene inviata subito al modello, senza riconnessione.

Connessione

ApiKey, Model (gpt-realtime-translate) e BaseURL. SafetyIdentifier invia un id utente sottoposto a hash nell'header OpenAI-Safety-Identifier.

Audio

AudioCapture e AudioPlayback usano il microfono e gli altoparlanti. Impostali su False e alimenta SendAudio con PCM16 a 24 kHz mono.

Trascrizioni

OnInputTranscript trasmette il testo di ciò che è stato detto, OnOutputTranscript il testo della traduzione, entrambi come delta.

Eventi

OnSessionCreated, OnOutputAudio con ogni blocco audio tradotto, OnSessionClosed e OnError. NotifyEvents seleziona eventi asincroni per le applicazioni con interfaccia o nessuna sincronizzazione per i servizi.

Piattaforme. Il percorso microfono e altoparlanti usa l'API audio di Windows. Su Linux e macOS imposta AudioCapture e AudioPlayback su False e gestisci tu l'audio con SendAudio e OnOutputAudio. Con i dispositivi lasciati attivi, Start segnala tramite OnError che su quella piattaforma non è disponibile alcun dispositivo audio.

Specifiche e riferimenti

Fonti ufficiali del servizio utilizzato da questo componente.

Continua a esplorare

Guida onlineRiferimento API completo e guida all'utilizzo dei componenti sgcAI.
OpenAI TranslatorRegistra, traduci e pronuncia un segmento alla volta con TsgcAIOpenAITranslator.
Tutti i componenti sgcAIEsplora la matrice completa delle funzionalità dei componenti sgcAI.
Scarica la versione di prova gratuitaInclude la demo di Voice Translator. Usa la tua chiave OpenAI.
PrezziLicenze Single, Team e Site, codice sorgente completo.
La scelta più conveniente: All-AccessTutti i prodotti eSeGeCe, con Supporto Premium incluso, a partire da €1,059/anno.
Vedi i prezzi All-Access

Pronto per iniziare?

Scarica la versione di prova gratuita e aggiungi alla tua applicazione la traduzione da voce a voce dal vivo.