3. Aufbau der Datei numbers.jsn
Da es hierzu keine offizielle Doku gibt, ist es durchaus möglich dass meine Interpretation unvollständig ist. Bitte daher ergänzen.
Diese Datei ist das „Herz“ der Jeti Sprachausgabe. Die DC16 hat keinen hardware- oder software-basierten Sprachsynthesizer. Alle Ansagen basieren auf wav-files, die zu der gewünschten Ansage zur Laufzeit von der Software zusammengestellt werden.
Beispiel: die Zahl 121,5 wird aus den Sprachfiles:
„einhund.wav“
„ein.wav“,
„zwanzig.wav“,
„komma.wav“,
„fuenf.wav“
Generiert.
Es werden vier Typen von Sprach-Deklarationen unterschieden:
„Type“:0: in dieser Zeile wird die Zuordnung der Sprachfiles für Minus, Komma, Pause, Tausend definiert. „Type“ 1: hier werden die Zuordnungen der Sprachfiles für die Ansage von Werten gemacht. Alle Parameter hier hab ich noch nicht verstanden, ich denke mal dass es wie oben beschrieben grob funktioniert. Hier bitte nix editieren.
Für unsere non-Jeti Sensoren wird es ab „Type“:2 relevant.
Hier erfolgt zunächst die Zuordnung des Sprachfiles für die Parameterbezeichnung zu einer Sprachdatei:
Beispiel für den Jeti Speedsensor:
{"Type":2,"Label":"Velocity","File":"Geschwin.wav"},
Hmm, bei SM wird aber als Bezeichnung "A1: 450kph" übertragen. Also muss ich hier einfach nur folgende Zeile in die Datei einfügen, damit die DC16 gefälligst „Geschwindigkeit:“ bei der Ansage der Airspeed des Unilogs spricht:
{"Type":2,"Label":"A1: 450kph","File":"Geschwin.wav"},
Fertig! …… Fast
Was noch fehlt, ist die korrekte Ansage der Einheit, beim SM Speedsensor „Kilometer pro Stunde“
Dazu dient „Type“: 3 in dem file. Hier wird der Sprachfile für die übertragene Einheit des Werts zugeordnet.
Da SM hier „kph“ definiert, hat, erfolgt standardmaessig keine Ansage der Einheit, da Jeti nur Zuordnungen für meter/sec und kmh und die entsprechenden Sprachfiles liefert.
Also muss ich hier eine Zeile einfügen die lautet:
{"Type":3,"From":0,"To":2000000000,"File":"kmh.wav","Opt":"VF","Unit":"kph","Gender":"100"},
FERTIG
Was die sonstigen Parameter in dieser Zeile bedeuten, kann ich im Moment noch nur spekulieren.
My take:
- Der Wertebereich From – To definiert für welchen Bereich die Einheit angesagt wird. Mit 0 -200000000000 ist real alles von Null bis praktisch Lichtgeschwindigkeit einbezogen. Ich kann also für unterschiedliche Wertebereiche verschiedene Ansagen definieren. Ich vermute mal da ist gemacht, um die Eigenheiten der Sprachen zu berücksichtigen, wie zB eine „Wattminute“ vs 2345 „Wattminuten“
Der Parameter „Opt“ kann ich im Moment nicht erklären, ich vermute mal dies hat was mit Ganzzahligen Werten vs Kommazahlen zu tun. „Gender“ kennzeichnet wahrscheinlich die Stimme (Männlich/weiblich) (meine Spekulation)
Fazit: genial gemacht, da steckt wahrscheinlich noch mehr drin, als ich bisher „entschluesselt“ habe. Alles in allem extrem erweiterbar und konfigurierbar für alles was EX spricht und flexibel übersetzbar in andere Sprachen!!