KANDIDÁTUSI ÉRTEKEZÉS
MUSZAKI LEÍRÁS
A BRAILAB BESZÉLO SZÁMÍTÓGÉPCSALÁD
Írta:
ARATÓ ANDRÁS
Budapest
1992
TARTALOMJEGYZÉK
---------------
BEVEZETÉS
1. fejezet ELOZMÉNYEK
1.1. TAKTILIS KIJELZOK VAKOKNAK
1.2. SZINTETIKUS BESZÉDDEL KIJELZO SEGÉDESZKÖZÖK
2. fejezet. KÖVETELMÉNYEK, CÉLKITUZÉSEK
2.1. LÁTÁSSÉRÜLTEK KOGNITÍV FUNKCIÓI TAKTILIS ÉS BESZÉDKIJELZOKKEL
2.2. A BESZÉDÉRTHETOSÉG ÉS TERMÉSZETESSÉG DILEMMÁJA SEGÉDESZKÖZÖKBEN
2.3. ERGONÓMIAI ÉS BESZÉDTECHNOLÓGIAI KÖVETELMÉNYEK BESZÉDKIJELZOS ESZKÖZÖKBEN
3. fejezet. A KUTATÓ-FEJLESZTO MUNKA ÉS MÓDSZEREI
4. fejezet. ÚJ MUSZAKI TUDOMÁNYOS EREDMÉNYEK
5. fejezet. A MEGVALÓSÍTOTT TEXT-TO-SPEECH RENDSZEREK
5.1. ÁTLAPOLÁSOS HANG ADATBÁZISOK
5.1.1. A MEA-8000 HANG ADATBÁZISA
5.1.2. A PCF-8200 HANG ADATBÁZISA
5.2. A HANG ADATBÁZISOK FEJLESZTO RENDSZEREI
5.3. ASCII -> METABRAILLE -> DIÁD KONVERTÁLÓ PROGRAM
5.4. MIKROINTONÁCIÓ, INTONÁCIÓ, ÉNEK
6. fejezet. A BRAILAB SEGÉDESZKÖZÖK
6.1. A BRAILAB BASIC
6.1.1. A BRAILAB BASIC SEGÉDESZKÖZ FELÉPÍTÉSE
6.1.2. A TEXT-TO-SPEECH RENDSZER BEÉPÍTÉSE A BRAILAB BASIC-BE
6.1.3. AZ ELSO MAGYAR OLVASÓGÉP BELSO FELÉPÍTÉSE
6.2. A BRAILAB PLUS
6.2.1. A BRAILAB PLUS SEGÉDESZKÖZ FELÉPÍTÉSE
6.2.2. A TEXT-TO-SPEECH RENDSZER BEÉPÍTÉSE A BRAILAB PLUS-BA
6.2.3. A BRAILAB PLUS BRAILLE PUBLISHING RENDSZERE
6.3. A BRAILAB PC
6.3.1. A BRAILAB PC SEGÉDESZKÖZ FELÉPÍTÉSE
6.3.2. AZ ÚJ TEXT-TO-SPEECH RENDSZER BEÉPÍTÉSE AZ MSDOS OPERÁCIÓS RENDSZERBE
7. A BRAILLE RÖVIDÍRÁS ÉS A TEXT-TO-SPEECH KIVÉTELSZÓTÁRA
8. A BRAILAB GÉPEK ALKALMAZÁSAI
MELLÉKLETEK
BEVEZETÉS
Ez a muszaki leírás nem gyártási dokumentációja a BraiLab beszélo számítógépeknek,
hanem azzal a céllal készült, hogy a szerzo (Arató András) lényeges közremuködésével,
vakok számára elkészített informatikai segédeszközök - mint muszaki alkotás - alapján
a muszaki tudományok kandidátusa tudományos fokozat elnyerésére pályázhasson.
A leírásban a megfelelo helyen jelezni fogom, hogy mi volt a szerzo saját munkája, és miben volt
irányítója az eszközök létrehozásának, ill. milyen kész berendezést használt fel.
A berendezéseket és a muködésükhöz szükséges szoftver modulokat blokkvázlat szintjén
ismertetem. A programok teljes forrásnyelvi listáját nem mellékelem, melyek összességében
kb. negyvenezer Z80, I8086 assembler és C programnyelvi sort tennének ki.
A leírásban a hangsúlyt a megoldások újszeruségére és hasznosságának megvilágítására helyezem.
A mellékletekben azok az oktatási segédletek, kézikönyvek találhatók, melyeket elsosorban
vakoknak és tanáraiknak írtam, s melyek tanácsot adnak ahhoz, hogyan kell az általam
kidolgozott új módszereket a BraiLab és BraiLab Plus beszélo segédeszközökben használni.
(A. B.)
A mellékletek tartalmazzák még a kivétel szótár leírási szabályrendszerét,
valamint egy minta kivételszótárt a BraiLab PC külso kivételei és rövidítései számára.
(C.)
A Pedagógiai Technológia címu folyóiratba írt cikkem áttekintést nyújt azokról a
számítástechnikai és mikroelektronikai segédeszközökrol, melyek a vak emberek tanulását
és munkáját könnyíthetik meg. (D.)
A rehabilitációs tanácsadás céljából készült könyvben
a vakoknak szóló számítástechnikai eszközöket használó szakmákat ismertetem fontos
metodikai tanácsokkal szolgálva a pályaválasztó sérült fiataloknak, neveloiknek és
szüleiknek. (E.)
A Magyar Fonetikai Füzetek 15. számában a MEA-8000 szintetizátorra készített egyik
fejlesztorendszeremet ismertetem (F.), míg a 17. számban a BraiLab-ba beépített full
text-to-speech rendszeremet. (G.) Ez utóbbi cikkem megjelent nagyrészt változatlan
formában a XI. ICPhS fonetika tudományi konferencia anyagai között is. (H.)
A Magyar Elektronika folyóiratban megjelent ismertetom a KFKI-ban végzett tudományos
kutatásaimról és annak eredményeirol számolt be már 1987-ben. (I.)
Az 1988-ban megrendezett "Beyond Number Crunching" címu közös osztrák magyar tudományos konferencián eloadást
és bemutatót is tartottam a BraiLab Plus-ba épített magyar és német nyelvu rendszereimrol.
(J.)
Az 1990-ben megrendezett "Computers for Handicapped Persons" nemzetközi konferencián
a braille nyomtatórendszeremmel kapcsolatos tudományos és gyakorlati eredményeimet
ismertettem. (K.) Ugyan ennek a nemzetközi konferenciának 1992-es anyagai közt fog
megjelenni az a cikkem, mely áttekintést ad a speciálisan vakoknak tervezett beszédszintetizátoros
rendszereimrol, valamint a legújabb kutatásaim gyakorlati megvalósulásáról a BraiLab
PC gépemben. (L.)
Az (M.) mellékletben található az a szabadalmi leírás, mely az "Eljárás és berendezés
hang szintetizálására elonyösen beszéd és/vagy ének szótár nélküli, a vezérléssel
teljes egészében azonos ideju eloállítására" címet viseli.
Ezúton is szeretném megköszönni azok közremuködését, akik segítségemre voltak a BraiLab
gépek létrehozásában: eloször is feleségemnek, munkatársamnak Vaspöri Teréznek, aki
a programozási feladatokban segített a legtöbbet, és egyben az eszközök elso számú
felhasználója is, mert teljesen vak.
Továbbá Kiss Gábornak és Olaszy Gábornak, akik a szintetizátor hanganyagának kialakításához
adtak értékes tanácsokat.
Lukács Józsefnek és Endrének, Sulyán Jánosnak, valamint
mindazoknak, akik aktívan segítettek a BraiLab-ok létrehozásában.
1. fejezet ELOZMÉNYEK
1.1. TAKTILIS KIJELZOK VAKOKNAK
A lehetséges számítógépes kijelzok nagy csoportját alkotják a tapintható kijelzok.
Ezek legnagyobb része a braille írást követi, de van olyan, mely a látó írás tapintására
szolgál. Ez utóbbi talán egyetlen számítógépes segédeszközként is használható típusa
az Optacon (OPtical to TActile CONverter), melyet az MIT egyetemen fejlesztettek
ki az 1970-es évek elején.
Ennek az eszköznek 6 szor 24 rezgo tüskéje jeleníti meg mozgatható kamera segítségével
a síkírás egy-egy betujét, vagy annak egy nem teljes részét. Számítógépes terminálhoz
külön optikai elotétet kell hozzá használni, bár újabb típusai, melyek a 80-as évek
közepén jelentek meg, már tartalmaznak karaktergenerátort, hogy ascii kód szintjén
csatlakozhassanak a DTE (Data Terminal Equipment) és DCE (Data Communication Equipment)
eszközök közé. Ez utóbbi fejlesztés gyakorlatilag az ernyo elotétek használhatatlanságának
elismerése.
Az Optacon igen nagy függetlenséget biztosít a vak felhasználónak papíron írt anyagok
olvasásához, bár az elérheto olvasási sebesség nem haladja meg egy elso-második osztályos
látó kisiskolás olvasási tempóját. Ezt a sebességet is csak kitartó tanulás után
éri el a felhasználó. Magyarországi megjelenésekor 1980-ban az ára kétszázezer deviza
Ft volt, ma ötszázezer Ft.
A "soft" braille kijelzok, melyek ideiglenesen, mozgó tüskékkel jelzik ki a számítógép
szolgáltatta információkat, két fo technológiai vonulatba tartoznak. Korábban az
elektromágneses rendszerek jelentek meg kis modulokból összeállítható 20, 40, vagy
két sorban összesen 80 braille cellával.
Már az elektromágneses soft braille kijelzok
is készültek 8 pontos változatban, áthidalva ezzel a 6 pontos szokványos braille
írás és a 7 és 8 bites kódtáblák közötti mély szakadékot.
Megjegyezzük, hogy a 8
pontos braille nemzetközi szabványosítási törekvései, melyben magam is részt vállaltam,
még a mai napig nem jutottak nyugvópontra.
Az újabb soft braille kijelzok már piezo elektromos elvuek, de ezzel az áruk mégsem
csökkent jelentosen, csupán a megbízhatóságuk lett jó. (1 db. egypontos piezo modul
ára kb. 4-5 USD). A magas ár miatt gyakran csak 6 pontot használnak egy modulban.
A nagybetuk jelzésére a tüskék 1-2 Hz-es rezgetését használják. A 8 pontos változatban
az egyik kiegészíto tüske a kis-nagy betu jelzésére szolgál, míg a másik a programozáshoz
szükséges speciális ascii jelek jelölésére. Mindkét kiegészíto tüske együttes jelenléte
a kontroll karaktereket jelenítheti meg.
A braille hardcopy készítésére a sornyomtató ill. mátrix nyomtató elvu domborítók,
vagy egyszerubben nevezve, braille nyomtatók szolgálnak. Eloször az átalakított braille
írógépek voltak használatban számítógépes perifériaként (ezeket leginkább a telexgépekkel
rokoníthatnánk), késobb azonban célfejlesztések eredményei terjedtek el felhasználók
körében.
Legelso fejlesztésemben én is a soft braille kijelzés útján indultam el 1978-ban.
A CÉDRUS (Conversational Editor and Remote User Support) kétgépes terminál rendszerében
a TPA/70 számítógép szolgálta ki a VT340 típusú terminálokat. Vezetésemmel ebbe a
terminálba építettünk be egy olyan kártyát, mely a VT340 felfrissíto memóriájából
mindig egy karaktert kijelzett 6 elektromágneses tüskén. A kártya tartalmazott egy
fix, szukített nagybetus ascii-to-braille konverziót.
A TPA/70 terminál kezelésébe beépítettem egy lassító rutint, mely a kijelzés menet
közbeni olvasását szolgálta volna. Ennek a megoldásnak a használhatóságáról a 2.1.
fejezetben írok bovebben. Már ezt a rendszert is kiegészítettem olyan számítógépes
kommunikációs lehetoséggel, mely alapveto célkituzése kell hogy legyen egy segédeszköznek,
s mely a további fejlesztéseket is elosegítette.
1.2. SZINTETIKUS BESZÉDDEL KIJELZO SEGÉDESZKÖZÖK
A számítógépes kijelzok másik nagy csoportját a szintetikus beszéddel muködo kijelzok
alkotják. További két csoportra oszthatjuk ezeket a beszélo eszközöket a szintetizátor
szótára alapján. A beszédszintézis lehet kötött szótáras, vagy kötetlen szótáras
rendszeru.
Céljaim megfogalmazása idején (a 80-as évek elején) cél segédeszközökben (pl. beszélo
óra) muködtek különbözo nyelveken kötött szótáras beszédszintetizátoros rendszerek.
Ezek hatására készítettem el az SDK-85 (System Design Kit for I8085) alapján egy
programozási segédeszközt.
Az SDK-85 az Intel 8085 mikroprocesszoros fejleszto rendszere, melynek hexadecimális
monitora, lépésenkénti program belövést, hardver töréspontot és egyéb elemi fejlesztési
lehetoséget nyújtott látók számára. Ezt a hardvert egészítettem ki elso lépésben
egy soros kommunikációs interfésszel, további program memóriával és egy Digitalker
nevu fix szavas, amerikai nyelvu beszédszintetizátorral.
A fejleszto rendszer monitorát úgy alakítottam át, hogy minden funkciót, melyet látó
el tudott végezni, vak is megtehesse. Már ebben a rendszerben is ügyeltem a beszéd
megszakíthatóságára, melyet itt csak egy külön interrupt szint felhasználásával tudtam
elérni. A fix szavas rendszer, az SDK-85 funkcióinak használatát maradéktalanul lehetové
tette módosított monitorommal vakok számára is.
A 80-as évek elején kötetlen szavas rendszerek csak angol nyelvterületen készültek.
Ezek ún. fonéma szintetizátorral muködtek (SCO01). A fonéma szintetizátor beszédminosége
gyenge, mert a hangkapcsolatokat, az elo és utóhatásokat nem tudja figyelembe venni.
Mégis nagy elonyük, hogy kevés gyakorlással a hangok jól megtanulhatók, és így a
munka során jól felismerhetok.
Magyar nyelv céljára az angol fonéma szintetizátor gyakorlatilag használhatatlan,
mert a magyar magánhangzók és egyes mássalhangzók idegenül hatnak az angol fonémákkal
(pl. hehezett p, t). A fonéma szintetizátor kétségtelen elonye a jobb ár/sebesség
mutatójában van a soft braille kijelzokkel szemben.
Késobb, angol nyelvterületeken, fokozatosan elterjedtek a formáns szintetizátorok.
Ezek hangzása már természetesebb, hosszabb hallgatás után sem fárasztó használatuk.
Az elso többnyelvu formáns elvu rendszer, melyet segédeszközökben használtak a svéd
Infovox volt. Magyar nyelvre csak ilyen formáns szintetizátor használata jöhetett
szóba.
Az MTA Nyelvtudományi intézetében kifejlesztettek kötetlen szótáras, digitálisan
vezérelt analóg szurokkel muködo beszédszintetizátoros rendszert. A program Fortran
nyelven overlay szerkezettel betöltötte a teljes PDP11 típusú kisszámítógépet. A
80-as évek elején kezdték meg az áttérést a digitálisan vezérelt, 4 digitális szurot
tartalmazó integrált áramkörre (MEA-8000).
A Budapesti Muszaki Egyetemen Dr. Gordos
Géza vezetésével ekkor még csak kötetlen szótáras rendszerek fejlesztésére vállalkoztak.
Akkori publikált nézetük szerint full real-time text-to-speech rendszer mikroprocesszoron
nem, csak közepes és nagyobb teljesítményu kisszámítógépen valósítható meg.
Ez volt az egyik oka annak, hogy saját magam kezdtem beszédtechnológiai kutatásba
és fejlesztésbe. A másik fo oka a külön text-to-speech rendszer kialakításának az
a meggyozodésem volt, hogy segédeszközbe speciális beszédtechnológiát kell beépíteni.
E megyozodésem az évek során csak tovább erosödött.
Az SDK-85 fix szavas, angolul beszélo fejleszto rendszeremet kiegészítettem braille
klaviatúrával, a szövegek bevitele céljából (a soros interfész mellett), valamint
a MEA-8000 áramkörrel. Párhuzamos fejlesztés céljából készítettem C64-es mikroszámítógépes
MEA-8000-es fejleszto rendszert is. Ezzel foleg a magyar formáns paraméterek kialakításának
feladatát céloztuk meg. Ebben Kiss Gábor volt segítségemre.
A kezdeti, segédeszközökben alkalmazott text-to-speech rendszerek közös jellemzoje
volt, hogy külön processzoron futott a szintetizátor program, vagy annak adatbázisa
dedikált, külön tárolóban volt. Ennek oka a nagy program méret és a beszéd prototípusok
nagy terjedelme. Ezt a szeparáltságot mindenképpen el akartam kerülni az ár/teljesítmény
viszony megjavítása és a szoros real-time kapcsolat érdekében.
2. fejezet. KÖVETELMÉNYEK, CÉLKITUZÉSEK
2.1. LÁTÁSSÉRÜLTEK KOGNITÍV FUNKCIÓI TAKTILIS ÉS BESZÉDKIJELZOKKEL
Amikor vakoknak és gyengénlátóknak készítünk segédeszközöket, akkor tekintettel kell
lennünk ezeknek az embereknek bizonyos pszichés problémáira is. Ez természetesen
nem jelenti azt, hogy ok más emberek, különleges csodabogarak! Feltétlenül hangsúlyoznunk
kell azt, hogy inkább általános emberi tanulási és felhasználási problémákat kell
látássérültek esetében is megoldani, nem pedig valami egészen speciálisakat.
Ellentétben a hiedelmekkel, vak emberek hallása és tapintása fiziológiailag nem jobb
mint a látóké. Ezen érzékszervek funkciói viszont mások a megismerés folyamatában.
A látó tapintással csak kiegészíto információkat szerez, a vak haptikus érzékelésének
alapveto kognitív funkciói vannak.
Felvetodik a kérdés, hogy mi fontosabb a látássérült számára: a hallás vagy a tapintás?
Milyen képet lehet alkotni egy szöveg tükörrol tapintás és hallás útján?
Egy elvont logikai program struktúra megértéséhez hogyan segíthet egy tapintható blokkdiagram?
A szövegszerkesztokkel létrehozott mértani alakzatok viszonylag egyszeruek, így ezekrol
akár hallás útján is kialakíthatók megfelelo képzetek! Ehhez azonban a mesterséges
beszédet eloállító rendszerbe megfelelo támogatást biztosító üzemmódokat kell beépíteni.
Monoton intonálással jelölhetjük a sorok végét, és a szünetek hossza utalhat a szavak
egymás közötti távolságára.
A hangmagasság és a szünetek hossza analóg értékek, melyeket az ember nagyon jól
tud kezelni.
Egyéb hang effektusok (furcsa beszéd, nagyobb hangero) kiegészíthetik,
gazdagíthatják a kétdimenziós formák felismeréséhez a jelzéseket.
A braille hardcopy haptikus érzékelése viszont elengedhetetlen a hallás útján végzett interaktív munka teljessé tételéhez.
Dr. Pálhegyi Ferenc kísérleti vizsgálatai és kutatásai alapján az állapítható meg,
hogy a vak emberek tapintás útján szerzett formaérzékelésében a legnagyobb gondot
a globális formák érzékelése jelenti. Más kísérletek alapján is kiderült, hogy vak,
gyengénlátó és látó vizsgálati személy által végzett tapintási tesztekben, különösen
két kézzel történo vizsgálódáskor, a látók és gyengénlátók ill. a késobb megvakultak
elonyösebb helyzetben vannak a született vakokkal szemben. (Természetesen minden
vizsgálati személy szeme a kísérlet alatt be volt kötve).
A globális formák felismeréséhez a beszéd nagyon jól használható. Ki lehet mondatni
a beszédszintetizátorral, hogy a fájl melyik részén vagyunk éppen, hanyadik sor,
hanyadik oszlopában található a cursor, mennyivel beljebb íródtak a bekezdések.
A vak emberek metrikus megismerési elvét ezek a közölt számértékek nagyon jól segítik.
A beszédkijelzos segédeszközök használatakor megfigyeltem egy érdekes pszichikai
jelenséget (megjegyzem, hogy ezt látóknál is tapasztaltam, amikor beszélo számítógépet
adtam a kezükbe). Kezdetben a felhasználó mindig kivárja a mesterséges beszéd végét,
addig nem nyúl a következo billentyuhöz, amíg az beszél. Látók esetében ez a korlát
feszültséggel párosul, mert az ernyorol sokkal hamarabb leolvassa az üzeneteket.
Vakok esetében hamarosan megjelenik az az igény, hogy gyorsabban dolgozhassanak,
mint ahogy a gép beszél. A legfontosabb, hogy ezt az igényt minél teljesebbköruen
kielégítsük a segédeszközben.
Tekintsünk egy másik kísérletsorozatot, melyben a közvetlen és megtartó emlékezet
lélektanát vizsgálták. Ebben a vak kísérleti személyek rendre jobb eredményeket értek
el, mint a látók és alig látók. Fontos eredménye a vizsgálatnak, hogy a megtartó
emlékezetben a tapintásnak fontosabb szerep jut, mint a hallásnak.
Az egykarakteres braille kijelzo és az egy síkírásos karaktert megjeleníto (Optacon)
eszközökben külön gondot jelent, hogy a taktilo-motorikus észlelés tere be van szukítve.
Itt a haptikus érzékelés mozgás elve korlátozódik.
Hosszabb braille sor kijelzése valamit javít a helyzeten. Készültek olyan kísérleti
berendezések az elmúlt években, ahol a braille sor kézzel elmozdítható fel és le
irányban, így igyekeztek megközelíteni, hogy egy braille oldal olvasásának képzetét
nyújthassák. A túl magas ár miatt egyedi kivitelben találhatók teljes braille lapot
kijelzo táblák (Stuttgarti egyetem 1985).
Egykarakteres braille kijelzo beszéddel kombinálva sorozatban is készült (Braillescope Belgium 1990).
Összefoglalva, mind a tapintásra, mind pedig a beszédkijelzésre egyaránt szükség
van, ezek mellett leginkább a látássérült emlékezetére számíthatunk. A fokozottabb
térérzékelés szüksége és a jobb ár/teljesítmény miatt, interaktív munka céljára a
szintetikus beszéd mellett döntöttem, braille nyomtató kiegészítéssel. Egy központilag
használt braille nyomtató több felhasználónak nyújtja elonyeit, míg a beszédkimenettel
ellátott számítógépes segédeszköz az egyén céljait szolgálja.
2.2. A BESZÉDÉRTHETOSÉG ÉS TERMÉSZETESSÉG DILEMMÁJA SEGÉDESZKÖZÖKBEN
A folyamatos beszédeloállító rendszerek megítélésében két paraméter játszik fo szerepet:
az egyik a beszéd érthetosége, a másik pedig a beszéd természetessége.
Ha segédeszközbe szánt mesterséges beszédrol van szó, akkor a beszéd érthetoségét kell elotérbe helyezni.
E két paraméter kielégítéséhez sajnos sokszor egymásnak ellentmondó megoldásokon
keresztül vezet az út.
Vizsgáljuk meg eloször a beszéd érthetoségének követelményét. Kutatásom tárgyát képezo
speciális ember-gép kapcsolati esetben nemcsak a szöveg, mondat és szó érthetoségének
van kiemelt jelentosége, de a látszólag szükségtelen logatom és hang érthetoségekre
is meglehetosen nagy figyelmet kell fordítani. Gondoljunk csak arra, hogy a beszéd
sok esetben az egyetlen támasz a szövegek szerkesztése, javítása közben.
A beszéd természetessége helyett inkább a mesterséges hang fárasztóságának fogalmát
vezetném be. Hosszabb szövegek meghallgatásakor a természetesség elony, hiszen a
szöveg érthetoségét is elosegíti a természetes intonálás és hangsúlyozás. (Itt egyelore
csak a szöveg szintaktikai vizsgálatára gondolok és nem annak szemantikai analízisére.
Az adott alacsony kategóriás processzorok kapacitása mellett ilyen szemantikai elemzés
real-time elvégzése egyelore nem lehetséges.)
A beszéd érthetoségének és természetességének növelése sokszor ellentmondó követelményeket
támaszt a rendszerek kialakítása során, de néha e két tulajdonság erosítheti is egymást.
Elsoként nézzük a beszéd tempójának kérdését.
Ha a leghosszabb idotartamú szeletekbol állítjuk össze a paramétereket, akkor tág
határok között gyorsíthatjuk a beszédet. Ha a sebességet vezérlo paramétert a leggyorsabbra
állítjuk, akkor a hangszeletek idotartamának legrövidebbre váltásával el lehetne
érni még gyorsabb beszédtempót is. Ez segédeszközben nagyon fontos szempont. Ugyanakkor
a természetesség csorbát szenved. A rövid hangszeletekkel finomabb mikrointonálási
struktúra hozható létre.
A tempó és a mikrointonáció kérdései után következnek a hangok és logatomok érthetoségének
problémái. Felvetodik a kérdés: mikor van szükség arra, hogy szavaknál kisebb egységek
érthetosége számítana? A szöveg szerkesztése közben olyan részei szólalhatnak meg
a szavaknak, melyek önmagukban értelmetlen hangsorok. Gépeléskor a billentyuk ehózására
a hangalakok szolgálhatnak.
A billentyuk ehózása olyan fontos ember-gép kapcsolati követelmény, hogy megérdemli
a kutató különleges figyelmét. Magyarországon én vezettem be azt a billentyu echózási
módszert, melyet az imént a hangalakkal történo megjelenítésnek neveztem. Sokszor
láthatunk még ma is, más, viszonylag fonetikus nyelveken beszélo segédeszközökben
olyan megoldásokat, hogy a betu nevét mondják ki a megfelelo billentyu leütésére.
Ez azért hibás megoldás, mert a gyors gépelést akadályozza. Szinte kényszeríti a
felhasználót arra, hogy minden alkalommal kivárja a betu megnevezését. Ez abban az
esetben, ha a beszéd meg sem szakítható, kifejezetten idegesíto a munkában. Ha a
billentyuk echózásának azt a módszerét választják, hogy csak a szavak végén szólal
meg már a teljes szó, akkor elvész az egyidejuség, a folyamatos kontroll megnyugtató
érzése. Bizonyos nyelveknél (pl. angol) persze az utólagos szó echó tunik csak járható
útnak ld. Braille 'n Speak.
Vegyük a magyar nyelv példáját, és tekintsük az eL, eM, eN és eF betu megnevezésekkel
történo meghangosítását. Ha a felhasználó kello gyorsasággal gépel, és a beszéd megszakíthatósága
is adott, akkor csak az E hang hallatszik. Ez teljesen félrevezeto.
Még továbbra is áll a kérdés, hogy milyen hangparamétereket szólaltassunk meg a text-to-speech
programunkban? Egy lehetséges megoldás a szókezdo és szóvégi paraméterek összekapcsolásából
adódik. Ehhez azonban ezeknek a szó eleji és szó végi hangoknak a megtervezésében
az ilyen jellegu felhasználást figyelembe kell venni! A beszéd hangzásában itt is
kompromisszumok megkötésére kényszerülünk. Egy másik megoldás a külön paraméterek
tárolása a hangalakok echózásának céljára. Ez többlet memória használattal jár.
Fontos feladat a kis és nagybetuk megkülönböztetése. Gondoljunk csak a C nyelvben
történo programozásra. Mivel a braille írás eléggé elhanyagolja a nagybetuk jelölését,
ezért egy segédeszközben, mely a látók világával köti össze a vak felhasználót, erre
a kérdésre nagy súlyt kell fektetni. Másoknál sok megoldást láthatunk a nagybetuk
kijelzésére. Leggyakrabban kiegészíto hanghatást alkalmaznak (pl. J. Frank TASO).
Én egy olyan, eddig nem alkalmazott, természetes megoldást választottam, mely plusz
idot nem igényel, és mégis nagyon hatásos. A nagybetuk hangosan szólnak.
Ez a látszólag egyszeru megoldás nagyon sok problémához vezet olyan formáns szintetizátor
esetén, ahol nem normálható könnyen a jel/zaj viszony (MEA-8000). Itt zajos beszéddel
kell fizetni ezért az ember-gép kapcsolati megoldásért. A PCF-8200-nál a DAC faktor
ezt a problémát megoldja.
A logatom és szóérthetoség kérdéséhez tartozik a javító parancsok új echózási módja.
A szövegszerkeszto használata közben a betu és szójavítások során részhangok, szavak
szólalnak meg, melyek összeolvadva a javító hangokkal, végül a javítás befejezéseként
helyes szó hangzást eredményeznek. Ez olyan természetes beszéd általi szövegszerkesztést
tesz lehetové, mely a felhasználók körében szinte nem is tudatosul, csak más, ilyen
módszert nem alkalmazó eszközök használatakor tunik fel hiánya. Ahhoz, hogy ezek
a hang összeolvadások jó hatást érjenek el, a beszéd paramétereinek alapos "összecsiszolására"
van szükség, nem beszélve a szintetizátor real-time programozásáról.
A szavak érthetoségének vizsgálata után elértünk a mondatok és szövegek érthetoségéhez
ill. a beszéd fárasztóságához. A részletdús hanganyag nagyban javítja a beszéd természetességét,
csökkenti a fárasztóságát. A formáns szerkezetben tárolt "mikrointonálást" a PCF-8200-nál
érdemesebb megvalósítani, mert az 5 programozható szurot tartalmaz. Nem a frame-eket
kell tekinteni a beszéd alapegységeinek, hanem teljes szakaszokat. Ennek a tömör
tárolási módnak a megvalósítását az 5.1.2. pontban írtam le.
Az automatikus intonálás megvalósításánál újra szembe kerülnek a gyors érthetoség,
az alkalmazhatóság követelményei a beszéd természetességének követelményével. Olyan
intonálási görbéket kell alkalmazni, melyek már a mondat elején utalnak a mondat
végi jelre. Hogy mégse legyen fárasztó a mesterséges beszéd használata, azt az intonálási
görbék nagyobb számával lehet elérni.
A beszéd érthetoségét úgy lehet fokozni, hogy még karakterisztikusabbá formáljuk
az egyes hangok paramétereit, vagy erosen artikulált beszéd mintákból indulunk ki.
Elonyösebb segédeszközben a túl artikulált beszéd, mint a köznapi ejtés, ahol sok
részletet elharapnak. Itt is gyozzön inkább az érthetoség.
A jelöletlen hasonulásokat a köznapi nyelvben jelöljük. Segédeszközben mindenképpen
szükséges, hogy az eredeti, a hasonulásban résztvevo hangok is meg tudjanak szólalni.
Így egyértelmubb a hang alapján történo szövegszerkesztés.
2.3. ERGONÓMIAI ÉS BESZÉDTECHNOLÓGIAI KÖVETELMÉNYEK BESZÉDKIJELZOS ESZKÖZÖKBEN
Ha eltekintenénk attól a ténytol, hogy látássérülteknek kell hardver-szoftver eszközt
készíteni, akkor elég jól megfogalmazhatók lennének azok az általános követelmények,
melyeknek meg kellene felelni egy jól használható berendezésnek. Ezek a megállapítások
szinte pontról pontra alkalmazhatók lennének a vakügyi segédeszközökre is. Ennek
fényében két fo irányzat figyelheto meg a világban.
Az egyik szerint nem kell külön látássérültek számára berendezéseket készíteni, mivel
ez az integrációjuk ellen is hatna. Ok kisebbségben vannak a társadalomban, ezért
soha nem érheto el, hogy a látóknak fejlesztett minden program és berendezés vakos
változata is elkészüljön. Csak olyan kiegészíto adapterre van szükség, mely valamennyire
hozzáférhetové teszi az információt vakoknak és gyengénlátóknak.
A másik irányzat szerint speciális berendezéseket kell fejleszteni és készíteni látássérülteknek.
Még ha széria gépen is dolgoznak, külön számukra kifejlesztett programokat kell kezükbe
adni. Az alkalmazói programokat célorientáltan kell megírni.
Én mindkét nézetet egyaránt osztom, bár különbséget kell tenni a felhasználók és
a felhasználás körében. Ha kezdoknek adunk segédeszközt, akik kevés számítógépes
ismerettel rendelkeznek, akkor célberendezés és célprogram szükséges. Ugyan ez igaz
akkor, ha mindennapi felhasználásra, papír ceruza helyett használt berendezésrol
van szó.
Az elso irányzat mellett kell érvelnem akkor, ha munkarehabilitációs célokat szolgál
a segédeszköz. Az integrációt ebben az esetben a nem speciális gépeket és programokat
használni tudó kiegészítés támogatja a legjobban. A beszédkimenet elé állított célok
egyformák mindkét típusú berendezés esetében. Ezek a következok:
- kialakítani egy olyan hang adatbázist, mely alkalmas hallás útján történo interaktív
szövegszerkesztésre és programozásra, de hosszabb használat mellett se legyen fárasztó.
- olyan magyar text-to-speech programot létrehozni, mely teljesen valós ideju, akár
8 bites mikroprocesszoron is muködoképes, a gyors interaktív munkát nem akadályozza.
A megalkotott kötetlen szótáras mesterséges beszédet úgy kell beépíteni informatikai
segédeszközökbe, hogy az mind gyakorlott, mind pedig kezdo felhasználó igényeit kielégítse.
A kialakított segédeszköz:
- legyen olcsó, hordozható, lehetoleg hálózatfüggetlen is. Kövesse a felhasználója
maximális munkatempóját.
- tartalmazzon olyan braille szövegszerkeszto lehetoséget is, melynek segítségével
a látó és braille írást elég egyszer rögzíteni és kezelni egy közös "laboratóriumban".
- a magyar braille kis és nagy rövidírást automatikus fordító program segítse.
- adjon lehetoséget a számítógépes kommunikációra (beszélo terminál program), mert
a számítógépes hálózatok az oktatás és munkarehabilitáció egyik legfontosabb közege.
A fenti céloknak saját fejlesztésu, két különbözo típusú formáns szintetizátorra
kifejlesztett hang adatbázis, és két mikroprocesszorra készített magyar és német
text-to-speech program felelt meg. A cél segédeszközök iránt támasztott követelményeknek
a BraiLab és a BraiLab Plusz gépeim felelnek meg. Az általános gépek és programok
használatát az IBM PC-re kifejlesztett BraiLab PC adapterem és szoftverem segíti
a legjobban.
3. fejezet. A KUTATÓ-FEJLESZTO MUNKA ÉS MÓDSZEREI
A kötetlen szótáras mesterséges beszédeloállító rendszer hanganyagának kidolgozásában
az ún. diádos módszert használtam és fejlesztettem tovább. Elsodleges szempontnak
tartottam a beszéd érthetoségét, és kevésbé fontosnak a beszéd természetességét.
A BraiLab gépcsalád elso és második tagjánál, melyek mikroprocesszorai 8 bitesek,
s melyekben még a kis méret is elsodleges szempont volt, a tömör tárolás érdekében
figyelembe vettem az egyes beszédhangok fonetikai tulajdonságainak rokon voltát.
A beszédképzo szervekben hasonlóan képzett mássalhangzókat csoportosítottam, hogy
az általam kifejlesztett átlapolási elokeresési móddal a beszéd frame prototípusok
még tömörebben legyenek tárolhatók.
Percepciós és statisztikai módszerrel ellenoriztem az érthetoséget, és ahol szükséges
volt, több, a környezo hangok hatását jobban kifejezo beszéd frame-et tároltam. A
MEA-8000 formáns szintetizátorra épült rendszereknél természetesen ejtett szavak
szonogramjaiból indultam ki. A BraiLab PC-ben használt PCF-8200 esetében erosen artikuláltan
ejtett szavakat analizáltam.
A magyar braille rövidírás fordító rendszerének, valamint a full text-to-speech kivételszótárának
megtervezéséhez Jelinek Schneider, változó hosszúságú blokkok tömör kódolására kifejlesztett
módszerét használtam. Segítségével vizsgáltam magyar nyelvi mintán az irodalmi nyelv
entrópiáját, ami segített a két kivételszótár optimális kialakításában.
Az ember-gép kapcsolati kérdések elemzésénél abból indultam ki, hogy a sérült ember
épen maradt képességei területén eros kompenzáció alakul ki. Ezek közül vakoknál,
a beszédkimenet esetében a hallást és az emlékezést kell kiemelni. A tanulás módját
tekintve két alaptípust feltételeztem. Az egyik elore elsajátítja a parancsok összes
lehetséges változatát, és csak ezután kezdi hallás útján szerezni a tapasztalatait.
A másik, folyamatosan tanul, sokkal többet hibázva eközben. Mindkettojük számára
kielégíto módszert és rendszert kellett alkotni.
Az évek során a vakok oktatása alapján nagyon sok gyakorlati tapasztalatom gyult
össze a segédeszköz legjobb ergonómiai kialakításához. A legcélravezetobb tervezési
módszernek a beleélés bizonyult. Az egyes programok használata közben az ernyot nézve
elképzeltem a látássérült felhasználó reakcióit, hibás lépéseinek lehetséges kijelzéseit,
korrekcióit, és ezeket a megfigyeléseket visszacsatolva, a beszédkijelzés és az operációs
rendszerbe történo beépítés tökéletesítésére használtam fel.
Egy évtizedes kutató-fejleszto munkám során, az általam kidolgozott módszereket alkalmazva,
három BraiLab típusú számítógép készült sorozatban.
Az elso (1985-ben), a HomeLab
típusú gép MEA-8000 szintetizátoros kiegészíto blokkal alkotja a BraiLab alapgépet.
Ennek készült, egy gyártásba ugyan nem került soros vonallal történo kiegészítoje
(ld. 6.1.3.) is. Beégetett BASIC interpreteréhez, input/output rendszeréhez, Assembleréhez
és monitorához illesztettem a beszédkimenetet úgy, hogy a gépet vakon lehessen használni.
Ez az alapgép foleg oktatási célokat szolgál.
1987-ben útmutatásaim alapján készült el a BraiLab Plusz nevu gép hardver kártyája.
Mind a BraiLab alapgép, mind pedig a BraiLab Plusz Z80 mikroprocesszort és MEA-8000
formáns szintetizátort tartalmaz. Mindketton az általam, a beszélo SDK-85 segítségével
kifejlesztett magyar nyelvu real-time full text-to-speech programrendszer muködik.
A BraiLab Plusz CP/M operációs rendszerébe olyan kiegészítéseket terveztem, melyek
a fent említett célokat kielégítik. Beszélo szövegszerkesztot, terminálkezelot, adatbáziskezelot
alakítottam ki. Ez a gép már valós munkarehabilitációs elvárásoknak is megfelel.
A BraiLab Plusz-ra alapozva elkészítettem, a magyar braille rövidírást is támogató
fordító és nyomtató rendszert. A programot számos braille sornyomtatóra és nyomdagépre
is illesztettem. A kivételszótárba a magyar nyelv entrópia vizsgálatának eredményeit
is beleépítettem.
A BraiLab PC rendszer 1990-ben készült el. Ennek hardver része egy IBM PC-re illesztett
adapter, mely PCF-8200 típusú CMOS formáns beszédszintetizátort tartalmaz. Így az
eszköz már nemcsak hordozható, de megfelelo PC-vel teljesen hálózatfüggetlen segédeszközként
funkcionál.
Az új mesterséges beszédeloállító áramkör számára teljesen új elvu, kötetlen szótáras
programrendszert készítettem. A nagyobb tárolókapacitás lehetové tette a korábbi
4 Kbájtos beszédparaméterek 20 Kbájtosra növelését. Ezzel a beszéd minoségét lényegesen
meg tudtam javítani. A hanganyagot a korábbi fejleszto rendszerek kibovítésével fejlesztettem
ki, és már erosen artikulált beszédmintákat alkalmaztam.
A full text-to-speech rendszert kivételszótárral kiegészítve beintegráltam az MSDOS
operációs rendszerbe. Az ember-gép kapcsolati szempontokat össze kellett egyeztetnem
az IBM PC gazdag szoftverellátottságával, így egy általános célú intelligens ernyo
felolvasó rendszert készítettem. Ez a segédeszköz, bár nem célszámítógépen fut, könnyen
használható látássérültek által.
4. fejezet. ÚJ MUSZAKI TUDOMÁNYOS EREDMÉNYEK
1. Módszert dolgoztam ki, mely lehetové tette, hogy elkészítsek Magyarországon elsoként
egy teljesen real time full text-to-speech rendszert mikroprocesszorra, bebizonyítva
ezzel, hogy ilyen rendszert nemcsak komolyabb teljesítményu számítógépen lehet megalkotni.
2. Kialakítottam egy olyan eljárást beszédparaméterek tárolása céljára, melynek
segítségével nemcsak nagyon kis méretu beszéd frame prototipus tárat építettem, de
igen jó minoségu, nagy részletességu adattárat is viszonylag kis helyen.
3. Kidolgoztam egy a magyar (és német) braille írást követo Metabraille kódolási
eljárást, mellyel a text-to-speech, és a braille nyomtató rendszert integráltan és
hatékonyan muködo egységben hoztam létre.
4. Kidolgoztam a hallás útján történo interaktív számítógépes munkavégzés módszereit
látássérültek számára, és elkészítettem az elso, teljesen on-line elvu beszéd echoval
megvalósított mikroszámítógép alapú segédeszközt. Ez volt egyben Magyarország elso
beszélo személyi számítógépe.
5. A Recognita karakterfelismero programmal elsoként valósítottam meg egy teljesen
automatikus, síkírást felolvasó rendszert a BraiLab Basic számítógépem terminálemulátora
segítségével.
6. Kidolgoztam és elkészítettem az elso, és máig egyetlen automatikus braille rövidíró
fordító és szerkeszto rendszert, mely az ASCII szöveget az általam bevezetett Metabraille
kódra fordítja, és így lehetové teszi a braille írású nyomtatandó anyagok dokumentum
szerkesztését mind vakok (hallás útján), mind pedig látók számára.
7. Elkészítettem egy bármilyen magyar éneket automatikusan eléneklo programot, mely
a megadott szöveg, ritmus és Kodály Zoltán relatív szolmizációjával leírt dallam
alapján muködik.
8. Kidolgoztam egy kivétel szótár kezelési eljárást, melynek segítségével nemcsak
a braille rövidírás kivételei kezelhetok effektíven, de a text-to-speech program
kiejtésbeli kivételei is ezzel a módszerrel real time kezelhetok.
5. fejezet. A MEGVALÓSÍTOTT TEXT-TO-SPEECH RENDSZEREK
5.1. ÁTLAPOLÁSOS HANG ADATBÁZISOK
5.1.1. A MEA-8000 HANG ADATBÁZISA
Ahhoz, hogy a text-to-speech rendszerekben bármilyen szöveg konvertálható legyen
beszéddé, szükség van valamilyen hang alapegységek tárolására. A szomszédos hangok
egymásra hatással vannak, ezért nem elegendo egy nyelv alap hangjait eltárolni. A
leggyakoribb megoldás egy kétdimenziós alaphang mátrix összeállítása, amely minden
hang-hang átmenetet úgynevezett diádot tartalmaz.
Én is ezt az utat választottam, de én nem fix számú hang alapelembol (frame-bol)
indultam ki, melyeknek kódjait a diád mátrix tartalmazza, hanem nálam a mátrix egy
összetett pointert tárol csupán. A kód tárolás azzal a hátránnyal jár, hogy a mátrix
mérete megno, mert legalább 6 kódszámot kell tartalmaznia minden diád számára. A
másik hátrány abból származik, hogy viszonylag kevés frame áll rendelkezésre pl.
256, ha a kódszám egy bájtos, ami a beszéd finomságát korlátozza. A harmadik hátrány
a nehéz kezelhetoség. Sokszor fonetikailag teljesen idegen hangátmenetekben kell
azonos frame-eket használni, mely nehezen áttekintheto.
A pointeres megoldásom elonye az igen egyszeru kezelhetoségen túl kettos. Szükség
esetén nagyon tömör adatbázis is létrehozható, mint ez a MEA-8000 elso magyar adatbázisánál
látható, de ha minden pointer külön beszéd szakaszokra mutat, akkor a hanganyag nagyon
gazdag lehet, és nem korlátoz a frame kód kicsi értéke. (A frame kód nem könnyen
növelheto, mivel kétbájtos frame kód érték használatakor a diád mátrix mérete
hangszám * hangszám * 2
értékkel no, ami már igen tetemes. A pointeres megoldás teszi lehetové az átlapolásos
frame szakasz tárolást. Ez még a gazdag hanganyag kialakításnál is jelentos megtakarítással
jár.
Az elso magyar hang adatbázisom, mely MEA-8000 típusú formáns szintetizátorra készült,
normális hétköznapi ejtésu szavakon alapult. Kiválasztottam egy jellegzetes hangzású
mássalhangzót, melyet szókezdo és szóvégi diádjaival együtt szintetizálva nagyon
jól fel lehetett ismerni. A szonogrammokból nyert formáns értékeket gyakran kellett
sarkítani, természetes ellenes irányba, hogy a rokon hangok (pl. b, d, g) a fent
leírt módon, könnyen megkülönböztethetok legyenek. Ez persze azt vonta maga után,
hogy a hangzás sokszor természet ellenes lett, de kis tanulással viszont hallás útjáni
biztos felismerést tett lehetové.
A nagyfokú tömörítés érdekében a hangátmeneteket elnagyoltam. Nulla amplitúdójú,
hosszan hangzó frame-eket alkalmaztam, és bíztam a MEA-8000 lineáris interpolálási
funkciójában, mely a korábbi szuroértékeket csak folyamatosan elsimítva változtatja
meg. A beszéd természetessége ellen hatott a MEA-8000-nél a frame hosszak lineáris
lépcsozete. A PCF-8200-nál ez már logaritmikusra változott.
Az átlapolásnál a következo elveket érvényesítettem: a mássalhangzó-magánhangzó diádokban
nem tároltam a mássalhangzó jellegzetes formánsait, csupán annak átmeneti részeit
képzo, gyakran nulla amplitúdójú frame-eket. Ezek a formáns értékekben és hosszban
a különbözo nagy osztályokba sorolt mássalhangzóknál eltértek egymástól, de végül
a magánhangzó tiszta fázisában már teljesen azonosak voltak.
Az alábbi példákban a frame-ek beosztása a következo:
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- FD AMPL PI F1 B1 F2 B2 F3 B3 B4 -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
FD=frame duration msec; AMPL=amplitude; PI=pitch increment;
F1, F2, F3 = formáns frekvenciák; B1, B2, B3, B4 = formáns
sávszélességek. Az Fn Bn értékek Hz-ben adottak. PI=16=zaj.
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ A k-a diád cimkéje. 5 frame-et tartalmaz
- $K.A: ;5 - az átmenet. Egy frame-el többet, mint a
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦- nagy többség.
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- # 16 0 0 784 125 1110 125 2400 309 125 -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦T¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -
- $SP.A: ;4 - Csak a k-a átmenethez tartozó
- $A.A: ;4 - frame.
- $AA.A: ;4 -
- $E.A: ;4 -
- $EE.A: ;4 -
- $I.A: ;4 -
- $O.A: ;4 -
- $OE.A: ;4 -
- $U.A: ;4 -
- $UE.A: ;4 -
- $C.A: ;4 -
- $CS.A: ;4 -
- $J.A: ;4 -
- $L.A: ;4 +¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- $M.A: ;4 - -
- $N.A: ;4 - -
- $P.A: ;4 - A hangzás alapján összevont hangátmenetek
- $S.A: ;4 - cimkéi. Mindegyik azonosan 4 frame-et
- $SZ.A: ;4 - tartalmaz.
- $T.A: ;4 -
- $V.A: ;4 - Ez az elso frame a négybol¦¦¬
- $Z.A: ;4 - -
- $ZS.A: ;4 - -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦- -
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦+¦¦¦¦¦¦¦¦¦¬
- # 32 0 0 554 50 988 50 2400 50 50 -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- $B.A: ;3 - A d-a diád nincs semmivel össze-
- $F.A: ;3 - vonva, de az a tiszta fázisát¦¦¬
- $G.A: ;3 +¦¦¦¬ meg kellett ismételni. -
- $GY.A: ;3 - - -
- $H.A: ;3 - Ezek az átmenetek csak 3 frame-bol -
- $NY.A: ;3 - állnak -
- $R.A: ;3 - - -
- $TY.A: ;3 - - -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦- - -
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦+¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -
- # 32 177 0 554 50 988 50 2400 50 50 - -
- # 16 250 0 554 50 988 50 2400 125 50 - -
- # 16 250 0 554 50 988 50 2400 50 50 - -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦- -
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -
- $D.A: ;4 L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -
- # 16 125 0 391 125 1337 50 2842 125 125 - -
- # 32 250 0 554 50 988 50 2400 125 50 +¦-
- # 16 250 0 554 50 988 50 2400 50 50 -
- # 16 250 0 554 50 988 50 2400 50 50 -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- $A.K: ;4 -
- $AA.K: ;4 -
- $E.K: ;4 - A magánhangzó-k és mássalhangzó-k átmenetek
- $EE.K: ;4 - gyakorlatilag teljesen közösek.
- $I.K: ;4 - -
- $O.K: ;4 - -
- $OE.K: ;4 - -
- $U.K: ;4 - -
- $UE.K: ;4 +¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
- $B.K: ;4 -
- $C.K: ;4 -
- $CS.K: ;4 -
- $D.K: ;4 -
- $F.K: ;4 -
- $G.K: ;4 -
- $GY.K: ;4 -
- $H.K: ;4 -
- $J.K: ;4 -
- $K.K: ;4 -
- $L.K: ;4 -
- $M.K: ;4 -
- $N.K: ;4 -
- $NY.K: ;4 -
- $P.K: ;4 -
- $R.K: ;4 -
- $S.K: ;4 -
- $SZ.K: ;4 - Csak a szókezdo k eroteljesebb a
- $T.K: ;4 - hangalakkal történo echózás
- $TY.K: ;4 - miatt is.
- $V.K: ;4 - -
- $Z.K: ;4 - - A szóvégi k -val együtt alakul
- $ZS.K: ;4 - - ki a hangalakkal történo ech󦦦¬
+¦¦¦¦¦¦¦¦¦¦¦¦¦¦+ - -
- $SP.K: ;5 +¦¦¦¦¦- -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦- -
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -
- # 16 0 0 250 50 1179 50 2400 50 50 - -
- # 16 0 16 1047 309 1428 125 2400 309 125 - -
- # 32 31 16 1047 309 1428 125 1761 125 125 - -
- # 16 31 16 1047 309 1428 125 1761 125 125 - -
+¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦+ -
- # 16 62 16 1047 309 1428 125 1761 125 125 - -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦- -
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -
- $K.SP: ;2 L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -
- # 16 31 16 1047 309 1428 125 1761 125 125 +¦¦-
- # 16 0 16 1047 309 1428 125 2400 309 125 -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
A magánhangzó-mássalhangzó átmenetek tartalmazzák, sokszor csak egyetlen példányban,
az adott mássalhangzóra jellemzo hanganyagot. Ha az érthetoség megkövetelte, könnyen
létre lehetett hozni új szakaszokat az adott diád számára. A példákban szereplo frame
értékeket, cimkéket egyszeru szövegszerkesztovel lehetett szerkeszteni, áttekinteni,
rendezni. Az 5.2. pontban leírt fejleszto rendszerek biztosították az automatikus
adatbázis módosítást.
A leírtakból kitunik, hogy a magyar nyelv jelöletlen hasonulásait a MEA-8000-es rendszerben
nem vettem figyelembe az adatbázis kialakításakor. Ez a hallás útján történo szövegszerkesztést
egyáltalán nem zavarta, sot elosegítette. Ezért a PCF-8200-as hang adatbázisánál,
ahol már tekintettel voltam a jelöletlen hasonulásokra, bevezettem egy speciális
üzemmódot, hogy visszatérhessünk a korábbi jelöletlen kiejtésre is.
A példákból az is látszik, hogy nem használtam legrövidebb hosszúságú, 8 msec idotartamú
frame-eket. Ennek az az oka, hogy a MEA-8000 szintetizátorban nem volt lehetoség
a sebesség állítására. Ez pedig a vakügyi segédeszközökben elengedhetetlen. Ezért
alkalmaztam, ugyancsak eloször Magyarországon, hogy a mesterséges beszéd sebességét
a frame hosszak felezésével gyorsítottam. A lassítás a frame-ek hosszának duplázásával,
vagy ha már erre nincs tovább mód, akkor maguknak a frame-eknek a duplázásával érheto
el.
A lassítás fogalmával rokon módon kezeltem a hosszítást. A magánhangzókat úgy alakítottam
ki, hogy a tiszta fázisukban szereplo utolsó két frame idejének duplázásával a hosszú
párjuk érzetét adják. A mássalhangzókat hosszításuk szempontjából két csoportra osztottam.
Az elso csoportba tartoztak az ún. zárfelpattanásos hangok (c, cs, p, t, ty, k),
míg a másik csoportba az összes többi (b, d, f, g, gy, h, j, l, m, n, ny, s, sz,
z, zs). Az (r) kivételt képezett, és jobb híján, a magánhangzók szabálya szerint
hosszabbodott.
A zárfelpattanásos mássalhangzók hosszítását a nulla amplitúdójú frame-ek lassításával
értem el. A többi mássalhangzót úgy hosszítottam, hogy négy hangzó frame-jüket lassítottam.
Látszik, hogy a lassítás és a hosszítás együttesen kezelodnek, ezzel is megrövidítve
a feldolgozás idoigényét.
Az elso változatú magyar hang adatbázist késobb Olaszy Gábor segítségével természetesebbé
tettük úgy, hogy néhány átmenetnek külön frame sorozatot alakítottunk ki. Ugyancsak
az o segítségével dolgoztunk ki MEA-8000-re német nyelvu adatbázist is. Ebben a mássalhangzók
hosszítása természetesen nem szerepelt.
Mind a magyar, mind pedig a német ének generálásához külön hang adatbázist kellett
készítenem a MEA-8000 számára. Ennek részletesebb tárgyalása az 5.4. pontban található.
A magyar hang adatbázis mérete 4 Kbájt(!) alatt maradt, a német e fölé nyúlt.
Az amplitúdók meghatározásánál külön figyelembe kellett venni azt a teljesen egyéni
megoldásomat, hogy a nagybetuket hangosabban szintetizálom. A MEA-8000-nél sajnos
ezért nagy árat kellett fizetni, mert így a digital analog konverter eros zajjal
muködik. Ez a PCF-8200-nál szerencsére kiküszöbölheto volt.
5.1.2. A PCF-8200 HANG ADATBÁZISA
A PCF-8200 típusú formáns szintetizátor elodjéhez képest egy további formánssal gazdagodott,
és mind az 5 szuro frekvencia és sáv paraméterei szabályozhatók. A Philips cég ez
újabb termékére már érdemesebb volt jó minoségu beszéd adatokat kifejleszteni. Ezért
az átlapolásos tárolási módszeremet továbbfejlesztettem. A MEA-8000-nél csak egy
8 frame-es szakasz tárolására volt lehetoség. Az újabban kialakított rendszeremben
két szakasz 8 ill. 7 frame hosszúságú szuro sorozat paramétert lehet egy-egy diád
számára lefoglalni.
Szakítottam a korábbi frame hosszúságokkal is. A PCF-8200-as rendszeremben szinte
kizárólag alap hosszúságú, azaz a legrövidebb frame-eket használom. Így egy hangátmenet
tárolására 15, apró részleteket is tartalmazó frame-et használok. Ez igen gazdag,
részletdús beszédet eredményez, mely még monotonon sem fárasztó, mivel szerintem
a szó tágabb értelmében nem is monoton! (ld. még 5.4.).
A rendszer továbbra is átlapolásos maradt, így a duplára nott pointer mátrix és a
hangzó anyag együttes hossza mégsem éri el a 20 Kbájtot. Az átlapolás technikáját
itt inkább teljes szakaszokra, és nem a szakaszokon belül alkalmaztam.
A hangmintákat saját hangomból készítettem. A szavakat ill. hangzókapcsolatokat erosen
artikulálva ejtettem. A szonogrammok kialakításánál olyan idoegységeket választottam,
hogy egy-egy hangátmenetben minél több apró formáns részletet tudjak tárolni. Ez
valamelyest a természetesség ellen hat, de a beszéd fárasztóságát nem befolyásolja
(ld. 2.2.).
A beszéd sebességét így csak a PCF-8200-as általános beszédsebességi paramétereivel
lehet szabályozni, de ez a gyakorlatban elegendonek bizonyult.
A hangátmenetek szeletelésénél a következo képpen jártam el: a mássalhangzó-magánhangzó
diádban tároltam a mássalhangzó nullától eltéro amplitúdójú részeit, a magánhangzóba
áthajló speciális átmenetekkel együtt, de még a magánhangzó tiszta fázisát is. Ha
erre nem volt elegendo a 15 legrövidebb hosszúságú frame, akkor összevontam néhány,
a lineárishoz közel változó frame-et hosszabb idotartamú frame-ekbe. A magánhangzók
tiszta fázisa mindig külön szakaszba tartozik.
Az alábbi példákban a PCF-8200 frame-jeiben a számértékek csak kódok és nem Hz értékek
vagy msec-ok.
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- FD AMPL PI F1 B1 F2 B2 F3 B3 F4 B4 F5 B5 -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
FD = frame duration; AMPL = amplitude; PI = pitch increment;
F1, F2, F3, F4, F5 = formáns frekvenciák; B1, B2, B3, B4, B5
= sávszélességek. PI = 16 = zaj.
-¦¦¦¦¦¦¦¦¦¦¦¦¬
- $K.A. ;7 +¦ A k-a diád elso szakasza, benne a k zárfel-
L¦¦¦¦¦¦¦¦¦¦¦¦- pattanása és a (k-a)-ra jellemzo rész. -
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ - -
- # 0 4 16 25 1 17 3 5 1 5 1 1 3 - - -
- # 0 7 16 23 1 19 2 4 1 4 3 1 3 +¦¦¦+¦¦¦¦¦¦¦¦¦¦¦¦-
- # 0 9 16 20 2 15 2 4 2 4 3 1 1 - -
- # 0 11 0 18 3 14 4 4 2 4 2 0 1 - -
- # 0 10 0 19 2 14 3 4 2 3 2 0 1 - -
- # 0 10 0 20 2 13 2 4 2 3 3 0 2 +¦¦¦-
- # 0 10 0 20 2 13 1 4 2 3 3 0 2 -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
-¦¦¦¦¦¦¦¦¦¦¦¦¬
- $SP.A: ;4 +¦ A szókezdo (a) 2. szakasza. Az elso szakasz
L¦¦¦¦¦¦¦¦¦¦¦¦- itt nem látható.
-¦¦¦¦¦¦¦¦¦¦¦¦¬
- $A.A. ;4 +¦ Az a-a átmenet csak egy szakaszból áll.
L¦¦¦¦¦¦¦¦¦¦¦¦- Amplitúdói kiegyenlítettek.
-¦¦¦¦¦¦¦¦¦¦¦¦¬
- $B.A: ;4 -
- $C.A: ;4 -
- $CS.A: ;4 -
- $D.A: ;4 -
- $F.A: ;4 +¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- $G.A: ;4 - -
- $GY.A: ;4 - -
- $H.A: ;4 - -
- $J.A: ;4 - -
+¦¦¦¦¦¦¦¦¦¦¦¦+ -
- $K.A: ;4 +¦¦ A k-a átmenet második szakasza. -
+¦¦¦¦¦¦¦¦¦¦¦¦+ -
- $L.A: ;4 - -
- $M.A: ;4 - -
- $N.A: ;4 - -
- $NY.A: ;4 - -
- $P.A: ;4 +¦¦ A mássalhangzó-a átmenetek második¦¦¦-
- $R.A: ;4 - szakasza mind összevonható. Ez az
- $S.A: ;4 - (a) hang tiszta fázisa. Az Fn Bn
- $SZ.A: ;4 - finom változásaiban látható a mikro-
- $T.A: ;4 - intonálás.
- $TY.A: ;4 -
- $V.A: ;4 -
- $Z.A: ;4 -
- $ZS.A: ;4 -
L¦¦¦¦¦¦¦¦¦¦¦¦-
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- # 0 11 0 21 3 13 3 5 3 4 3 1 1 -
- # 0 11 0 21 3 13 3 5 2 4 2 0 1 +¦¦ Az (a) tiszta
- # 0 11 0 22 3 12 3 5 3 4 3 1 1 - fázisa.
- # 0 11 0 22 3 12 3 5 3 4 3 1 1 -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
-¦¦¦¦¦¦¦¦¦¦¦¦¬
- $A.K. ;6 +¦¦ Az a-k diád elso szakasza. Tartalmazza az
L¦¦¦¦¦¦¦¦¦¦¦¦- (a) változásait a
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ (k)-ba haladva. Az
- # 0 9 0 19 3 13 5 5 2 4 2 1 1 - amplitúdó csökken
- # 0 6 0 15 2 13 4 6 1 3 1 1 1 - -
- # 0 4 0 15 2 12 3 6 1 3 1 1 2 - -
- # 0 1 0 17 3 12 3 5 1 3 2 1 1 +¦¦¦¦¦¦¦¦¦-
- # 0 1 0 18 3 11 2 5 1 4 2 1 1 -
- # 0 2 0 18 2 13 1 5 1 4 1 1 2 -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
-¦¦¦¦¦¦¦¦¦¦¦¦¬
- $SP.K. ;3 +¦¦ Itt csak a szókezdo (k) elso szakasza van.
+¦¦¦¦¦¦¦¦¦¦¦¦+
- $A.K: ;3 +¦¦¦ Az a-k diád második szakasza a (k) néma
+¦¦¦¦¦¦¦¦¦¦¦¦+ fázisával.
- $AA.K: ;3 -
- $E.K: ;3 -
- $EE.K: ;3 -
- $I.K: ;3 -
- $O.K: ;3 -
- $OE.K: ;3 +¦¦¦¦ A magánhangzó-k és
- $U.K: ;3 -
- $UE.K: ;3 -
- $B.K: ;3 - mássalhangzó-k átmenetek második
- $P.K: ;3 - szakaszai mind összevonhatók.
- $D.K: ;3 - -
- $T.K: ;3 - -
- $CS.K: ;3 - -
- $F.K: ;3 - -
- $H.K: ;3 - -
- $GY.K: ;3 - -
- $TY.K: ;3 - -
- $C.K: ;3 - -
- $J.K: ;3 - -
- $L.K: ;3 - -
- $M.K: ;3 +¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
- $N.K: ;3 -
- $NY.K: ;3 -
- $R.K: ;3 -
- $S.K: ;3 -
- $SZ.K: ;3 -
- $V.K: ;3 -
- $Z.K: ;3 - A (k) néma fázisának utolsó
- $ZS.K: ;3 - frame-je elokészíti a zárfel-
L¦¦¦¦¦¦¦¦¦¦¦¦- pattanást.
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -
- # 0 0 0 19 2 14 2 5 2 4 1 1 1 - -
- # 0 0 0 19 2 14 2 5 2 4 1 1 1 - -
- # 1 0 16 19 2 14 2 5 2 4 1 1 1 +¦¦¦¦¦¦¦¦¦¦-
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
A magánhangzó mássalhangzó átmenetekben elso szakaszban a magánhangzóból a mássalhangzóba
áthajló részt tettem, majd a mássalhangzó bevezeto (f, h, j, l, m, n, ny, s, sz,
v, z,zs) vagy néma fázisát (b, c, cs, d, g, gy, k, p, r, t, ty). E második szakaszt
itt is nagyon jól lehetett közösíteni. A dz hang problémáját, a néma j-t, (pj) és
a p-f átmeneteket stb. mind nagyon szépen meg lehetett oldani a jelöletlen hasonulásokkal
egyetemben. Azonban mindez nem segítette a hangok útján történo szövegszerkesztést.
Ennek a problémának a kiküszöbölésére bevezettem a részletezo üzemmódot, melynek
a hang adatbázis minoségi kialakítására nem volt negatív hatása (ld. 5.3.). A hangzók
hosszítását is a diád mátrix segítségével oldottam meg. Így az r hang is több perdülettel
hosszabbodik, és a magánhangzók és mássalhangzók hosszú változatai is egyéniek.
5.2. A HANG ADATBÁZISOK FEJLESZTO RENDSZEREI
A MEA-8000 adatbázisának elso fejleszto rendszere SDK-85 és PDP/11 gépeken futott.
Az SDK-85-nek csak braille klaviatúrája volt, és a formáns szintetizátor mellett
egy fix szókészletu rendszert (Digitalker) is tartalmazott. A két gép soros vonalon
kommunikált. A PDP/11 gépen egy C nyelvu program kezelte a forrás formában megadott
frame-eket és a hangátmenetek helyét jelzo cimkéket.
A szeleteket kézzel, szövegszerkesztovel kellett összeállítani. A C nyelvu fordítóprogram
egy menetben alakította ki a text-to-speech program adatbázisának pointeres struktúráját.
A kész adatbázist soros vonalon lehetett az SDK-85 alapú, kötetlen szótáras fejleszto
rendszerbe letölteni. Ehhez ki kellett fejlesztenem egy egyszeru, braille inputtal
rendelkezo, magyar szövegszerkeszto és soros vonali kezelo rendszert. Az elso hang
adatbázis kialakítását segítendo készítettem egy fejleszto rendszert C64 számítógépre
is (ld. F. melléklet).
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- -
- SDK-85 + Braille -
- klaviatúra - -¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- -¦¬ -¦¬ - - -
- -1- -4- Szöveg- - - TPA/1148 RSX -
- L¦- L¦- szerkeszto - - multi user OS -
- -¦¬ -¦¬ - - -
- -2- -5- - - -
- L¦- L¦- MEA-8000 - - -
- -¦¬ - - -
- -3- -¦¬ DIGITALKER - - -
- L¦- -6- - - -
- L¦- RS232C +¦¦+ Terminal port -
- - - -
- Erosíto Hangszóró - - C nyelvu frame fordító -
- - - program a MEA-8000 -
- - - adatbázisához -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦- L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
A MEA-8000 hang adatbázisának egyik fejleszto rendszere.
Késobb a BraiLab Plusz létrehozásával a fejleszto rendszer egy gépen, a CP/M operációs
rendszer alatt üzemelt. A C nyelvu fejleszto rendszer megfelelo rugalmassága tette
lehetové, hogy különbözo gép összeállításokban más és más operációs rendszerekkel
legyen használható a szeletelo fejleszto rendszerem.
A PCF-8200-as adatbázis fejleszto rendszer BraiLab Pluszon és IBM PC-n futott, újra
kétgépes rendszert alkotva. Az újabb adatbázis kialakítása nagyobb terjedelme miatt
nagyobb feladatokat rótt a fejleszto rendszerre. Ebben már a szeletelést külön rutinok
végezték a szonogrammokból kinyert formánsokból. Az egyes szeleteket szövegszerkesztovel
lehetett egy nagy forrásszöveggé összeszerkeszteni, amit az új típusú fordító program
konvertált kettos pointereket tartalmazó adatbázissá.
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- - - -
- BraiLab Plus - - IBM PC/AT -
- - - -
- CP/M - - MSDOS -
- - - -
- RS232C +¦¦¦¦+ RS232C -
- PCF-8200 - - PCF-8200 -
- - - -
- Erosíto Hangszóró - - Erosíto Hangfal -
- - - -
- Assembler Text-to-speech - - C nyelvu szeletelo és -
- program - - adatbázis letölto -
- - - program -
- Szövegszerkeszto - - -
- az adatbázis forrás - - Formáns -
- szerkesztésére. - - analizátor Mikrofon -
- - - -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦- - ADC DAC -
- Szövegszerkeszto -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
A PCF-8200 adatbázisának kétgépes fejleszto rendszere.
5.3. ASCII -> METABRAILLE -> DIÁD KONVERTÁLÓ PROGRAM
A kötetlen szótáras beszédeloállító rendszer a hang adatbázist felhasználó konverziós
programok összessége. Az én rendszerem programjainak újdonsága abban áll, hogy célzottan
egy menetben képes konvertálni mind a bejövo ascii, mind pedig a braille kódokat.
Az egy menetes muködést az a felhasználási mód követelte meg, hogy segédeszközben
a különféle billentyuk és billentyu kombinációk echózása közben megengedhetetlen
a lassú reakció. Az alapveto billentyu echók esetében ez az érték 10-20 msec-nál
nagyobb semmi esetre sem lehet.
A Metabraille kód bevezetése elott ki kell térjek a magyar és a német braille írás
rövid ismertetésére. A braille írás, bár alapvetoen minden nemzet a Luis Braille
által megalkotott 6 pontos rendszerbol indul ki, nem nemzetközi. Minden nyelvben
igyekeztek a braille írással a hangok és nem a betuk jelölésére. Nagyobb braille
irásos hagyományokkal rendelkezo nemzetek bevezettek rövidírási rendszereket is (pl.
angol, német), ahol gyakran hangcsoportokat is rövidítettek.
A magyar nyelvben, hasonlóan a némethez, már a rövidítetlen braille írás is betu
csoportokat jelez egy braille jellel, mivel ezek gyakran egy hangot jelölnek, így
helyes ezt az írást elso szintu rövidírásnak nevezni. A braille írás pontjainak elhelyezkedése
és számozása a következo:
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- 1 4 oo o. oo o. o. -
- 2 5 .. .. .o .. oo -
- 3 6 o. .. .o .. o. -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
A hat Braille írású pont elhelyezkedése.
A minta szöveg: "magyar". Még az is jellemzo, hogy a gy hang a d hang braille jelébol
a 6. pont hozzáadásával képzodik. Ebben is hangtani szabályokat követ (ld. d-j jelöletlen
hasonulása gy hangra).
Az alábbi táblázat tartalmazza a magyar és a német braille írásban használatos speciális
hangzó jelöléseket, amikor a betu csoportoknak egy braille jel felel meg.
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- o o . o o o o . o o -
- GY . o LY . o NY o . TY o o CS . . -
- . o . o . o . o . o -
L¦¦¦¦¦¦¦¦¦¬ -¦¦¦¦¦¦¦¦-
- o . . o -
- SZ . o ZS . o -
- . o o . -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
A magyar braille írás elso szintu hang rövidítései.
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ - o o o . . o o . . o - - EI
. . EU o . ÄU . . AU . . IE . . - - . o . o o . . o o o - L¦¦¦¦¦¦¦¦¬ -¦¦¦¦¦¦¦¦- -
o o o . . o - - CH . o SCH . o ST o o - - . o . o o o - L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
A német braille írás elso szintu rövidítései.
A text-to-speech programban a billentyuk megnevezéseit, és a számok kimondására szolgáló
szavakat és szó részleteket ilyen Metabraille-hang kódokban tároltam. (A számokat
a program 9 jegyig olvassa össze). Ennek nagy elonye származott a gyors feldolgozás
lehetoségében, mivel ez egy elso szintu kivétel szótárt képezett. Ha ascii kódokból
állítottam volna össze pl. a kilencszáz szót, akkor a kétjegyu mássalhangzók feldolgozásakor
abból kilencs-záz lehetne.
A BraiLab Basic gépben, mert kevés volt a rendelkezésre álló memória, ezt a Metabraille
kódú bevitelt csak kézzel lehetett megvalósítani. A BraiLab PC text-to-speech programjában
már van egy második szintu kivétel szótár kezelés is.
A magyar nyelvu, MEA-8000-re készített programjaim, mivel ezek 8 bites gépeken futnak,
egy menetben oldják meg az ascii Metabraille hangparaméter konverziót. Kivételt képez
a makrointonálási szerkezet utólagos kialakítása a beszéd framekre. Ezekben a rendszerekben
csak néhány nagyon egyszeru dallamot generálok intonálási egységenként.
A német nyelvu programban több menetet kellett beiktatni az ascii feldolgozásban
is, ezért a német nyelvu szövegszerkesztés 8 bites gépen észrevehetoen lassúbb lett.
Az egyik vak felhasználó meg is jegyezte: "mintha süketen kellene dolgoznom vele".
A magyar Metabraille hangkód konverziós fázisban külön típus kóddal jelöltem meg
az egyes hangcsoportokat (magánhangzó, zárfelpattanásos mássalhangzó, egyéb mássalhangzó),
hogy a hosszítást és lassítást könnyen el lehessen végezni. A PCF-8200-as rendszerben
erre már nem volt szükség. Mindkét rendszerben a használt pointer táblázat, mely
frame szakaszokra mutat, gyorsabb feldolgozást tesz lehetové.
A programokat I8080, Z80 és a BraiLab PC esetében I8086 assembler nyelven írtam.
A MEA-8000-re csak 8 bites program változatok készültek, míg a PCF-8200-ra mind 8,
mind pedig 16 bites program forrás kód is készült. Adatbázis nélkül egyelore, de
elkészítettem a német text-to-speech programot is a PCF-8200-ra.
5.4. MIKROINTONÁCIÓ, INTONÁCIÓ, ÉNEK
A beszéd természetességét és érthetoségét is javítják a mesterséges intonációk. Olaszy
Gábor azt az alaphang magasság változást nevezi mikrointonálásnak, mely a beszélo
akaratától függetlenül jelenik meg a hangjában monotonon ejtett szavak esetében.
A mikrointonáció lüktetést ad a mesterséges beszédben.
A MEA-8000-es rendszerben csak a német programba építettem kísérlet képpen mikrointonálást
alaphang magasság változtatással, a magyarba nem. A PCF-8200-as rendszerben másképpen
jártam el. A "mikrointonációs" szerkezetet a magyar hang adatbázisban nem az alaphang
változás biztosítja, hanem a formánsok frekvenciáinak és sávszélességeinek természetes
lüktetése.
A beszéd makrointonációs szerkezete a beszélo szándékát segíti kifejezni. Az elso
magyar text-to-speech rendszeremben eloszor valósítottam meg automatikus dallamgenerálást
a mondatjelek és bizonyos minimális szintaktikai vizsgálatok alapján. A Nyelvtudományi
Intézet akkori rendszere ehhez külön speciális jeleket alkalmazott. Megjegyzem, hogy
azóta ezen a területen Olaszy Gábor nagyon szép új eredményeket ért el.
Az automatikus dallam generálásnak a segédeszközbe épített rendszereimben sajátos
funkcióit valósítottam meg. A vak felhasználónak, mikor sorokat, vagy mondatokat
hallgat szövegszerkesztés közben, az intonálás gyors jelzést ad arra, hogy milyen
mondatjel van az adott mondatrész végén. Ezért arra törekedtem, hogy ez az intonációs
jelzés akkor is egyértelmu legyen, ha a felhasználó korán megszakította az intonálási
egység kimondását, mert már a következo sorra ugrott.
A MEA-8000-es rendszerben mindössze 4 alap intonálási típust valósítottam meg. A
kijelento mondathoz kettot, a kérdo mondathoz kettot, a felszólító mondathoz pedig
a kérdo szavas kérdomondat dallamát használtam. Az eldöntendo kérdo mondatok hossza
alapján csak két altípust különböztettem meg. A kérdoszavakat és a határozott néveloket
csak a mondat elején vizsgáltam egy nagyon egyszeru algoritmus szerint. Minden HO
HÁ MI ME KI karakter párossal kezdodo mondatot kiegészítendo kérdo mondatnak tekintettem.
Ezzel elég nagy százalékban jól muködo rendszert sikerült alkotni igen kis helyen.
Az elso magyar text-to-speech programom hossza hang adatbázis nélkül mindössze 4
Kbájt.
A PCF-8200-as rendszerben már különbséget tettem az egyes mondattípusok hossza között
is, a szótagszám alapján. Mindkét rendszerben szó vektorban tárolom a szókezdo frame-ek
helyét, de a szó intonálást még egyik rendszerben sem valósítottam meg. Ennek segédeszközökben
történo felhasználás esetén nincs nagy jelentosége.
Az automatikus ének generálásnak legfobb felhasználási területe a braille kottaírás
lehet. Interaktív munkában a hangmagassággal jelzett hangjegyírás természetes, gyors
munkát tehet lehetové. Ez az alkalmazás egyelore nem készült el. Maga az automatikus
ének generálás viszont igen. Ehhez a MEA-8000-es magyar és német hang adatbázisok
külön változatát kellett létrehoznom.
Egy egyszeru ének, kezdo alaphangmagasságok megadásával képezheto. Hajlításokhoz,
és pontosabb ritmus létrehozásához már alaphansikg inkrementumokkal kellene dolgozni.
A kezdeti alaphangmagasság változtatásával csak akkor lehet jól éneket eloállítani,
ha a text-to-speech program gyorsan lefut, mert különben a feldolgozási ido torzítja
a ritmust. A MEA-8000-es hang adatbázisokat (magyar és német) úgy módosítottam, hogy
minden szókezdo és szóvégi diád legutolsó frame-je is minimális hosszúságú legyen.
A másik alapveto módosítás, melyre szükség volt az ének generálásához a hang adatbázisban,
a magánhangzó-magánhangzó kapcsolatok azonos amplitúdóra hozása. Abból a célból,
hogy a magánhangzók egymástól jól elkülönüljenek, ezek közötti átmenetek nulla amplitúdójú
frame-eket tartalmaztak, az éneknél viszont, különösen az azonos magánhangzók egymáshoz
kapcsolódásában a diád mátrix pointereit kellett figyelembe venni, és az így nyert
frame-ekben az amplitúdókat ki kellett egyenlíteni.
A PCF-8200-as hang adatbázis már minden tekintetben alkalmas volt az ének létrehozására
is. A magánhangzón belüli "mikrointonációs" szerkezetem pedig a kitartott énekhangot
is gazdagítja.
A programok, melyek generálják az éneket a MEA-8000-re assembler nyelven, a PCF-8200-ra
C nyelven íródtak. A C nyelvu program egy fordító, mely a forrás szövegbol egy escape
szekvenciákat tartalmazó fájlt készít. Ez a fájl a szokásos módon a COM4 virtuális
periférián keresztül megszólaltatható (ld. 6.3.2.). A forrásnyelvi szövegre álljon
itt egy minta:
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- -
- re,éééérik,La,a,re,szoo,mi,loo -
- do,haaajlik,re,a,mi veee,re,szoo -
- do,bo,Ti,dor,La,aaa lee,re,ve,La,leeee -
- So,kéééét sze,Re,gény,So,leeee,La,géény -
- Fa,száánta,So,ni,La,mee,So,nnee -
- Fa,de,Mi,nin,Re,cseeen ke,So,nye,Re,ree -
- -
- re,vaaaaan ve,La,res,re,haaaagy,mi,maaaa -
- do,aaaaaa ta,re,risz,mi,nyáá,re,baaa -
- do,ke,Ti,se,La,ruuu maa,re,gá,La,baaa -
- So,szooool ga,Re,le,So,géény,La,neek -
- Fa,heeej de,So,sze,La,géény,So,neek -
- Fa,de,Mi,ke,Re,véés va,So,cso,Re,raa -
- -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
Az automatikus ének generálás input-ja.
Kodály Zoltán relatív szolmizálási jelölését követve, a szövegtol vesszokkel elválasztva
a hangmagasságot jelölo nevek láthatók. Ha a hang magassága változik, újabb vesszovel
újabb szolmizációs név következik. A nagybetuvel kezdett nevek az egy oktávval mélyebb
hangokat jelölik. A ritmust a magánhangzók megfelelo számával lehet szabályozni.
A szüneteket a szóközök száma szabályozza. A BraiLab PC rendszerben az énekhez ki
kell választani a szóközöket nem tömöríto üzemmódot.
Az újszeru "mikrointonálás" és az énekhez létrehozott speciális hang adatbázisok
is bizonyítják az átlapolásos tárolási technikám nagyfokú rugalmasságát. Frame kódolással
ennyi féle adatbázis és ilyen finom részleteket is tartalmazó hang anyag létrehozása
nem lett volna lehetséges.
6. fejezet. A BRAILAB SEGÉDESZKÖZÖK
6.1. A BRAILAB BASIC
6.1.1. A BRAILAB BASIC SEGÉDESZKÖZ FELÉPÍTÉSE
A BraiLab Basic segédeszköz alapja a Lukács József és Endre készítette HomeLab gép.
Ez Z80 mikroprocesszor alapú, moduláris felépítésu eszköz. A BraiLab használathoz
64 Kbájt dinamikus RAM memóriát tartalmazott és 5 darab 4 Kbájt méretu EPROM-ot.
A HomeLab gép elektronikája egy nyomtatott kártyára épült, melyet a billentyu kártya
egészített ki. A BraiLab változathoz a gumi érintkezos billentyuket mechanikusakra
kellett lecserélni. Néhány speciális billentyut tapintással érzékelhetové tettem.
A video memóriát és a karakter generátort a Lukács testvérek külön 2 Kbájtos RAM-ban
ill. ROM-ban valósították meg. Az ernyo 25 sor és 32 vagy 64 karakter széles volt.
A BraiLab változat csak ez utóbbit használta. A video kimenet fontos segítséget jelentett
a gép oktatásában. A Z80PIO áramkör a centronics interfész céljait szolgálta. Az
egyetlen háttértár lehetoség az audio magnós kimenet volt.
A HomeLab gép speciális memory management megoldása tette igazán lehetové a hardver
és a szoftver segédeszközzé alakítását. A video memória és a mátrix szeruen kialakított
billentyuzetet memória referenciás utasításokkal lehetett elérni. Különbözo ROM és
RAM területeket lehetett ki és belapozni speciális input/output címekre kiadott utasításokkal.
A MEA-8000 formáns szintetizátor kiegészíto kártyára került egy használaton kívüli
EPROM tokba helyezve. A szuro és erosíto áramkörök után a hang kijelzés közösítve
lett a HomeLab programozható hangkimenetével.
Az egész gép fröccsöntött muanyag dobozban nyert elhelyezést. A gép kivezetései:
külso Z80 busz csatlakozó, Centronics kivezetés, magnó és tápfeszültség ki/bemenetek.
A dobozban volt elhelyezve a hangszóró, és a hangszórót leválasztó fejhallgató kimenet
is. Ez utóbbinak a csoportos oktatásban volt nagy szerepe.
-¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- 20 Kbájt - - 64 Kbájt - - Z80 -
- - - - - -
- ROM - - RAM - - CPU -
L¦¦¦¦¦¦T¦¦¦¦¦¦- L¦¦¦¦¦¦T¦¦¦¦¦¦¦- L¦¦¦¦¦¦T¦¦¦¦¦¦¦-
- - -
======?====¤=========?=======¤======?============¤=?========
- - - -
-¦¦¦¦¦+¦¦¦¦¦¦¬ -¦¦¦¦¦+¦¦¦¦¦¦¬ -¦¦¦¦¦+¦¦¦¦¦¦¬ -¦¦¦¦¦+¦¦¦¦¦¦¬
- MEA-8000 - - - - Centronics - -Audio magno -
- szinteti- - -Billentyuzet- - interfész - - interfész -
- zátor - - - - - - -
L¦¦¦¦¦¦¦¦¦¦¦¦- L¦¦¦¦¦¦¦¦¦¦¦¦- L¦¦¦¦¦¦¦¦¦¦¦¦- L¦¦¦¦¦¦¦¦¦¦¦¦-
A BraiLab Basic felépítése.
6.1.2. A TEXT-TO-SPEECH RENDSZER BEÉPÍTÉSE A BRAILAB BASIC-BE
A HomeLab gép szoftvere Basic interpreterbol, interaktív Assembler-monitorból és
az input/output rendszerbol állt. A billentyuzet megnyomását különbözo hangmagasságok
kísérték. Az ernyo input és output berendezés is volt egyszerre. Ahhoz, hogy a közel
8 Kbájtos text-to-speech rendszert be lehessen integrálni a számítógépbe, az egyetlen
4 Kbájtos bovíto EPROM hely kevés volt, ezért a 4 Kbájtos duplapontos Basic aritmetikai
lehetoséget ki kellett venni a gépbol.
Az ernyo és a billentyu kezelést két ponton kellett módosítanom. Az egyik pont az
ernyore való kiírás, melyen keresztül az input/output rendszer segítségével a Basic
interpreter normál és hibaüzeneteket írt ki. Ha a felhasználó közvetlen címezte meg
az ernyot, akkor ezek az üzenetek elkerülték a meghangosítást. Az ernyore való íráskor
a képváltáshoz történo szinkronizációt a program biztosította.
A másik módosítási pont egy olyan összetett rutinban volt, mely a billentyu scan-elést,
screen editor szeru ernyo input/output kezelést és a kurzor villogtatást együttesen
kezelte. Ha nem kontroll jellegu karaktereket gépelt a felhasználó, akkor ezeket
a hangalak alapján, a text-to-speech program meghívásával meghangosítottam. A hangalak
a megfelelo hang szókezdo és szóvégi diádjából alakult ki, vagy írásjelek és számjegyek
esetén azok megnevezésébol a text-to-speech belso Metabraille kivétel szótárából.
A kontroll jellegu billentyuk megnyomásakor eloszor az ernyore echóztam a megfelelo
funkciót, pl. jobbra, balra, le fel, ernyotörlés, és utána az ernyorol echóztam a
kurzor pozícióját. Nagyon fontos itt megjegyezni, hogy nem a megfelelo funkciót mondattam
ki (jobbra, balra stb.), mivel az nem segíti a hallás útján történo tájékozódást
az ernyo síkján.
A törlo funkció megvalósításakor is az éppen a törölt karakter helyére belépo karaktert
szólaltattam meg, és nem magáról a törlési funkcióról adtam tájékoztatást. Megneveztem
az üres karaktert is, melynek funkciója nagyon eltért a szóközétol. Az ernyorol a
sor beolvasása (két üres karakter közé eso rész), video memóriából történo kiolvasással
valósult meg. Ekkor a teljes sort összeolvasva, intonálási egységekre bontva kimondattam
a text-to-speech rendszerrel. Ez egyben egy végso ellenorzést is lehetové tett a
Basic sorok begépelésekor. A kimondott sor azt demonstrálta, hogy a Basic interpreter
az ernyon lévo sort a program sorai közé felvette.
Az ernyore kiküldött karaktereket is intonálási egységekre bontottam és azokat is,
beleértve a számokat is, összeolvasva mondattam ki a kötetlen szótáras beszéd eloállító
rendszeremmel. A HomeLab Basic jelzéseit és hibaüzeneteit a jobb hangzás céljából
kijavítottam, egységes mondatjelekkel láttam el. Így sikerült természetesebbé tennem
a beszéd útján történo párbeszédes programozást.
A mesterséges beszéd paraméterei Basic-bol a peek és poke utasításokkal érhetok el.
Ezek segítségével programból egyszeruen változtatható a hangmagasság és a beszédsebesség.
A programozható digitális fütty és az írásjelekkel is könnyen vezérelheto mesterséges
beszéd kiváló lehetoségeket teremtett az oktató és játékprogramok létrehozói számára.
A HomeLab gép alapvetoen megszakítás nélkül üzemelt, ezért a sorbevevo rutinban,
valamint a text-to-speech programban folyamatosan figyelni kellett az újabb billentyu
lenyomását. Ha ez bekövetkezett, akkor a formáns szintetizátort le kellett állítani,
az újabb billentyuhöz a text-to-speech programot újra le kellett futtatni, és a megszakító
billentyu megnevezésével jelezni, hogy milyen billentyu lett megnyomva. A programmegszakítás
hiánya miatt itt olyan kevés ido maradt a real-time text-to-speech futása mellett,
hogy a gyors billentyuzés követése közben nem maradt ido a beszéd ideje alatti kurzor
villogtatására és a beszédszintetizátor korrekt leállítására. Ez utóbbi néha hibás
utózengésekhez vezetett.
Az ernyon való tájékozódást RAM-ban futó kiegészíto program (BraiLab overlay) segítette.
Ezt magnóról lehetett beolvasni Basic területen kívüli helyre. A programmal off-line
ernyoolvasó funkciókat valósítottam meg (hangalak helyett névvel történo betuzés,
kurzor helyének kimondása). A BraiLab vakon történo használatához oktatási segédletet
írtam, mely a mellékletben található.
A fent leírtak szerint úgy sikerült a HomeLab-ot módosítanom, hogy annak minden funkcióját
vakon lehetett használni, a korábban írt minden program gyakorlatilag módosítás nélkül
futtatható volt. Kidolgoztam egy olyan párbeszédes Basic programozási technikát,
melynek segítségével a programozásban gyakorlatlan vak felhasználók is szinte azonnal
képesek voltak a BraiLabot használni. Késobb már maguk a felhasználók "vakosították"
a korábbi HomeLab-os játékprogramokat, vagy írtak saját tervezésueket, hogy számítástechnikában
kezdo sorstársaikkal megismertethessék a segédeszköz lehetoségeit.
A lavinaszeru sikert az alapozta meg, hogy a BraiLab Basic egy speciális, bolondbiztos
cél segédeszköz. Annak használatához nem volt szükség külön parancsokat megtanulni,
mindössze a személyi számítógép funkcióit kellett megismerni. A mesterséges beszéd
mindig logikus, gyors visszajelzést biztosított a látássérült felhasználónak.
6.1.3. AZ ELSO MAGYAR OLVASÓGÉP BELSO FELÉPÍTÉSE
A BraiLab Basic-nek készítettem egy sorozatban nem gyártott változatát, mely a MEA-8000-en
kívül soros vonali interfésszel is rendelkezett. A HomeLab input/output rendszerét
módosítottam úgy, hogy beépítettem egy hardver flag-et annak jelzésére, hogy melyik
memory management lapon fut éppen a program. Ezzel sikerült hardver interruptos programot
is írnom.
A Basic interpreter helyett ROM-ba készítettem el a soros vonalat interruptosan kezelo
terminál programot. A soros vonalat I8251-el, a baud rate generátort I8253-al valósítottam
meg.
A soros vonalról érkezo karaktereket silóban gyujtöttem interrup rutinnal, mely a
termelo folyamatot valósította meg. Ha a karaktereket tároló buffer mérete egy adott
érték alá csökkent, akkor XOFF karaktert küldtem ki a terminálon. Ha a bufferben
hiszterézis függvény alapján kello bájt szabadult fel, akkor XON jelzést küldtem
ki a soros vonalon.
A fogyasztó folyamatot a mesterséges beszéd jelentette. A bufferbol a karaktereket
intonálási szakaszokra osztottam, és kimondattam a BraiLab Basic text-to-speech rendszerével.
A fogyasztó folyamatot a termelo folyamat interruptja a karakter beérkezésekor megszakította.
Ezt a beszélo terminál rendszert kapcsoltuk össze a Számítástechnikai Kutató Intézet
által kifejlesztett Recognita nevu optikai karakterfelismero rendszerével. A felismero
program Proper 16 számítógépen futott, és a szabványos RS232C interfészén küldte
ki a felismert magyar 8 bites ascii karaktereket az elso magyar beszélo személyi
számítógépnek, a BraiLab Basic-nek.
Ezt az elso magyar olvasógépet 1986-ban állítottuk ki a "Magyarok szerepe a világ
természettudományos és muszaki haladásában" címu tudományos találkozón, mint meghívott
kiállítók.
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- BraiLab Basic -
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ - -
- Proper/16 - - Real-time -
- - RS232C - text-to-speech -
- Recognita +¦¦¦¦¦¦¦¦¦¦+ I8251 -
- karakterfelismero - - I8253 -
- program - - -
L¦¦¦¦¦¦¦¦¦T¦¦¦¦¦¦¦¦¦- - Terminál emulátor -
- - -
-¦¦¦¦¦¦¦¦+¦¦¦¦¦¦¦¦¬ - MEA-8000 -
- A4 - L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
- Lapolvasó -
- -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
Az elso magyar olvasógép konfigurációja.
6.2. A BRAILAB PLUS
6.2.1. A BRAILAB PLUS SEGÉDESZKÖZ FELÉPÍTÉSE
A BraiLab Plus számítógép hardver és CP/M-es alapszoftverét is Lukács József és Endre
tervezték, de már figyelembe vették mindazokat a követelményeket, melyeket kidolgoztam
ahhoz, hogy a személyi számítógép látássérültek segédeszköze lehessen.
Eloször a BraiLab Basic gép buszkivezetéséhez készült el floppy diszk interfész.
A CP/M-es operációs rendszer elso változatába is beépítettük a MEA-8000-es text-to-speech
rendszeremet, de ez a változat nem került sorozat gyártásba. A BraiLab Plus gépet
újra terveztük egy nyomtatott áramkörre.
A segédeszköz két modulból állt. Hasonlóan a BraiLab Basic géphez, fröccsöntött muanyag
dobozban található az elektronikát tartalmazó nyomtatott áramkör, és egy külön kártyán
a kiegészített mátrix-os mechanikus kapcsolós billentyuzet. Külön alumínium dobozban
nyert elhelyezést a BraiLab Plus hálózati tápegysége, együtt a hajlékony lemezes
meghajtóval. Display nélkül a rendszer 5 Kg alatti, hordozható, bár nem hálózat független
kivitelu.
A kétoldalú nyomtatott áramköri lemezen a Z80 mikroprocesszoron kívül 256 Kbájt dinamikus
RAM, négy toknyi 16 Kbájtos EPROM, 2 darab Z80PIO, 4 Kbájt statikus RAM, karakter
generátor EPROM, WD2793 floppy diszk kontroller, I8251 PUSART és a MEA-8000 beszédszintetizátor
található.
A 256 Kbájt RAM-ból 180 Kbájt fix RAM diszkként kezelodik a CP/M operációs rendszer
alatt. A memory management támogatja a dinamikus RAM fix diszk használatát, biztosítja
az operációs rendszer megfelelo címtartományát, és lapoz közöttük és az EPROM-ok
között (ebbol végül csak egyet használt ki a BraiLab Plus). A két darab Z80PIO végzi
el a centronics interfészelést, a rendszer órajel interrupt kezelését és az I8251-el
és HD-4702-vel megvalósított soros vonali interfész baud rate programozását.
A megnövelt méretu 4 Kbájtos memória 25 ször 80 karakteres ernyot tett lehetové.
A billentyuzetet kiegészítettük a BraiLab Basic-hez képest további 5 billentyuvel.
Négyet kereszt alakban külön tapinthatóan helyeztem el, evvel is elosegítve az ernyon
való tájékozódás biztonságát. Az optifikált ernyo síkjának megfeleloen pozicionált
nyilak megnyomásában a vak felhasználó a legritkábban téved. (Ezért sem kell a nyilak
neveit echózni).
Az ötödik billentyu, melyet fontosnak tartottam bevezetni, az Escape volt. Ezt a
klaviatúra jobb szélén helyeztem el, mert így minden hibás programkezelés után az
Escape gomb lenyomásával egyértelmuen vissza lehetett lépni a hibás tevékenységbol.
Tapintáshoz kiemelni mindössze 3 billentyut kellett.
A MEA-8000 formáns szintetizátor hangkimenete a BraiLab Plus-ban is közös hangszóróba
csatlakozik a programozható hangmagasság (fütty) kimenettel. A nyomtatott áramkör
gépi tervezésekor igyekeztem elkülöníteni az analóg hangrészeket a gép digitális
zajától.
A szabványos soros, párhuzamos, valamint a floppy és tápfeszültség kivezetések mellett
a BraiLab Plus-nak is van fekete-fehér video display kimenete és fejhallgató csatlakozója.
A gép két moduljának összekapcsolásakor csak egy kombinált hálózati-floppy csatlakozót
kell a felhasználónak összeilleszteni. A kicsatlakozások bolondbiztosak, egymással
össze nem keverhetok.
-¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- 128 Kbájt - - 256 Kbájt - - Z80 -
- - - - - -
- ROM - - RAM - - CPU -
L¦¦¦¦¦¦T¦¦¦¦¦¦- L¦¦¦¦¦¦T¦¦¦¦¦¦¦- L¦¦¦¦¦¦T¦¦¦¦¦¦¦-
- - -
======?====¤=========?=======¤======?========?===¤==?=======
- - - - -
-¦¦¦¦¦+¦¦¦¦¦¦¬ -¦¦¦¦¦+¦¦¦¦¦¦¬ -¦¦¦¦¦+¦¦¦¦¦¦¬ --¦¦¦¦¦+¦¦¦¦¦¦¬
- MEA-8000 - - - - Centronics - --792 Kbájt -
- szinteti- - -Billentyuzet- - interfész - --(formattált)-
- zátor - - - - - -- floppy -
L¦¦¦¦¦¦¦¦¦¦¦¦- L¦¦¦¦¦¦¦¦¦¦¦¦- L¦¦¦¦¦¦¦¦¦¦¦¦- -L¦¦¦¦¦¦¦¦¦¦¦¦-
-¦¦¦¦¦¦+¦¦¦¦¦¦¬
- RS232C -
L¦¦¦¦¦¦¦¦¦¦¦¦¦-
A BraiLab Plus felépítése.
6.2.2. A TEXT-TO-SPEECH RENDSZER BEÉPÍTÉSE A BRAILAB PLUS-BA
A BraiLab Plus CP/M rendszere ROM-ból fut. Ezzel Lukács Endre elérte, hogy az operációs
rendszer alatt futó programok megszakíthatók, és bizonyos funkciók (pl. DIR, TYPE
stb.) végrehajthatók a megszakítás ideje alatt. Az ernyon egy ablak nyílik, melyrol
a vak felhasználó szóban figyelmeztetést kap. Az operációs rendszer promt-ja az ablakban
más intonálási karaktert tartalmaz, így ez is figyelmezteto jelzés a gyengénlátó
felhasználónak.
Az "ablakban" adhatók ki az egyes üzemmód váltások is, melyek menu szeruen vannak
felsorolva. A látássérült felhasználónak csak a fel és le nyilakkal kell kiválasztani
a megfelelo üzemmód váltó parancsot, mert a parancsok echója egyértelmu tájékoztatást
ad számára. A kocsi vissza billentyu szolgál a váltásra, amikor még egyszer hangos
visszajelzést kap a kért parancsról.
A BraiLab Plus beszélo rendszere WordStar elvu. Ez azt jelenti, hogy a screen editoros
CP/M sorbevevo program minden alapveto funkciója megegyezik a WordStar szövegszerkeszto
funkcióival. A karakterenkénti, szavankénti léptetést a nyilak és a váltós párjuk
aktivizálja. Az F1 funkció billentyu a balra és a jobbra nyíllal együtt a sor széleire
vezérli a kurzort. Mindezek a funkciók azonosak nemcsak a WordStar-ban és az operációs
rendszerben on-line-ban, de az off-line muködésben is.
Az off-line bevezetésére, hasonlóan a BraiLab Basic overlay programjához, azért volt
szükség, hogy betuzve ismételve az ernyorol minden leolvasható legyen abszolút érthetoségi
biztonsággal. Az off-line másik funkciója abban áll, hogy a CP/M alatt futó nem "vakosított"
programokat is lehessen vakon használni. A BraiLab Plus rendszerben bevezettem fecseg
és nem fecseg üzemmódokat. A vakok segédeszköze céljára átírt programok speciális
karakter szekvenciákkal (%` ill. %@) be- ill. kikapcsolhatják a beszédet, mely a
standard output-on keresztül az ernyore kerül.
Ezzel a megoldással a programok nagy része könnyen volt módosítható úgy, hogy a megfelelo
stringek átírásával a legfontosabb üzenetek hangossá váltak. A nem fecseg üzemmódban
csak ezek az üzenetek hallatszanak. A fecseg üzemmód az ismeretlen, nem "vakos" programok
futtatására szolgál.
A WordStar egy adott változatát úgy módosítottam debugot és batch programot használva,
hogy a batch program a futtatható WordStar üzeneteit átírta, így az eredeti szoftver
használhatóvá vált vakon. DbaseII felhasználói programot is írtam, többfunkciós beszélo
telefonkönyv céljára. Ebben is a beszéd ki- és bekapcsoló szekvenciáit kellett alkalmaznom.
A Kermit szabad szoftvert forrásnyelven írtam át. Magyarul és németül (és angolul
is) vezérelheto parancsokat és help rendszert építettem bele. A Kermit-re épülo kommunikációs
rendszer több vak felhasználónak jelentett segédeszköz lehetoséget IBM PC-n folytatott
munkájukban is addig, míg a BraiLab PC el nem készült.
A beszéd beillesztése a rendszerbe nem volt interruptos, de mivel az egyéb funkciókat
50 Hz-es óra interrupt vezérli, az egyes billentyuk meghangosítására már elegendo
ido állt rendelkezésre. Ezért sikerült a billentyuk okozta beszédleállítást úgy megoldani,
hogy nulla amplitúdójú frame-eket is volt ido kiküldeni a MEA-8000-re, ami így utózengés
nélkül áll le minden esetben.
A BraiLab Plus-ba többlépcsos némítási rendszert terveztem. Ez azt jelenti, hogy
az egyes billentyuk nemcsak egy intonálási egységet némítanak, ha beszéd közben lenyomják
oket, hanem pl. a sorvég jel operációs rendszer szinten némítja a teljes parancs
output-ját. Ugyancsak több intonálási egység némítható a váltó billentyukkel. Ezek
mindaddig hatásosak, míg nyomva tartva.
A kontroll jellegu karakterek echózását (jobbra, balra, szó jobbra, szó balra, lapozás
elore hátra stb.) külön szoftver idozíto számlálók vezérlik, hogy a szövegszerkeszto
futási idejét ki lehessen várni. Az ernyorol már csak a megfelelo karakter, szó vagy
sor olvasódik fel a kontroll karakter lenyomása után, a megfelelo idopillanatban.
Külön ki kell emelnem a Del karakter echózását. Ez kitörli visszafele haladva a szó
utolsó karakterét, és úgy jelzi hangosan, hogy a szót kimondja addig, ameddig az
éppen látható. A szavak törlésekor a törölt szó helyébe belépo szó hallatszik. Sorok
törlésének echója a szavak törlésének echójával rokon.
A BraiLab Plus-ban bevezettem a szóköz echóját. A BraiLab Basic-ben ez csak beszéd
szünetként jelentkezett. Ott nem okozott nagyon sok gondot, hogy a szóköz külön nem
hallatszott, mert a Basic nyelvben a szóközök száma nem számít. Szövegszerkesztésnél
azonban szükség volt a szóközök pontos leszámolására, amihez a beszédszintetizátort
hívtam segítségül. A szóköz echójára a következo frame-et szólaltatom meg:
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
-FD=8 AMPL=11 PI=0 F1=150 F2=440 F3=1179 B1=B2=B3=B4=726-
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
A szóköz hangja a MEA-8000 szintetizátoron.
Az autorepeat funkciót a BraiLab Plus-ban, hasonlóan a BraiLab Basic-hez, úgy oldottam
meg, hogy annak ismétlési ideje nem fix, mint általában, hanem a kimondott hangalaktól
függ. Addig tart, míg az adott billentyu echója hangzik. A kezdeti ido persze néma,
és hosszabb, nehogy véletlenül több karaktert gépeljen be a vak felhasználó.
Egy másik billentyuzést elosegíto funkció az egyes váltók zárolási lehetosége. A
bal és jobb nagybetu váltók külön zárólhatók a következo karakter leütéséig. Ugyan
így használhatók kívánságra a kontroll és az F1 vezérlo billentyuk. Ezt nemcsak azok
a felhasználók veszik igénybe, akik többszörös fogyatékosságuk miatt csak egy kézzel
tudnak gépelni, de az ép kezu látássérültek szinte mind bekapcsolva használják az
F1 váltót (van olyan, aki a kontrollt is), nagymértékben biztonságossá téve ezzel
a felhasználói programok vezérlését.
A BraiLab Plus operációs rendszerében az F1 billentyu kombinációkhoz billentyu sorozatok
rendelhetok CP/M szinten. Ezek könnyen elohívhatók az egyes felhasználói programokban
úgy, hogy echójuk szintetizált beszéddel egyértelmu.
A szabványos soros port a BraiLab Plus beépített lehetosége. Kezelése interruptos,
nagyon hasonló, silós megoldású, mint a BraiLab Basic minta példányának terminál
emulátorában. A különbség abban áll, hogy a szoftver handshake mellett programozható
a soros interfész muködése hardver handshake-re is, mind adás, mind pedig vételi
oldalon. A beszélo terminál és file átviteli program ezeket a lehetoségeket ki is
használja.
6.2.3. A BRAILAB PLUS BRAILLE PUBLISHING RENDSZERE
A BraiLab Plus billentyuzete használható braille üzemmódban is. Ez azt jelenti, hogy
az eddig lenyomásra megszólaló billentyuk felengedésre szólalnak meg a megfelelo
magyar braille pont kombinációra. A braille-1 üzemmódban a következo billentyu hozzárendelések
élnek:
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- -
- F - 1 4 - J -
- -
- D - 2 5 - K -
- -
- S - 3 6 - L -
- -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
A BraiLab Plus Braille Billentyuinek elhelyezkedése.
Braille-2, azaz egykezes változatban ezek a billentyuk közelebb kerülnek egymáshoz.
A braille pont kombináció mindaddig nem végleges, míg legalább egy, az adott billentyük
közül le van nyomva. A szóköz billentyu azon kívül, hogy megorizte eredeti funkcióját,
a többi billentyuvel kombinálva kontroll funkciót lát el. Az É billentyu tölti be
braille-1 módban az F1 szerepét.
Braille billentyuzés esetén természetesen lehet bevinni a gépbe CS, LY, GY stb. betuket.
Ezek ábrázolására szolgál a Metabraille kódolás. Az a szó, hogy magyar, metabraille-ben
így néz ki: maGar. Ennek a kódolásnak egyik nagy elonye mutatkozik meg abban, hogy
egy braille cellának egy pozíció felel itt is meg. Az alábbi mondat látó és síkírásban
példázza a metabraille kódolás lényegét:
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- -
- Magyar Vakok és Gyengénlátók Országos Szövetsége 1992. -
- -
- maGar vakok és Gengénlátók orSágos Sövetsége D1992. -
- -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦-
Metabraille és síkírású kódolás a BraiLab Plus-ban.
Mind gépeléskor, mind pedig nagyobb egységek összeolvasása esetén a BraiLab Plus-ban
braille üzemmódban helyes és teljes a beszéddel történo visszajelzés. A D metabraille
kód a számjel jelzésére szolgál (hasonló a számjel használata a braille-ben mint
az 5 bites telex kódban).
A Braille szerkeszto rendszerhez fordító programokat készítettem a magyar teljes
írás, a 44-es és a legújabban kialakuló 77-es rövidírás konvertálására. Készítettem
fordító programot német teljes és angol rövidírási rendszerre is. A fordító programok
ascii-ból konvertálnak metabraille-re.
Metabraille-ben azután könnyen használható a beszélo WordStar szövegszerkeszto program
a késobbi braille szövegek formázására, szerkesztésére. Négy féle braille nyomtatóra
készítettem metabraille kódból braille domborítást végzo programokat. A nyomdai eljáráshoz
fém klisé lemezeket használnak a Magyar Vakok és Gyengénlátók Országos Szövetségében.
Ennek a fémnyomó gépnek a vezérlését is az én programommal használják.
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ - -
- -¦¬-¦¬-¦¬ -¦¬-¦¬-¦¬ - - BraiLab Plus -
- -3--2--1- -4--5--6- - - -
- L¦-L¦-L¦- L¦-L¦-L¦- +¦¦¦+ Metabraille kódolás -
- -¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ - - -
- L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦- - - Ascii és Braille -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦- - szövegszerkesztés -
- -
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ - Magyar, német, angol -
- - - rövidírás -
- Magyar QWERTZ +¦¦¦+ fordító -
- billentyuzet - - -
- - - Braille sornyomtató -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦- - és nyomdagép -
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -¦+RS232C vezérlés -
- Karakterfelis- - - L¦¦¦¦¦¦¦¦T¦¦¦¦¦¦¦¦¦¦¦¦¦¦T¦¦¦¦¦-
- merés +¦¦- - -
- - -¦¦¦¦¦+¦¦¦¦¦¦¬ -¦¦¦¦¦+¦¦¦¦¦¬
- Adatbázisok - - Braille - - Síkírású -
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦- - nyomtató - - nyomtató -
L¦¦¦¦¦¦¦¦¦¦¦¦- L¦¦¦¦¦¦¦¦¦¦¦-
A BraiLab Plus Braille Publishing rendszere.
A nyomdai munka, így a következo lépésekbol áll: az anyagot látó vagy braille írásban
rögzítik (esetleg optikai karakter felismerovel beolvassák, majd a hibákat kijavítják),
metabraille-be konvertálják. Ha kell rövidírási fordítóval automatikus nyelvi rövidítéseket
végeznek megadott szabályok és kivételek alapján. A szerkesztéseket metabraille kódban
végzik, majd braille nyomtatón "kefelenyomatot" készítenek. Az újabb szövegszerkesztések
után elkészítik a fémlapokat a préseléshez.
Braille nyomtatási rendszerem nagy elonye, hogy annak minden lépése végezheto akár
vak, akár látó által. Mind a kettore van is gyakorlati példa (a szövetségben vak
a nyomdász, az általános iskolában látó tanár is készíti a braille segéd anyagokat).
Az anyagokat csak egyszer kell a BraiLab-on rögzíteni, utána eloállítható belole
a látó és a braille anyag is. A "Braille Laboratóriumban" így találkozik a két kódolási
rendszer Metabraille formában.
6.3. A BRAILAB PC
6.3.1. A BRAILAB PC SEGÉDESZKÖZ FELÉPÍTÉSE
A BraiLab PC tekintheto a legkevésbé cél segédeszköznek. A hardver mindössze egy
jó minoségu hangszóróba épített PCF-8200 típusú beszédszintetizátor áramkörbol áll
végerosítovel, szurovel kiegészítve. A szintetizátor áramkör az I2C interfészén keresztül
csatlakozik az IBM PC centronics portjára úgy, hogy annak csak néhány adatvezetékét
használja. A PC feloli csatlakozó átmeno érintkezos, így csatlakoztatható ugyan erre
a portra egy másik eszköz is. Erre példa egy teletext olvasó elektronika, melynek
segítségével vakok is hozzáférhetnek a képújság információihoz. Némi módosítással
az átmeno csatlakozóra nyomtató is dugható.
A BraiLab PC beszélo adapter fogyasztása olyan csekély, hogy a hangszóróba akkumulátor
is építheto, ekkor a hálózati adapter töltoként is üzemel. A hordozható beszélo adapterem
bármilyen, hordozható IBM PC kompatibilis számítógéphez kapcsolható, és ezzel kialakítható
hálózattól független üzem is. Ennek a segédeszköz használhatósága szempontjából igen
nagy jelentosége van.
A BraiLab PC adapter hardverének és az I2C szoftver illesztésének kialakításában
Lukács József és Endre voltak a segítségemre. Az I2C interfész elonye a könnyebb
gyárthatóságban van, hátránya viszont az idoigényesebb programozás. Készült a beszélo
adapternek szabályos centronics változata is.
-¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬
- -
- - fejhallgató
- BraiLab PC (IBM PC) - -¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¬ -
- - - BraiLab PC +¦¦-
- - I2C - adapter -
- Centronics A=======Á PCF-8200 -
- interfész - - hangszóró -
- (hordozható) - - akkumulátor+¦ 6 V=
L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦- L¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦- tölto
A hordozható BraiLab PC segédeszköz felépítése.
6.3.2. AZ ÚJ TEXT-TO-SPEECH RENDSZER BEÉPÍTÉSE AZ MSDOS OPERÁCIÓS RENDSZERBE
A BraiLab PC nem bolondbiztos segédeszköz. A PCF-8200 alapú, új, kötetlen szótáras
beszédeloállító rendszerem segédeszközbe építésekor a legfontosabb célkituzésem az
volt, hogy az IBM PC lehetoleg minden funkciója használható legyen hallás útján.
A grafikus funkciók kivételével ezt a célt sikerült is megvalósítani. Még a színek
és ablakok is érzékelhetok beszéd útján bizonyos kényelmi szintig.
A BraiLab PC beszélo szoftvere az MSDOS interfészek nélkül 20 Kbájt hang adatbázissal,
4 Kbájtos külso kivételszótárral együtt 45 Kbájt. Operációs rendszerbe illesztve
intelligens ernyofelolvasó rendszerrel együtt 53 Kbájt. Ez a program tárrezidens,
ezért a rezidens részeket assembler nyelven írtam. A rezidens résszel kapcsolatot
tartó részeket C nyelven programoztam.
A rezidens program több szinten kapcsolódik az MSDOS operációs rendszerhez. Legfelso
fájl szinten úgy, hogy a COM4 virtuális periférián keresztül irányíthatók át az üzenetek
CWI kódkészletben a mesterséges beszéd számára. BIOS szinten a legfontosabb ernyore
író rutinok adatai irányíthatók át egyenként vagy kombinálva a text-to-speech programhoz
megszólaltatás céljából. A BraiLab Plus-nál ez a fecseg üzemmódhoz hasonlítható.
A BraiLab PC rezidens programnak saját billentyu kezelo interrupt programja van,
melynek segítségével a billentyu echózás tartható kézben. Az ernyore direktben kiírt
adatokat a program off-line rendszere segítségével lehet szintetizálva kijelezni.
A BraiLab PC program ablakozás elvu. Ez azt jelenti, hogy mind on-line-ban, mind
pedig off-line-ban egy aktuális ablakban történik az echózás. Az ablakok részben
fixen letölthetoen jelölodnek ki, részben automatikusan képzodnek. A karakterek,
szavak és sorok meghangosítása szövegszerkesztés közben, parancs sor beírásakor és
off-line-ban hasonlóan muködik, mint a BraiLab Plus-ban.
Az ablakok kijelölésével, melyet segédprogrammal végezhet a látássérült felhasználó,
az ernyon való tájékozódást lehet elosegíteni. Ha az egyes alakzatokban a vak felhasználó
off-line módban olvassa le az ernyot, akkor az egyes kurzor pozíciókat a rendszer
eltárolja, hogy késobb könnyen vissza lehessen találni a korábbi ablakok pozícióiba.
Az üzemmód váltások, beleértve az összes beszédparaméter állítási lehetoségeket,
escape szekvenciák segítségével történnek. Az üzemmódok közül fontos kiemelni a sorvég
be/ki, szóköz be/ki, és a részletez be/ki szekvenciákat. Ha egy fájl folyamatos felolvasása
történik pl. a
COPY fájl.név COM4
paranccsal, és ha a szöveg formátumára is kíváncsiak vagyunk, akkor a sorvégeket
figyelembe kell venni, mint intonálási határokat, valamint a szóközöket is ki kell
mondatnunk (sorvég-be, szóköz-be). A betuhibákra koncentrálhatunk, ha a jelöletlen
hasonulásokat nem mondatjuk ki (részletez-be). A szemigrafikus jelek kimondását tilthatjuk
le a kód-ki szekvenciával.
Az off-line üzemben nemcsak a karakterek betuzése történik, hanem az ernyo szín attribútumairól
is információ kapható. A színek és az ablakok automatikus felismerése egy intelligens
ernyofelolvasó rendszer részei lesznek (fejlesztés alatt). Az ablakok és a kurzor
pozícióiról szóbeli koordináta kijelzés kérheto.
A beszédszintetizátor programozása nem interruptos. Ennek egyik legfobb oka a programból
történo I2C interfész kezelés. A billentyuk kezelése viszont megszakítható, és egy
újabb billentyu megnyomása meg is szakítja a beszédet. A PCF-8200-as áramkörrel meg
lehetett csinálni, hogy nem állítom le a beszédet megszakításkor, hanem azonnal az
újabb szöveg frame-jeit adom a szintetizátor számára. Ehhez feltétlenül szükséges
az igen gyors real time text-to-speech rendszer megléte.
Javítás és gyors gépelés közben a finom részletekig kidolgozott beszéd paraméterek
összeolvadnak, és a magyar nyelv fonetikusságából adódóan a szavakat a gépeléssel
teljesen egyidoben hallhatjuk. A szöveg szerkesztése ezáltal abszolút természetességgel
végezheto hallás útján. A szövegszerkeszto javító, vezérlo gombjainak hatására a
vak felhasználó mindig a szükséges információt hallja, magának a segédeszköznek a
kezelésével igen kevés a gondja.
Ahhoz, hogy a billentyuzés közben ne késsen a hangos echó, arra is figyelemmel kellett
lennem, hogy a hosszú magyar zárfelpattanások idejét szókezdo pozícióban kiszurjem
(pl. ketto). Normális megszólaltatáskor persze, pl. fájl felolvasásakor) a zárfelpattanások
szókezdo néma fázisának ideje nem csökkentheto le, mert ez az ido nagyon jellemzo
az egyes mássalhangzókra.
A BraiLab PC autorepeat funkciója eltér az elozo BraiLab-okétól. A billentyuzetekben
helyben programozhatók az autorepeat idok (IBM PC/AT), ezért az automatikusan ismételt
billentyuk megszakítják a beszédet. A beszéd sebességével és az idozítések állításával
megválasztható a felismeréshez szükséges elégséges ido. A billentyuk kiosztása vakon
is átdefiniálható segédprogrammal. Az egykezes gépelést a BraiLab Plus-hoz hasonlóan
oldottam meg, kivéve az Alt gombot, mely folyamatosan zárható. Így beviheto minden
kód a kiegészíto billentyukrol, ill. az operációs rendszer újra töltheto egy kézzel
is.
7. A BRAILLE RÖVIDÍRÁS ÉS A TEXT-TO-SPEECH KIVÉTELSZÓTÁRA
Molnár Pál egyetemi szakdolgozatának eredményeit feldolgozva kutattam a magyar nyelv
entrópiáját. Ez két dolog miatt volt szükséges. Egyrészt a PCF-8200 alapú text-to-speech
rendszert ki akartam egészíteni beszéd frame kivétel szótárral (ennek programozási
munkái elkészültek), másrészt Magyarországon kialakulóban van a korábbiakhoz képest
több rövidítést tartalmazó braille rövidírási szabvány.
Mindkét feladat számára fontos tudni a magyar nyelv információ tartalmát. Ki kell
tudni választani azokat a szavakat, szókezdeteket és szóvégzodéseket, melyeket érdemes
külön frame-ekkel szintetizálni, ill. érdemes külön braille pont kombinációkkal rövidíteni.
Jelinek Schneider módszere változó hosszúságú kódszavait úgy választja ki egy adott
adattömegbol, hogy a kapott kódszótár információ tartalma megegyezik a kiindulási
szöveg információ tartalmával. A kódszavakról elmondható, hogy azok az egyértelmu
kódolás miatt rendelkeznek a teljesség és a prefix tulajdonságokkal. A teljesség
azt jelenti, hogy minden forrás string-nek van olyan kezdoszelete, mely már szerepel
a kódszótárban. A prefix tulajdonság pedig azt jelenti, hogy bármely kezdoszelet
csak egyféle képpen kódolható.
Egy szöveg információ tartalmának becsléséül a Jelinek - Schneider által bizonyított
tétel szolgál, mely szerint:
H(szöveg) H(kódszótár)
------------------- = ----------------------
log2(abc-elemszáma) log2(szótár-elemszáma)
Ahol a H(szöveg), H(kódszótár) az elemzett szöveg ill. a kódszótár entrópiáját jelöli.
A magyar irodalmi nyelv egy mintáján lefuttatva a változó hosszúságú blokkos kódolási
eljárást, különbözo hosszúságú kódszavakat kaptam. A rekurzív program hosszabb ideju
futásával (5 óra VAX 8550-es gépen) már több teljes szót is tartalmazó kódszót is
generáltam. Ezeknek a vizsgálata sokkal egyszerubb volt, mint a több száz kilobájtos
minta szövegé.
A braille rövidírást illetoen érdekes eredményt adott a szóvégzodések analízise.
Kiderült, hogy a 77 rövidítést tartalmazó hármas szintu magyar braille rövidírásban
a "szor", "szer", "ször" rövidítése helyett sokkal elonyösebb lenne a "nak", "nek"
végzodéseket rövidíteni. A szabványosítás folyamata még ma is tart, így fontos kiemelni
a braille publishing rendszerem visszacsatoló hatását is ebben a folyamatban. A teljes
szavak rövidítései közé az entrópia vizsgálataim alapján mindenképpen felvenni javasoltam
a "nemzet", "mert" és "ott" szavakat.
A braille rövidírási fordító programjaim valamint a BraiLab PC-ben muködo külso kivétel
szótár kezelése céljából kialakítottam rövidítéseket leíró szabály rendszert. A külso
kivétel szótár szerepe a text-to-speech rendszerben kettos; egyrészt a leggyakoribb
rövidítéseket és idegen szavakat mondatja ki magyarul, másrészt a kettos hangzók
összevonásának szabályait korrigálja. Ez utóbbira lássuk a következo két példát:
vízszint=víz-szint
kilencszáz=kilenc-száz
Mind a két példában az egyenloség jel bal oldalán álló string összetett szavakban
is állhat, így elegendo a szótárban csak ilyen rövid alakot tárolni. A következo
sorban arra láthatunk példát, hogy a helyes ejtés (ss) céljából a tömörség érdekében
a belso, metabraille kivétel szótárra történik hivatkozás:
kisebb=<
A rövidítéseket leíró szabályok (ld. mellékletben) illusztrálásához vegyük a magyar
Eötvös családi név helyes kiejtése céljából beírt sort:
!eö-=ö
Ennek értelmezése, ejts minden szókezdo eö stringet ö-nek, ha még követi valami.
A BraiLab PC helyes kiejtéséhez a következo kivételeket kellett bejegyezni:
!brai-=bráj
!pc.=pécé
Itt is a szókezdo brai stringet kell megfeleloen ejteni, ami persze a braille szóra
is érvényes. A PC stringet csak különálló szóban kell "pécé"-nek ejteni, pl. a "hapci"
szóban nem. A kivétel szótár jelenleg 4 Kbájt mérete még szükség szerint növelheto,
mert a real-time feldolgozás indexelt kezelés miatt nagyon gyors. A felhasználó saját
maga is kibovítheti, átírhatja a kivétel szótárt a saját szövegeinek és céljának
megfeleloen. Kiegészíto programom segítségével bármikor, a teljes rendszer letöltése
nélkül módosíthatja a felhasználó az éppen aktuális kivétel szótárt, akár a beszélo
program futása közben is.
8. A BRAILAB GÉPEK ALKALMAZÁSAI
A HomeLab számítógép BraiLab alapgéppé alakításához szükséges modul gyártási jogát
a Hardszoft Gmk ill. a dombóvári Color ipari szövetkezet kapta meg. Együttesen mintegy
400 BraiLab alapgépet értékesítettek vakok és gyengénlátók számára.
A BraiLab Plusz gépek gyártását a KFKI végezte, és 60 darabot értékesítettek belole.
A BraiLab PC adaptereket a KFKI Direkt Kft. gyártja, és eddig 70 darabot adott el
elsosorban látássérülteknek.
Szucs László egyéni vállalkozó, engedélyemmel sorról sorra, átvette a MEA-8000-re
írt text-to-speech programomat, ill. változtatás nélkül használja beszéd adatbázisomat
a PC Voice nevu termékében, mely egy PC-be dugható kártya. Mivel az elért tudományos
eredményeim az o eszközében is hasznosultak a gyakorlatban, így együttesen számolva
550 berendezésem szolgálja a magyar vak és gyengénlátó felhasználókat. Ez a magyar
vakok számát tekintve világviszonylatban is kimagaslóan nagy elterjedtséget jelent.
Vak felhasználók állítása szerint, a BraiLab megjelenése forradalmi változást jelentett
az aktív munkát végzo és az oktatásban résztvevo sorstársaik életében. Az alábbiakban
tételesen felsorolom, milyen felhasználóknál, és hogyan hasznosul az az 550 segédeszköz,
melyek egy évtizedes kutatás-fejlesztési munkám gyakorlati eredményeit demonstrálják.
- A Vakok Általános iskolája, a BraiLab alapgépet iskola-számítógépének tekinti.
Oktatóprogramokat készítettek szinte minden tantárgyhoz, és a tantervükbe is beillesztették
a többi BraiLab géptípus oktatásával együtt. Braille írású tananyagaikat a BraiLab
Plusz rövidírási rendszerével készítik.
- A középfokú iskolákban megjelent BraiLab Pluszok hatá-sára egyre több vak diák
jelentkezett különféle egyetemekre, legtöbben az ELTE TTK programozói szakára. Sokan,
pl. a Jogi karról kikerülve BraiLab Plusz segédeszközük segítségével könnyebben tudtak
munkába állni.
- Az ELTE TTK-n folyó vakok programozói oktatásába a BraiLab Pluszok és BraiLab PC-k
szervesen beépültek. A braille nyomtatót itt is a BraiLab Plusz vezérli. A szegedi
JATE-n a PC voice-t és a BraiLab PC-t használják.
- A Magyar Vakok és Gyengénlátók Országos Szövetségében, valamint a Vakok Állami
Intézetében a BraiLab gépeimet használják munkarehabilitációs tevékenységükben. A
braille nyomdában rövidírási rendszeremmel készítik a nyomdai termékeik legnagyobb
részét. Nyilvántartási rendszereikben is a BraiLab gépcsalád tagjait hasznosítják.
Összefoglalva, a BraiLab gépek, a beszélo segédeszközök tekintetében szinte kizárólagos,
de az egyéb taktilis számítógépes segédeszközöket is beszámítva dönto részét képezik
a magyar vakok oktatásában felhasznált segédeszközöknek, az általános iskolától egészen
az egyetemekig, valamint a felnott korban látásukat vesztett vakok elemi rehabilitációs
oktatásáig.
A BraiLab gépcsalád tagjai új munkalehetoségeket teremtettek látássérült embereknek,
és az oktatás minden szintjére beépültek. A magyar vakok számítógépes braille nyomtatása
kizárólag a BraiLab Plusz gépeimre épült. Munkám eredményeképpen elmondható, hogy
Magyarországon a vakok és gyengénlátók számítógépes segédeszköz használata és braille
nyomtatási technikája semmiben sem marad el az iparilag legfejlettebb országokétól.
V Á L A S Z
Gordos Géza, a muszaki tudomány kandidátusa bírálatára
Eloször is meg szeretném köszönni bírálómnak, hogy sok elfoglaltsága mellett ilyen
részletes bírálatot írt. Egyaránt köszönöm a pozitív és a negatív megjegyzéseket.
Nagyon sokat tanultam belolük.
Munkám "A BraiLab beszélo számítógépcsalád" muszaki alkotás, tehát a minosítés alapja
maga az alkotás. Az alkotás ismertetését a muszaki leírás és azok mellékletei segítik
elo. Bírálóm kifogásolta, hogy a leírás nem tartalmazza a téma tudományos helyzetképét
és a rokon eredmények pontos bemutatását. A leírásom elso fejezete mellett a D, E
és I mellékleteim is tartalmaznak a vakoknak szánt segédeszközökrol áttekintést.
Beszédtechnológiai helyzetkép leírásom megmagyarázza, hogy miért kellett egy kitaposatlan
ösvényen elindulnom, azaz speciális beszéd kimenetet készíteni vakokat szolgáló segédeszközben.
Az irodalmi hivatkozásokat érinto bírálatot elfogadom. Formailag nem volt számomra
világos, hogy egy muszaki leírásban is benne kell-e lennie vagy sem. Szeretnék utalni
a mellékelt cikkeimben lévo hivatkozásokra. Például a G mellékletemben 15 hivatkozás
található. E válaszomhoz is mellékelek fontos irodalmi hivatkozásokat. A formáns
szintézis tekintetében cikkeimben és e válaszomban inkább egy átfogó mure hagyatkozom,
melyet Olaszy Gábor írt [1]. Úgy érzem, hogy nála nem írhattam volna jobb történeti
áttekintést. Egy vakok számára készült muszaki tudományos alkotásról szóló leírásban
a beszédszintézisrol csak mint egy alkotó elemrol kellett hogy írjak.
Nem formáns elvu beszédszintézis, a nagy tárigény miatt, alkotásomban nem jöhetett
szóba, ezért nem tekintettem át a hullámforma kódolással elért hazai és külföldi
eredményeket. Bírálómmal egyetértoen jegyzem meg, hogy az hullámforma kódolással
jobb beszédminoség érheto el, mint formáns szintézissel ld. [2] a LIAWOX-ról.
A beszédminoség értékelésében a hangsúlyt a beszéd érthetoségére helyeztem. Erre
utaltam a leírásom 2.2. fejezetében (ld. a fejezet elso bekezdését), valamint az
L mellékletben (2. oldal teteje). Az érthetoségi vizsgálatok néhány speciális eredménye
az 1. számú mellékletben található. A beszéd természetességi mutatóit kevésbé tartottam
fontosnak, ezért nem tértem ki részletesebben erre a kérdésre a leírásban és a mellékelt
cikkeimben. Helyette viszont a vak felhasználó kognitív terhelésének csökkentését
tuztem ki célul a PCF-8200 alapú második text-to-speech rendszeremben. A több mint
150 BraiLab PC felhasználó folyamatosan küldi pozitív szubjektív visszajelzéseit,
melybol arra a következtetésre juthatunk, hogy célomat elértem.
Köszönöm, hogy bírálóm felhívta leírásom hiányosságára a figyelmemet az üzembiztonság
tekintetében. Ezt a kérdést ketté kell választani. Az egyik oldalon vizsgálandó a
szoftver komponens, míg a másikon a hardver komponens megbízhatósága. A szoftver
megbízhatóságát határesetekre és közbenso esetekre alaposan bevizsgáltam minden új
változat kiadása elott. A szoftver megbízhatóságára soha semmilyen kifogás nem érkezett.
A hardver esetén is külön kell vizsgálnunk a BraiLab Basic, BraiLab Plus gépeket,
mint amelyek több hardver elemet tartalmaztak, valamint az akkori helyzet miatt több
keleti gyártmányú elemmel rendelkeztek, és a BraiLab PC hardverét, melynek felület
szerelt nyomtatott áramköre mindössze 12 négyzetcentiméter.
A BraiLab Basic megbízhatósága a vele egy kategóriába eso Sinclair gépekkel kb. azonos
volt. A BraiLab Plus ugyancsak a CP/M kategóriájú gépekkel vette fel a versenyt az
üzemképesség tekintetében. Erre utal ezen gépek szervíz statisztikája. A különbség
persze az volt, hogy azokat az eszközöket a magyar vakok nem tudták használni. A
BraiLab PC hardverére a nagy gyártási szám ellenére soha nem érkezett semmiféle kifogás.
Bírálóm kitért a szintetizátort vezérlo parancsok, vagy ahogy a leírásomban írtam,
a frame-ek tárolásának redundancia kérdésére. Valóban nagyon fontos, hogy elkerüljük
a redundanciát. Szeretném meggyozni bírálómat és a tisztelt bizottságot is, hogy
az átlapolásos technikám szinte redundancia nélküli tárolást tesz lehetové. A MEA-8000
alapú rendszeremben 216 frame-t használtam, melyek közül 18-szor mutatott a diád
mutatóm már egyszer használt frame-re. Ez 8.3%. A PCF-8200 alapú text-to-speech programomban
összesen 3242 beszéd frame-t tároltam, s közülük mindössze 42-szer mutatok már használt
frame-re. Ez csak 1.3%-os redundancia! Ezeket az eredményeket a 2. számú melléklet
alapján kaptam.
A kisebb tárméret 4 Kbájtos és a nagyobb 20 Kbájtos értékek természetesen a diád-matrix-al
együtt értendok ld. muszaki leírásom 30. old. második bekezdés ill. a 39. oldal harmadik
bekezdés alján és 43. oldal ábra alatt.
A redundancia és az összetett pointerek kérdésében érdemes kitérni a HUNGAROVOX,
SCRIPTOVOX és a MULTIVOX text-to-speech rendszerek tárolási módjára ill. azok összevetésére
a BraiLab-bal. A HUNGAROVOX-ban 370 hangszeletet (frame-t) használtak fel összesen
2457 helyen. ld. [1] 291-292 oldalak. Ebbol világosan látszik, hogy elvben sem lehet
olyan nagy részletességgel tárolni paramétereket mint a BraiLab PC 3200 különbözo,
sehol sem ismétlodo frame-jeivel.
Felmerülhet a kérdés, hogy ha annyira triviális lenne az átlapolásos tárolási mód
és az összetett pointerek használata által megnyerheto memória terület és gazdag
hanganyag tárolási lehetoség együttes elonye, akkor miért nem használták korábban
mások ezt a technikát.
A MEA-8000-el muködo SCRIPTOVOX ld. [3], valamint a PCF-8200 alapú MULTIVOX rendszerben
is mindössze 255 különbözo hangszeletet alkalmaztak az alkotók ld. [4]. A BraiLab
PC-ben általam használt 3200 különbözo frame-et összehasonlítva a 255 ill. 370-el
szeretném kihangsúlyozni a gazdag hangzás elvi lehetoségét. Csak ilyen sok frame
tárolásával lehet gazdag hanganyagot eloállítani. Ezeket az apró formáns változásokat
az eloadásom alatt is fogom demonstrálni.
Nem szeretném természetesen ezzel a HUNGAROVOX, SCRIPTOVOX és MULTIVOX rendszereket
negatívan jellemezni. A HUNGAROVOX egyértelmuen történelmi jelentoségu alkotás, a
legelso magyar formáns text-to-speech rendszer. A BraiLab gépeimben használt kötetlen
szótáras rendszerek legfontosabb tulajdonsága a tömörség mellett azon képessége,
hogy vakok segédeszközeibe történo alkalmazásra lettek speciálisan megalkotva. Utalhatok
itt a hangalak echó céljaira kialakított diádokra, a néma fázisok kihagyására a billentyu
echó idején, a mondatjelek mihamarabbi jelzésére az intonálással, a teljesen azonos
ideju megszólaltatásra, a Metabraille kódolásra, a hangos nagybetujelzésre, az ernyo
attribútumok hangzással történo kiemelésére, a sorvégjelek intonálással történo kimondására,
a szóközök speciális szintetizált hangjára, a felolvasott szóközök szünetekkel történo
jelzésére (ezen lehetoségek kikapcsolására), az igen gyors beszédmegszakítási lehetoségre,
a különbözo némítási funkciókra vagy a kétszintu kivételszótár kezelésre. Ezek nélkül
nem lehetett jó vakügyi segédeszközt készíteni.
Bírálóm 5.6. pontjában hiányolja a percepciós vizsgálati eredményeimet. A bírálatot
köszönettel elfogadom. Szeretném jelezni, hogy a speciális percepciós vizsgálataim
eredményeit az 1. számú mellékletem tartalmazza. A valós és gépi ejtés összehasonlítására
eloadásomban fogok kitérni. Ugyancsak az eloadáson, de azon kívül is lehetové teszem
a kötetlen szótáras szintetizátoraim beszédhangjának megismerését. A védésem színhelyén
9 óra 30 perctol, de kérésre máskor is, megtekinthetok, meghallgathatók az eszközeim.
A MEA-8000 hangadatbázisról a leírásban kifejtettem, hogy az elsodleges szempont
az igen kicsi tárméret volt azért, hogy a számítógép kapacitása megmaradjon a felhasználó
számára. Ez természetesen kihatott a beszéd minoségére, ami mindezek ellenére mégis
igen jól használható volt vakok segédeszközében.
A GY-A, TY-A hangátmenetek hosszának számolásakor bírálómnak bizonyára elkerülte
figyelmét az, amit a MEA-8000 adatbázisról írtam muszaki leírásom 25. oldalán, mely
szerint "a mássalhangzó-magánhangzó diádokban nem tároltam a mássalhangzó jellegzetes
formánsait, csupán annak átmeneti részeit...", ezért jutott bírálatának 5.8. pontjában
arra a következtetésre, hogy e hangátmeneteim rövidebbek az átlagosnál. A szókezdo
GY és GY-A diádok együttes hossza a MEA-8000 esetén nálam 152 msec.
A PCF-8200 adatbázisban kifogásolt K hangba történo átmenetek összevonása szerintem
jogos, mivel itt csupán a második szakaszról van szó! Ez a K hang zárfelpattanás
elotti néma fázisa. Erre utal az utolsó néma frame zaj paramétere, mely elokészíti
a zárfelpattanás hangzó zaját. Bírálóm ezen megállapításának talán az lehetett az
oka, hogy az elso szakaszok a 32. oldalon nem látszanak. Ott csupán az A-K átmenet
elso szakasza van feltüntetve. (ld. pont ill. kettospont a cimke után). Az 5.1.2.
fejezetem írja le a PCF-8200 adatbázisában alkalmazott új átlapolásos módszeremet:
ha a cimkét pont zárja le, akkor az az elso szakaszra utal, ha kettospont, akkor
a másodikra.
Elfogadom bírálóm megjegyzését a "jellegzetes hangzású" ill. "sarkítani" meghatározásaimat
illetoen. Jellegzetes hangzású G hang alatt azt értem, ahogy a G hangot próbáljuk
kiejteni magánhangzó kíséret nélkül. Ez a GÖ hangsorban ejtett G hanghoz áll a legközelebb.
A sarkítás alatt azt értem, hogy olyan intenzitással hozom létre például a szintetizált
szóköz-G-szóköz jelsorozatnak megfelelo hanghatást, mely köznapi beszédben nem hangzik
el sem szókezdo, sem pedig szóvégi állapotban. Az "artikulált" ejtést az eloadásom
alatt demonstrációval szeretném megmagyarázni.
Az intonáció megvalósítása ugyan kötelezo már az 1980-as években, de senki nem gondolt
arra, hogy a mondatvégi írásjeleket hogyan lehet a mondatintonációval vakoknak effektíven
jelezni. Ezt bírálóm az 5.15. pontban pozitívan is értékelte. A beszéddallam automatikus
eloállításáról eloszor 1986-ban publikál Olaszy Gábor [5] A HUNGAROVOX rendszerben
az írásjel utáni számmal kellett jelezni a kívánt dallamformát ld. [1] 303-305. oldalak.
Az általam bevezetett Ho Há Mi Me Ki szabály nagyon tömör, automatikus feldolgozást
adott az esetek nagy többségére már 1985 szeptemberében (ld. 194 639 lajstromszámú
szabadalom "intonálási egységek" "Eljárásra és berendezés hang szintetizálására elonyösen
beszéd és/vagy ének szótár nélküli, a vezérléssel teljes egészében azonos ideju eloállítására"
A bejelentés napja: Budapest, 1985.09.18., "Útmutató a Braille-Lab beszélo Basic-jének
használatához" 20. old. Budapest 1986 február.)
A "mikrointonációval" kapcsolatban fontosnak tartom kiemelni, hogy elottem senki
nem tárolt még ilyen részletességgel formáns frekvencia és sávszélesség stb. paramétereket
diád táblázatokban a magyar nyelv szintetizálására. Ez adja a gazdag hangzását a
PCF-8200 alapú rendszeremnek. Megjegyzem, hogy a legtöbb formáns szintetizátor rendszer
a 4. és 5. formáns paraméterek tárolásával nem is foglalkozik.
A BASICVOX-ra történo közvetett utalásom megtalálható az L melléklet 3. oldalán.
Ott a rendszer nevét nem említettem.
Bírálóm a kivételszótárak új megadási módszerét "érdekesnek" tartotta, a jó használhatóságát
a felhasználók tapasztalatai alapján véli bizonyítottnak. Örülök, hogy bírálóm fontosnak
tartja a felhasználói tapasztalatok visszacsatolását. Szeretnék beszámolni arról,
hogy az ember-gép kapcsolati szempontból igen egyszeru, de hatékony módszerem a felhasználóktól
érkezett visszacsatolások alapján nagyon sikeresnek mondható. Igen széles körben
használják vak emberek a legkülönbözobb szövegek kényelmes felolvastatása céljára.
Az általános észrevételekre reflektálva ki szeretném egészíteni az új muszaki tudományos
eredmények címu fejezetem elso pontját a következokkel: 1984-ben nem volt számomra
elérheto olyan magyar text-to-speech rendszer, melynek mérete kisebb lett volna 8
Kbájtnál, és melyet vakok segédeszközében használhattam volna.
Nagyon köszönöm, amit bírálóm a muszaki alkotás szellemében írt. A 2.1. pontot bírálóm
az összefoglalójában kiemelte "Alkotás-elemnek tekintem a komplex (taktilis és beszélo)
segédeszköz felvetését és kialakítása általános szempontjainak megfogalmazását" Ugyancsak
kiemelte bírálóm bírálatának 5.1. pontját: "Az (5.4. szerinti fenntartással) jelentos
alkotásnak tekintem a MEA-8000 és a PCF-8200 formáns szintetizátorok segítségével
megvalósított BraiLab, BraiLab Plusz és BraiLab PC beszélo számítógépeket és az ezek
létrehozását segíto fejleszto rendszereket." Az 5.4. pont bírálata a redundancia-mentességet
érintette. Erre úgy érzem kielégíto választ tudott nyújtani a 2. mellékletem. Kiemelte
bírálóm bírálatának 6.1. pontját is, mely így hangzik: "Önálló alkotásnak tekintem
az alapveto vezérlési (írás, törlés, hibaüzenetek, szóköz, stb.) és bonyolult (pl.
szövegszerkesztés) számítógépi funkciók kiegészítését alaposan megtervezett hang-
illetve beszéd effektusokkal". Bírálóm következo, általa kiemelt pontja a 6.6., mely
így hangzik: "Alkotás-elemnek tekintem a TTS rendszer beépítését a PC tipusú gépcsalád
MSDOS rendszerébe" Bírálóm ezen pozitív értékelései olyan alkotásokat és alkotás-részeket
emelnek ki, melyek új muszaki tudományos eredmények. Ezek vagy a magyar nyelv specifikumait
a vakok segédeszközei céljára figyelembe vevo egyedi alkotások, vagy még külföldön
is elfogadott új tudományos eredmények (pl. hangalak echó). Ezek talán elegendo érvet
szolgáltathatnak az összefoglalóm 4. pontjának elfogadásához.
Bírálóm ugyancsak dícséroen emelte ki bírálatának 5.13. pontját. "Az alkotás fontos
elemének tekintem azt, hogy egy menetben kezeli az ASCII és a Braille kódok konverzióját,
és hogy a Metabraille-bol történo konverzió tekintettel van a beszéd-sebesség változtatására."
A Metabraille kódolás és annak alkalmazása, melyet bírálóm ugyancsak "Értékes alkalmazás-elemnek"
tekint, egy eddig mások által, sem belföldön sem külföldön nem használt új módszer.
Remélem, hogy ezek alapján elfogadható bírálóm számára az összefoglalóm 3. pontja.
Bírálóm 5.2. pontjában pozitívan ír az átlapolásos szintetizátor parancs-sorozat
tárolásomról. Szeretném remélni, hogy a redundancia számításaim segítik abban bírálómat,
hogy összefoglalóm 2. pontját is el tudja fogadni.
Elfogadom bírálóm kritikáját a pontatlan idézetek és hiányos utalások tekintetében.
Ezek listáját bírálóm kérésére a 3. mellékletemben adom meg.
A szabadalmi és egyéb társszerzos cikkek részarányával kapcsolatban utalni szeretnék
a TMB számára mellékelt írásbeli nyilatkozatra, melyben a társszerzok kijelentik,
hogy a "BraiLab beszélo számítógépcsalád" az én alkotásom.
Befejezésül még egyszer megköszönöm bírálómnak alapos bírálatát, valamint azt, hogy
elfoglaltsága ellenére mégis vállalta a bírálata elkészítését.
Budapest, 1993 október 8.
Arató András
Mellékletek
1. Percepciós vizsgálati eredmények
2. Redundancia számítások
3. Irodalmi hivatkozások listája
Tornallyay Jánosné
Az alkotó művészi pályájának bemutatása.
Galéria
Bemutató akvarell és pasztellkrétás képekből.
Sárospataki öregdiákok
honlapja
Beszélő számítógépes rendszerek
Linktár
Van kérdése? Írjon bátran, készséggel válaszolok!
E-mail: janos.tornallyay@gmail.com
Vissza a nyitólapra
|