message=
Diádos adatbázis elemek tervezése
A diádos rendszerű adatbázis tervezésének első lépése a beszédhangok állományának meghatározása, vagyis annak eldöntése, hogy mely beszédhangok fognak megszólalni a rendszerben. A beszédhangok többsége az adott nyelv ismeretéből automatikusan adódik, azonban lehetnek olyan hangok is, amelyekről külön dönteni kell. Ilyen hangok a magyarban például a nazalizált magánhangzók (pl. inga, engem, hangos, bankár), a j hang zöngétlen változata (kapj, lépj, lopj ), a h hang zöngés változata ( nahát). Ide tartoznak a ritkán előforduló beszédhangkok is, mint például a dz, dzs és ezek hosszú változatai.
A magyar beszéd hangkészletét beszédadatbázis létrehozása céljából célszerű 14 magánhangzóból ( á, a, o, ó, u, ú, ü, ű, i, í, é, ö, ő, e ) és 24 mássalhangzóból (b, p, d, t, g, k, gy, ty, m, n, ng-nk, ny, j, h, v, f, z, sz, c, zs, s, cs, l, r) meghatározni. Ehhez még hozzá kell venni a szünet elemet is, amit a hangkezdő és hangvégződési helyzetű elemek elkészítéséhez használunk. Ezek szerint az adatbázis elemeinek száma 39x39 hangkapcsolódás, azaz 1521 elem. Ezen elemek gyakorlati létrehozásához el kell készíteni egy felolvasandó listát, amely tartalmazza az összes hankapcsolódási elemnek megfelelő szövegegységet. Az ilyen anyagot célszerű úgy megtervezni, hogy a bemondót ne befolyásolják az anyanyelvi beidegződések. Ezért ezeket a listákat egyrészről úgy célszerű összeállítani, hogy azok ne értelmes szavakat tartalmazzanak, hanem értelmetlen hangsorokat (logatomokat), másrészről, hogy a hangsor belseji elemekhez kivágandó elem ne az első szótag legyen (mivel magyarban az első szótagot automatikusan hangsúlyozzuk), hanem például a második. A listában továbbá célszerű szerepeltetni az adott logatom mellett, hogy mely hangkapcsolati elem kerül kivágásra az elem felhasználásával. A listát jól trenírozott bemondóval fel kell olvastatni. A felolvasást fonetikusnak kell vezetni. A felvett anyagot digitalizálni kell. Ezután el kell készíteni a diádos elemeket.
A hangadatbázis elemeinek elkészítése azt a műveletsort foglalja magában, amelynek eredményeképpen előáll a hangsorépítéshez felhasználható hullámformák csoportja. Az elkészítés speciális szoftvereket igényel. Ez azt jelenti, hogy ilyen adatbázisok elkészítéséhez nem használhatók a hangkártyákhoz kapható hangfeldolgozó szoftverek.
Milyen műveleteket kell elvégezni ahhoz, hogy egy-egy hangadatbázis elem elkészüljön?
-- a hanghatárokat be kell jelölni az eredeti digitalizált mintán és tárolni kell,
-- a zöngés hangokat el kell látni periódus jelzésekkel (markerek) és ezeket tárolni kell,
-- a zöngétlen hangokba is markereket kell tenni, mégpedig a zöngés hangokból következő időszakaszonként, és ezeket tárolni kell,
-- az egyes markereket el kell látni zöngés, illetve zöngétlen jelöléssel és ezt tárolni kell,
-- ki kell vágni az elemet az eredetileg felvett mintából adott szabály alapján és el kell helyezni az adatbázisban.
A fenti műveletek nem végezhetők el emberi beavatkozás nélkül, mivel a beszédjel egyrészről nem szabályos rezgésképek sorozatából áll, másrészről a beszédhangok határainak kijelölését sem lehet egyértelműen algoritmizálni. Mivel a marker és hanghatár adatok szolgálnak majd a későbbi prozódiai feldolgozás (hangidőtartamok változtatása, a dallammenetek ráültetése a hangsorra, az amlplitudóviszonyok megváltoztatása) alapjául, ezek pontos elhelyezésére kell törekedni.
A hanghatárok bejelölése
Mivel az adatbázis elkészítéséhez meghatározott szerkezetű hangsorokat olvastattunk fel a bemondóval a hanghatárok automatikus bejelölését ez az információ segíti. Készíthető olyan célszoftver, amelyik akár diádos akár triádos elemekhez felvett hangsorokban az energia viszonyok alakulása alapján meghatározza a hanghatárok többségét és el is helyezi azokat a hangsorban. Vannak azonban olyan hangkapcsolatok, amelyekben az energiaviszonyok nem változnak karakterisztikusan a hangahtárokon. Ide sorolható sok CC kapcsolat, valamint a VV elemek, és a j hanggal képzett CV, VC kapcsolatok. Ezeknél a hangkapcsolatoknál kézi módszerrel audio-vizuális célszoftver felhasználásával kell a hanghatárokat bejelölni.
A periódusjelzések elhelyezése a hangsorban
A periódusjelzés célja az, hogy megjelöljük minden zöngés hangperiódus kezdetét. Ez az alapja a későbbi hangnyújtásnak, hangrövidítésnek, valamint az alapfrekvencia változtatásának. Periódusjelzéseket elméletileg csak a zöngés hangokban lehet meghatározni, azonban a további feldolgozás egyszerűsítése céljából a zöngétlen hangokban is célszerű a környezethez hasonló, vagy sűrűbb osztással markereket elhelyezni -- noha ezekben nincsenek periodusok. Ez például azért is fontos, mert a hangidőtartam módosításokat a markerek felhasználásával végezzük el a későbbiekben. A periódus jelzések elhelyezése után tehát az egész hangsorban közel egyenletes osztással markerek találhatók. A hanghatár jelzést mindig periódus jelzésre tesszük. Ebből következik, hogy minden beszédhang belseje egész számú markerrel lesz felcímkézve.
A zöngés-zöngétlen állapot jelzése
A hanghatárokkal és markerekkel felcímkézett hangelemeket el kell látni zöngés-zöngétlen állapotjelzővel is. Ez azért fontos, mert az alapfrekvencia módosításokat zöngétlen hangokon nem kell végrehajtani. A fenti állapotjelzők meghatározása nagy részben szintén jelfeldolgozó célszoftverrel automatizálható. Az ilyen szoftverek számára a döntési nehézséget a kis energiájú hangrészek (pl. zöngés zárhang zárszakasza), és a kevert gerjesztésű hangok jelentik. Ebből az következik, hogy a feltehetően hibás döntésű elemekben kézzel kell a megfelelő állapotjelzőket beállítani.
Akusztikai összecsiszolás
A fentiek alapján elkészített adatbázis elemeket még nem lehet felhasználni közvetlenül beszédépítéshez, mivel azok nincsenek egymáshoz illesztve sem amplitudóban, sem hangidőtartamban. Ez az állapot abból adódik, hogy az elemeket emberi bemondásból származtatjuk és a bemondó hangereje, beszédtempója általában változik a hosszú elemlista felolvasása során, még akkor is, ha professzionális bemondót alkalmazunk. Így ha összekapcsolnánk ezeket a "nyers" elemeket a beszédépítés során, akkor torz és lötyögős hangzást kapnánk. Az akusztikai csiszolás lényege, hogy az egyes adatbázis elemeket összekapcsoljuk más elemekkel (a legideálisabb, ha mindegyiket mindegyikkel) és az amplitudókat egymáshoz igazítjuk, továbbá a hangidőtartamokat is beállítjuk egy úgynevezett specifikus időtartamra. Erre azért van szükség, mert a beszédben a hangok egymáshoz való amplitúdó- és időtartamviszonyának helyes aránya a mérvadó. Ha ezek az arányok jók, akkor folyamatosnak és simának, egyszóval természetesnek halljuk a beszédet, ha viszont nem helyesek, akkor zötyögősnek, szaggatottnak, lüktetőnek. Jelenleg ez a legmunkaigényesebb fázisa az adatbázis készítésnek, mivel ezt nemigen lehet automatizálni. Nem is beszélve arról, hogy számos elemben kell periódusokat is javítani, mert pl. a bemondó hangja éppen kissé reszelőssé vált, túl levegős lett stb. Egyszóval az adatbázis akusztikai csiszolása során meghallgatjuk az összes elemet (szövegkörnyezetbe ágyazva) és így döntjük el, hogy mely pontokon kell javítani és mit. Gyakorlati tapasztalat az, hogy 15-20 oldal célzott tartalmú szöveg felolvastatásával a leggyakoribb hangkapcsolatok hangzását meg lehet vizsgálni, és el lehet végezni a csiszolást. Statisztikai gyűjtéssel ezeket dokumentálni lehet és utána a fennmaradó, ritkábban előforduló elemeket külön kell meghallgatni és ha szükséges, akkor összecsiszolni.