ICON: Text-To-Speech aus Google-Translate ziehen

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo zusammen,

    an diesem Wochenende habe ich mich mit den Text-To-Speech-Möglichkeiten beschäftigt.

    Über Google-Translate ist es möglich, Texte in sehr vielen Sprachen in recht guter Qualität vorlesen zu lassen.

    Ich habe ein kleines Programm in der Programmiersprache Icon geschrieben, das nicht nur die Texte spricht, sondern sich auch noch die entsprechende Sound-Datei in angebbaren Formaten herunterlädt, damit diese z.B. später von einem anderen Programm - Deinem aktuellen Projekt? - abgespielt werden kann.

    Da ich leider in 6 Stunden aufstehen muss, stelle ich den Quellcode und ein paar Infos zur Programmierung und der Bedienung - wahrscheinlich - erst am kommenden Wochenende hier herein.


    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Hallo zusammen,

    hat nicht funktioniert... Ich dachte, findige Tüftler machen sich jetzt daran, dass Ganze in Python oder in C zu programmieren und posten dann den Quelltext... ;)

    Nee, Scherz beiseite. Das Programm habe ich letzten Sonntag kurz vor Mitternacht geschrieben. Ich wollte den unkommentierten Code nicht hier rein bringen - und vielleicht Verwirrung stiften. Sondern ein paar Stunden ausschlafen (Arbeit und so).


    1. Installation der ALSA-Sound-Utilities:

    Code
    sudo apt-get install alsa-utils

    2. Editieren von /etc/modules

    Code
    sudo nano /etc/modules

    3. Prüfen, ob eine bestimmte Zeile vorhanden ist

    Code
    snd-bcm2835


    Fehlt die Zeile, dann einfügen und speichern .
    Auf jeden Fall nano verlassen.

    4. Installation von mplayer:

    Code
    sudo apt-get install mplayer

    5. Editieren von /etc/mplayer/mplayer.conf:

    Code
    sudo nano /etc/mplayer/mplayer.conf

    Am Ende einfügen:

    Code
    nolirc=yes

    6. Installation von espeak

    Code
    sudo apt-get install espeak

    7. Hier die entscheidenden Quellcode-Ausschnitte

    - mit dem man in espeak sprechen kann:

    Code
    espeak_cmd:= "espeak -a" || Laut || " -g" || Pause || " -k" || K || " -l" || Laenge || " -p" || Pitch || " -s" || Speed || " -v" || sprechen
    ...
    espeak_cmd ||:= " 2> /dev/null " || Zusprechen
    system(espeak_cmd)

    - mit dem man eine Sounddatei erzeugt, die später beliebig mit mplayer & Co. abgespielt werden kann (Argument -w). Der Dateityp wird durch die Endung festgelegt. Eine zu speichernde Sounddatei /home/pi/sagwas.wav erzeugt eine WAV-Datei, eine zu speichernde Sounddatei /home/pi/sagwas.mp3 erzeugt eine MP3-Datei. Ich vermute, dass noch etliche weitere Sound-Formate unterstützt werden. Probiert einfach mal aus, was da funktioniert.

    Code
    espeak_cmd:= "espeak -a" || Laut || " -g" || Pause || " -k" || K || " -l" || Laenge || " -p" || Pitch || " -s" || Speed || " -v" || sprechen
    if *SoundDatei > 0 then espeak_cmd ||:=  " -w" || SoundDatei
    espeak_cmd ||:= " 2> /dev/null " || Zusprechen
    system(espeak_cmd)


    Hier der Ausschnitt, mit dem man in google-translate sprechen kann (then-Zweig):

    Hier der Code-Ausschnitt, mit dem, man in google-translate Souind-Dateien herunterziehen kann (else-Zweig). Dieses Feature ist seitens Google-translate nicht kommentiert. Funktioniert aber, weil diese Information generell vorhanden sein muss - wird ja als Stream übertragen.

    8. Zum Abschluss das vollständige Programm zum Herunterladen.

    9. Ideen
    Als Anwendung könnte ich mir für Schüler ein Vokabel-Lern-Programm vorstellen. In einer Schleife werden die Sound-Dateien der beiden Sprachen erzeugt. Eine Vokabel erscheint als Text und wird gesprochen. Der Anwender gibt den Text ein, der Text wird gesprochen und mit der richtigen Lösung verglichen. Das trainiert Lesen, Schreiben und Verstehen. Fehlt nur noch eine Spracherkennung, um die Aussprache zu trainieren.


    Beste Grüße

    Andreas

    Dateien

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    2 Mal editiert, zuletzt von Andreas (8. Oktober 2017 um 17:44)

  • Hallo Himbeerschlange,

    einige der zur Verfügung gestellten Sprachen sind auf sehr hohem Niveau. Da ist das einen Versuch wert.

    Beste Grüße

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

  • Hi Nintriva,


    Hi All!

    Here I fully read all your posted information. That was very helpful to me.
    I like to say thank you for all your valuable information posted, Thank you, keep in touch with me ... :)

    [font="monospace"]Angularjs Development[/font]

    there is an International talk about Icon you can find here: ICON: International discussion sub forum


    Best regards

    Andreas

    Ich bin wirklich nicht darauf aus, Microsoft zu zerstören. Das wird nur ein völlig unbeabsichtigter Nebeneffekt sein.
    Linus Torvalds - "Vater" von Linux

    Linux is like a wigwam, no windows, no gates, but with an apache inside dancing samba, very hungry eating a yacc, a gnu and a bison.

    2 Mal editiert, zuletzt von Andreas (13. Oktober 2017 um 23:45)

  • Hi [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]Andreas![/font]

    [font="Source Sans Pro, Tahoma, Helvetica Neue, Arial, sans-serif"]i viewed your suggested url That contains many useful informations, Thanks for your helping. keep in touch ...:)[/font]

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!