WPF, beszédszintetizáló

Mindkét eszköz támogatja osztályok System.Speech.dll szerelvény. Alapértelmezésben a Visual Studio nem tesz hozzá hivatkozni kell erre az összeszerelés az új WPF projektek, így a projektek kell, hogy csináld magad.

Ez - ez egy kisebb része a WPF. Bár a beszéd támogatást hivatalosan részének tekintik a WPF, és ő megjelent verzió óta NET Framework 3.0, a tér osztály nevét, hogy támogassa a beszéd System.Speech kezdődik, ahelyett System.Windows.

Beszédszintézis - olyan eszköz, amely létrehozza a beszélgetést audiojel alapján előírt szöveget. Beszédszintézis nem beépített eszközök WPF - ez azt jelenti, a rendelkezésre álló a Windows operációs rendszer. Az ilyen rendszer segédprogramok, mint a Narrátor (könnyű olyan képernyőolvasó), tartalmazza a Windows és a beszédszintetizátor segítségével a felhasználók navigálni a fő párbeszédpanelek. Általában beszédszintetizátor fel lehet használni, hogy hozzon létre és audiorukovodstv „beszélő” utasítást, bár előre rögzített hang biztosítja a magasabb minőséget.

Beszédszintézis akkor hasznos, ha a létrehozni kívánt hangot dinamikus szöveget - más szóval, abban az időben a válogatás nem ismert, hogy milyen szót kell kiejteni a futás során. De ha a hang nem változik, az előre rögzített könnyebben kezelhető, hatékonyabb az azonos hang minősége magasabb. Az egyetlen ok, hogy részesítsék előnyben a beszéd - ez az, amikor el kell olvasni egy hatalmas mennyiségű szöveget, és előre rögzíteni azt kivitelezhetetlen.

Bár az összes modern Windows-verziók beépített beszédszintetizátor, az általuk használt számítógépes hang más. A Windows XP, használja a hangja, mint a hang a robot és a hívott Sam, miközben a Windows Vista és a Windows 7 tartalmaz egy természetes női hang nevű Anna. Mindezen rendszerek állnak rendelkezésre letölteni és telepíteni további hangokat.

Beszéd lejátszás látszólag egyszerű. Mindössze annyit kell -, hogy hozzon létre egy példánya a SpeechSynthesizer tér System.Speech.Synthesis nevét és hívják Speak () metódus egy karakterláncot, mint például:

Ezt a megközelítést alkalmazva - átadó egyszerű szöveges SpeechSynthesizer tárgy - bizonyos mértékben elveszítették. Lehet, hogy néhány szót, amelyek helyesen ejtik, szabálytalan feszültségek miatt vagy sebesség. Ahhoz, hogy jobban kézben tarthassa a beszélt szöveg, akkor kell használni PromptBuilder osztály építésére meghatározása beszédet.

Itt van, hogyan lehet megváltoztatni az előző példában egy teljesen egyenértékű kódot használó PromptBuilder:

Ez a kód nem ad semmilyen előnyt. Azonban PromptBuilder osztály tartalmaz sok más módszer, hogy lehet használni, hogy testre a szöveget kiejtés. Például lehetőség van arra, hogy hangsúlyozzák az adott szó (vagy szavak) egy túlterhelt változata a módszerrel AppendText (). amely elfogadja az értéket a PromptEmphasis. Bár a pontos hatását hangsúlyozva a szó függ a hang, a kód hangsúlyozza a „vannak” a mondat: „Hogy van?”:

AppendText () eljárás két további túlterhelés, egy értékét veszi PromptRate, amely növeli vagy csökkenti a sebességet, és a másik - a értéke PromptVolume, amely lehetővé teszi, hogy növelje vagy csökkentse a hangerőt.

Módosításához több részből kell használni egy objektumot PromptStyle. Ez az objektum egy wrapper PromptEmphasis értékek PromptRate és PromptVolume. Beállítható értékeket mindhárom paraméter vagy csak egy vagy két szükséges.

Kapcsolódó cikkek