2 Stimmen

Wie konvertiert man Text in eine Audiodatei und spielt sie im Browser über Python/Django ab?

Wie konvertiere ich Text in eine Audiodatei, die über Python/Django-Views im Browser abgespielt werden kann? Wie kann ich eine Text-in-Sprache-Konvertierung in Python durchführen? Ich möchte einen String in eine .wav-Datei umwandeln, die über Python/Django-Views im Browser abgespielt wird.

Zum Beispiel:

text = "wie geht es dir?"
Text in Audiodatei umwandeln (text.wav)
text.wav-Datei öffnen & über Django-View im Browser abspielen.

0 Stimmen

Sie benötigen irgendeine Art von Text-zu-Sprache-Engine. Eine Open-Source-Engine ist Festival: cstr.ed.ac.uk/projects/festival

5 Stimmen

Willkommen bei Stack Overflow! Wir ermutigen Sie, Ihre Fragen zu recherchieren . Wenn Sie bereits etwas versucht haben, fügen Sie es bitte zur Frage hinzu - andernfalls recherchieren Sie und versuchen Sie zuerst Ihre Frage, und kommen dann zurück.

1 Stimmen

Es gibt auch ein JS-Text-to-Speech-Programm namens speak.js

0voto

Dave Punkte 3650

Wie Tichodroma sagt, solltest du immer prüfen, ob jemand deine Frage bereits gestellt hat, bevor du sie erneut stellst. Eine Google-Suche nach python text to speech liefert http://code.google.com/p/pyspeech/ und Wie man Python sprechen lässt, unter anderem.

0voto

shrenik Punkte 49

Ich habe versucht, es wie folgt zu machen, und es funktioniert für mich. Danke.

#Schreibe Text in Datei
text_file_path = '/user/share/project/test.txt'
audio_file_path = '/user/share/project/test.wav'
text_file = open(text_file_path, "w")
text_file.write('Wie geht es dir?')
text_file.close()

#Konvertiere Datei
conv = 'flite -f "%s" -o "%s"' % (text_file_path, audio_file_path)
response = commands.getoutput(conv)

if os.path.isfile(audio_file_path):
    response = HttpResponse()
    f = open(audio_file_path, 'rb')
    response['Content-Type'] = 'audio/x-wav'
    response.write(f.read())
    f.close()
    return response

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X