Titel ansagen lassen

Hallöchen!

Ich bin gerader dabei in die Tonuino-Welt einzutauchen und die Möglichkeiten, die sich bieten zu sortieren und ggf. umzusetzen.
Die Idee, die Titel ansagen zu lassen finde ich super und würde diese gerne übernehmen, doch leider ist es mir nicht klar, was ich mit den heruntergeladenen mp3s machen soll. Ich habe die soundfiles.txt erfolgreich angepasst und nun wohin mit den ganzen Dateien?
Muss ich nicht im Code des Arduinos irgendwas anpassen?
Dazu finde ich hier leider keinen Hinweis und daher danke ich für jegliche Hilfe.

Grüße,
Semmelwurst

Kannst du bitte genau erklären was du vor hast? Titel ansagen lassen, ok, das kann man machen indem man eben den Titel per TTS erzeugt und vor den eigentlichen track schneidet. Dafür gibts hier impf Forum skripte (in meinem Fork gibts auch ne kleine Anleitung). soundfiles.txt erfolgreich angepasst? Ok. Warum?

Da ja die Titelansagen wie gesagt in die eigentlichen MP3s gebacken werden, nein.

Ich glaube du vermischt hier mehrere Dinge. Das Script in diesem Thread erzeugt einfach die „normalen“ Ansagen (für Menüs etc.) unter Windows. soundfiles.txt wird dabei als Quelle benutzt.

Dass ich etwas durcheinander bringe, ist durchaus möglich.
Mein Wunsch/Plan: genau das, was Du gemacht hast - Titelname wird bei jedem Start angesagt.
Mein Problem: keine Ahnung von der Materie.
Wie und wo generiere ich folgendes:

python3 tools/add_lead_in_messages.py -i '04_Benjamin Blümchen' -o /Volumes/TonUINO/04 --google-key=ABCD --add-numbering

Bitte entschuldigt die mögliche Banalität.

Wenn du einen Mac hast (was ich nicht annehme, weil du hier in den windows Thread schreibst), kannst du das so ausführen wie in der Anleitung. Bei Windows kann ich dir leider nicht weiterhelfen, da nicht vorhanden. Aber da gibts bestimmt andere hier.

Schau mal hier:

An diesem Script hänge ich bereits. Ich habe diesen Beitrag schon durchgearbeitet.
Ich verstehe die Funktionsweise/die Logik nicht.

python3 tools/add_lead_in_messages.py -i '04_Benjamin Blümchen' -o /Volumes/TonUINO/04 --google-key=ABCD --add-numbering

Meine Fragen:
Wofür steht ‚04_Benjamin Blümchen‘? Ist das der Ordnername auf der SD-Karte?
Woher kommt die Sprachausgabe für die Titel, die sich in diesem Ordner befinden? Wo gebe ich deren Titel an bzw. woher kommt die Information, wie die Titel heißen?

Fragen über Fragen :grinning:

Die Ansagen werden aus dem Dateinamen generiert. Dabei werden am Anfang stehende Zahlen ignoriert.

Als erstes musst du Python 3 installieren. Nimm am besten dann das Skript aus Stephans Repo. Das funktioniert auch problemlos unter Windows und es sind einige kleinere Fehler behoben.
Dann brauchst du einen Google Api Key, sofern du die Ansagen mit Google TTS erzeugen möchtest.
Der Aufruf unter Windows sieht dann etwas anders aus, z.B.
python3 add_lead_in_messages.py -i 'C:\\TonUINO\\04_Benjamin Blümchen' -o 'C:\\TonUINO\\Benjamin Blümchen mit Ansagen' --google-key=123456 --add-numbering

Der Befehl muss in der Kommandozeile oder in der Powershell ausgeführt werden. Vorher noch mittels
cd C:\Ordner-wo-das-Skript-liegt
in den richtigen Ordner wechseln.
Falls die Powershell meckert muss vermutlich einmal
set-executionpolicy remotesigned
ausgeführt werden.

Alle Befehle ohne Gewähr. In etwa so sollte das aber laufen.

2 Like

Frag mich nicht warum, aber es hat mit folgendem Code funktioniert:

python add_lead_in_messages.py -i c:/neu/card/01 -o c:/neu/card/01Ansage --use-google-key=meinAktivierterApiSchlüssel

Das Problem lag wohl an Google, da der Schlüssel nicht aktiviert blieb, obwohl ich ihn aktiviert hatte. Ganz seltsame Sache, aber jetzt funktioniert es tadellos. Vielen Dank für die Hilfe!

Als Windows Nutzer sieht das komisch aus, ja. Allerdings kommt Python aus der Unix Welt und es gibt verschiedene Möglichkeiten wie man Windows Pfade schreiben kann. Wenn es funktioniert ist doch gut :slight_smile:

Wenn man Python 3 installiert hat, ist das dem Betriebssystem bekannt. Im Skript ist außerdem die Information hinterlegt, dass Python 3 bevorzugt verwendet werden soll. Wenn man jetzt nur „python“ (nicht „python3“) ausführt, ist der Befehl so intelligent, dass er das erkennt. Das ist extra so gebaut worden, damit es in möglichst vielen Fällen einfach funktioniert.