Text-to-Speech (TTS) -Software für Scripts WAV- oder MP3-Ausgabe

7

Ich habe diese Frage auf SuperUser

Ich suche nach einer kostengünstigen (oder kostenlosen) Lösung wie ScriptVox nur mit einem besseren Motor. Das heißt, ein Skript einzulesen und der Stimme Zeichen zuzuordnen. Ich habe die Post hier gelesen, aber sogar mit die würde ich WAV-Dateien verketten müssen. Es ist nicht so, dass ich Audacity nicht liebe, aber es ist zeitaufwendig. Ich denke schon halb darüber nach, mein eigenes zu schreiben, aber ich bin mir sicher, dass es da draußen eine Lösung geben muss. Irgendwelche Vorschläge?

    
SQLMason 06.04.2012, 17:39
quelle

4 Antworten

3

Wenn der Zugang zum Internet für das Programm akzeptabel ist, können Sie iSpeech verwenden.

Sie können ihre API verwenden, aber leider ist sie auf 200 Anwendungen / Tag beschränkt.

Ihre API ermöglicht auch das Anhängen von format=(wav|mp3) nach einer Anfrage, so dass Sie Ihren Sound in beiden gewünschten Formaten erhalten können.

    
Xyene 15.04.2012, 22:24
quelle
10

Ich würde Microsofts Text-in-Sprache-Engine verwenden. Sie haben ein einfaches Beispiel, um genau das zu tun, was Sie suchen:

Ссылка

Mit diesem Beispielcode können Sie einen Text sprechen und ihn in eine WAV-Datei exportieren. Von dort aus, wenn Sie in ein Format wie MP3 konvertieren müssen, können Sie FFMPEG verwenden.

    
Brad 13.04.2012 17:30
quelle
5

Brads Antwort ist ziemlich grandios, da sie genau das enthält, wonach Sie suchen. Allerdings fehlt ein Fundament, das Sie in den Frage-Errata bevorzugt haben: eine Implementierung in C #.

Hier finden Sie eine vollständige Einführung , um Zugriff auf die Sprach-API in verwaltetem Code zu erhalten. Blake Niemyjski und die entsprechenden Teams bei Microsoft haben die volle Anerkennung verdient. Hier sind die wichtigsten Punkte, denn die Verknüpfung mit dem Originalartikel ist tot und scheint direkt von Microsoft entlehnt zu sein:

  

Der folgende Link (Computer eine Stimme geben) führt Sie zu a   Microsoft-Website, die Ihnen zeigt, wie Sie ein Projekt erstellen und ein   grundlegende Text-zu-Sprache-Anwendung in VB.Net oder c # in Nr   Zeit!

     

SAPI

     

SAPI ist die Sprach-API, die Anwendungen den Zugriff auf Sprache ermöglicht   Erkennungs- und Text-to-Speech (TTS) -Motoren. Dieser Artikel konzentriert sich auf   TTS. Für TTS nimmt SAPI Text als Eingabe und verwendet die TTS-Engine dazu   gib diesen Text als gesprochenen Ton aus. Dies ist die gleiche Technologie von   das Windows-Tool für die Barrierefreiheit, Narrator. Jede Version von Windows   seit XP mit SAPI und einer englischen TTS-Engine ausgeliefert wurde.

     

TTS bringt die Ohren des Benutzers zum Laufen. Es ermöglicht Anwendungen zu senden   Information für den Benutzer, ohne die Augen oder Hände des Benutzers zu benötigen.   Dies ist eine sehr leistungsfähige Ausgabeoption, die nicht häufig verwendet wird   PCs.

     

Um TTS in einer verwalteten Anwendung zu verwenden, sind drei Schritte erforderlich:

     
  1. Erstellen Sie eine Interop-DLL
  2.   

Da SAPI eine COM-Komponente ist, wird eine Interop-DLL benötigt, um sie zu verwenden   eine verwaltete App Öffnen Sie das Projekt in Visual Studio, um das zu erstellen.   Wählen Sie das Menü Projekt und klicken Sie auf Verweis hinzufügen. Wählen Sie die Registerkarte COM,   Wählen Sie "Microsoft Speech-Objektbibliothek" in der Liste aus, und klicken Sie auf OK.   Diese Schritte fügen diesen Verweis Ihrem Projekt hinzu und erstellen ein   Interop.SpeechLib.dll im selben Ordner wie Ihre ausführbare Datei. Dies   Die interop-DLL muss sich immer im selben Ordner befinden wie Ihre .exe, um zu funktionieren   richtig.

     
  1. Verweisen Sie auf den Interop-Namespace
  2.   

Fügen Sie diesen Namespace in Ihre Anwendung ein. Fügen Sie in C # "using" hinzu   SpeechLib; "; iIn VB," Imports SpeechLib "hinzufügen.

     
  1. rufe Speak ()
  2. an   

Erstellen Sie ein SpVoice-Objekt und rufen Sie Speak ():

auf      

Visuelles C #

%Vor%      

Visual Basic

%Vor%

Ich fühle, dass Brads Antwort mich zur richtigen Lösung geführt hat (also verdient er mehr Kredit als ich), aber das sollte das letzte Stück sein, das Sie vermisst haben. Sie sollten nun in der Lage sein, die WAV-Datei aus der C ++ - Lösung zu replizieren im verwalteten Code und von dort transkodieren in Ihr gewünschtes Format.

    
MrGomez 14.04.2012 17:27
quelle
1

Ссылка

Das ist alles was ich habe.

Google translate verwendet eSpeak Ссылка

    
craniumonempty 13.04.2012 17:26
quelle

Tags und Links