Wie kann ich mithilfe der Befehlszeile eine Text-to-Speech-Ausgabe durchführen?

Wie kann ich mithilfe der Befehlszeile eine Text-to-Speech-Ausgabe durchführen?

Wie kommt manSprachausgabe von eingegebenem Textmithilfe der Befehlszeile?

Auch die Möglichkeit, Sprechgeschwindigkeit, Tonhöhe, Lautstärke usw. zu ändernmit einfachem Befehl.

Antwort1

In absteigender ReihenfolgePopularität:

  • sagenwandelt Text mithilfe der Sprach-Engine GNUstep in hörbare Sprache um.

    sudo apt-get install gnustep-gui-runtime
    say "hello"
    
  • FestivalAllgemeines mehrsprachiges Sprachsynthesesystem.

    sudo apt-get install festival
    echo "hello" | festival --tts
    
  • SPD-Sagensendet eine Text-to-Speech-Ausgabeanforderung an den Sprachdispatcher

    sudo apt-get install speech-dispatcher
    spd-say "hello"
    
  • espeakist ein mehrsprachiger Software-Sprachsynthesizer.

    sudo apt-get install espeak
    espeak "hello"
    

Antwort2

espeakist ein nettes kleines Werkzeug.

Ich spiele einfach gerne in einer Befehlszeile damit herum. Möglicherweise treten Konflikte mit Pulseaudio auf, daher verwende ich eine umständliche Version, die eine ordnungsgemäße Einrichtung überflüssig macht.

sudo apt-get install espeak
espeak --stdout "this is a test" | paplay

espeak --helpzeigt Ihnen die Optionen zum Kalibrieren von Lesegeschwindigkeit, Tonhöhe, Stimme usw.

Wenn Sie Ihre Notizen machen, speichern Sie sie als Textdatei und dann:

echo "these are my notes" > text.txt
espeak --stdout -f text.txt > text.wav
paplay text.wav # you should hear "these are my notes"

Sie können dann mit ffmeg und anderen experimentieren, um das Ganze von PCM auf ein besser handhabbares Format wie MP3 oder OGG zu komprimieren. Aber das ist eine andere Geschichte.

Antwort3

Aus man spd-say:

NAME
       spd-say - Sende eine Text-to-Speech-Ausgabeanforderung an den Sprachdispatcher

ZUSAMMENFASSUNG
       spd-say [Optionen] "einiger Text"

BESCHREIBUNG
       spd-say sendet eine Text-to-Speech-Ausgabeanforderung an den Speech-Dispatcher-Prozess, der sie verarbeitet und im Idealfall das Ergebnis ausgibt
       zum Audiosystem.

OPTIONEN
       -r, --rate
              Stellen Sie die Geschwindigkeit der Sprache ein (zwischen -100 und +100, Standard: 0)

       -p, --pitch
              Stellen Sie die Tonhöhe der Sprache ein (zwischen -100 und +100, Standard: 0)

       -i, --volume
              Stellen Sie die Lautstärke (Intensität) der Sprache ein (zwischen -100 und +100, Standard: 0).

Daher können Sie mit dem folgenden Befehl Text-to-Speech erhalten:

spd-say "<type text>"

Ex:

spd-say "Welcome to Ubuntu Linux"

Du kannst auchSprechgeschwindigkeit, Tonhöhe, Lautstärke usw. einstellen.siehe Manpage.

Antwort4

Mbrola funktioniert seit 11.10 nicht mehr.

SVOX (Pico)-Tools sind einfach zu installieren, einfach zu verwenden und bieten gute Sprachqualität in Ubuntu. Installieren Sie es:

sudo apt-get install libttspico0 libttspico-utils libttspico-data

Noch einfacher können Sie LibreOffice in Kombination mit SVOX (pico)-Tools verwenden, indem Sie dasErweiterung „Text lesen“und Sie erhalten eine „GUI“ für diese hervorragende TTS-Software:

Richten Sie die Optionen der Read Text Extension einmit Tools - Add-ons - Auswahl lesen.... Verwenden Sie /usr/bin/python als externes Programm. Wählen Sie eine Kommandozeilenoption, die das Token enthält (PICO_READ_TEXT_PY).

verwandte Informationen