Generiere eine MP3-Datei aus espeak


10

Ich möchte eine Textdatei mit espeak in eine MP3-Datei konvertieren. Ist das möglich? Ich versuche, mit espeak ein Shell-Skript für die Songsynthese zu erstellen, mit dem Text in einen Song konvertiert werden kann.


1
Ich denke, diese Seite erklärt, wie man MP3-Dateien (zumindest teilweise) generiert
Anderson Green

Und hier ist eine Erklärung, wie dies mit einem Shell-Skript gemacht wird: eceppda.github.com/nerdterm/2011/11/23/ESPEAK.html
Anderson Green

Es ist auch möglich, eine Tonhöhenverschiebung mit einem Programm namens Gummiband durchzuführen.
Anderson Green

Antworten:


15

Es gibt zwei Möglichkeiten, dies zu tun. Wenn Sie nur eine wavDatei möchten , sehen Sie sich das erste Beispiel und eine mp3Konvertierung das zweite an.

1) Geben Sie espeakIhre Textdatei mit der -fOption ein, verwenden Sie dann die --stdoutOption und leiten Sie den Datenstrom in die Datei um, um eine gültige wavDatei zu erstellen , die in jedem Audio-Player korrekt wiedergegeben wird.

espeak -f mytext --stdout > myaudio

Ergebnis mit dem fileBefehl ( file myaudio) überprüft :

myaudio: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 22050 Hz

2) Wenn Sie eine MP3-Konvertierung wünschen, müssen Sie Ihre Datei mit einem Programm konvertieren (oder einfach speichern audacityund als MP3 exportieren). Ich habe ffmpeg(die Git-Version) verwendet, aber Sie können jedes Programm verwenden und einfach die Optionen ändern:

espeak -f myfile --stdout | ffmpeg -i - -ar 44100 -ac 2 -ab 192k -f mp3 final.mp3

Ergebnis geprüft mit file final.mp3:

final.mp3: Audio file with ID3 version 2.4.0, contains: MPEG ADTS, layer III, v1, 192 kbps, 44.1 kHz, Stereo


3

espeak hat jetzt eine -w-Option, die in wav ausgibt
(sie müsste danach noch in mp3 konvertiert werden.)

espeak -f foo.txt -w foo.wav

2

Die --stdoutOption zum Sprechen weist es an, die Audiodaten in stdout zu schreiben, anstatt sie über das Audiogerät zu übertragen. Von dort aus können Sie es in z. B. ffmpeg weiterleiten, um es in das richtige Format zu konvertieren.


Können Sie Beispiele dafür zeigen, die Sie gefunden haben?
Anderson Green

1
Ich habe keine gefunden; Ich verstehe nur, wie Programme funktionieren.
Ignacio Vazquez-Abrams

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.