background image

Podręcznik użytkownika programu 

Spis treści:

Pierwsze kroki...........................str.2

Znaczniki sterujące 
interfejsu SAPI5........................str.5

Wsparcie techniczne..................str.6

Kont@kt...................................str.6

Obsługa błędów 
syntezatora mowy.....................str.5

Słownik dla głosu......................str.3

Tryb dokładny i lektorski............str.4

Zaawansowany paser tekstu.......str.4

voice

Copyright © 2009 IVO Software Sp. z o.o.

wersja dla Windows

background image

2

Praca z IVONĄ - pierwsze kroki

P

£

£

odczas  instalacji  syntezatora  mowy  IVONA  -  komputer  wzbogacił  się  o  możliwość 
generowania  ludzkiej  mowy  wysokiej  jakości.  Interpretacja  tekstu  podawanego 
syntezatorowi  mowy  IVONA  jest  realizowana  przez  niedeterministyczne  algorytmy 

sztucznej inteligencji. Oznacza to, że w niektórych przypadkach wyniki ich działania mogą być inne 
od  oczekiwań  użytkowników.  W  takich  przypadkach  należy  odpowiednio  przygotować 
syntezowany tekst by osiągnąć zamierzony efekt.

Przecinki i kropki 

Tekst  do  odczytu  powinien  być  napisany  zgodnie  z  zasadami  polskiej  gramatyki  i  ortografii. 
Przykładowo  zdanie  Ala  ma,jednego  kota."  zostanie  przeczytane:  Ala  ma  przecinek  jednego 
kota.",
 ponieważ w tekście brakuje spacji po przecinku przed wyrazem  jednego". Taki sposób 
interpretacji  tekstu  do  odczytu  jest  pomocny  przy  znajdowaniu  błędów  w  pisowni  tekstu. 
Syntezator mowy IVONA zawsze interpretuje przecinki i kropki. Zdanie  Ala ma kota, a kot ma Alę." 
zostanie zinterpretowane i odczytane jak zdanie złożone (z przerwą na znaku przestankowym), 
podczas gdy zdanie  Ala ma kota a kot ma alę." jak pojedyncze zdanie twierdzące. Interpretowanie 
przecinków i kropek powoduje, że zdania zostają odczytane i zaintonowane w sposób taki, jakiego 
oczekuje się od lektora. Pamiętając o tej właściwości syntezatora mowy IVONA można osiągnąć 
ciekawe efekty. Na przykład można wyróżnić pewne wyrazy stawiając przed nimi przecinek, np. 
zdanie  Ala ma, jednego, kota." zostanie zupełnie inaczej przeczytane niż zdanie  Ala ma jednego 
kota."
.

Wyrazy obcojęzyczne 

Jednym z głosów dostępnych dla syntezatora mowy IVONA jest głos Jacek, który jest głosem mowy 
polskiej. Oznacza to, że tekst podany syntezatorowi zostanie zawsze przeczytany tak, jakby był 
napisany  w  języku  polskim.  Dlatego też  wyrazy  obcojęzyczne zostaną również  przeczytane po 
polsku.  Aby  osiągnąć  poprawną  wymowę  należy  występujący  w  tekście  wyraz  obcojęzyczny 
zastąpić jego zapisem fonetycznym w języku polskim. Do tego celu można wykorzystać słownik 
syntezatora mowy IVONA, w którym można wpisać słowa pojawiające się szczególnie często w 
syntezowanych tekstach. 

Przykłady: windows menu -> łindołs meni; microsoft word ->majkrosoft łord
Więcej  informacji  na  temat  używania  słownika  znajduje  się  w  rozdziale  Zaawansowany  paser 
tekstu”. 

background image

3

Słownik głosu

 Lista wyrazów zamienianych

Zamieniaj  Z” oraz Zamieniaj  Na”

Akceptuj – (widoczny w czasie edycji słowa) 
wciśnięcie  powoduje  zaakceptowanie 
wprowadzonej zmiany do słownika

Anuluj – (w polu  Słownik”, widoczny w 
czasie  edycji słowa) wciśnięcie  anuluje 
wprowadzoną zmianę do słownika

Dodaj  -  po  wciśnięciu  przycisku 

Dodaj”  można 

wypełnić  pole  Z”  wyrazem  poszukiwanym  oraz  Na” 
wyrazem na jaki należy wyraz poszukiwany zamieniać.

Edytuj - wciśnięcie przycisku spowoduje możliwość 
zmiany wyrazu poszukiwanego i zamienianego

Usuń - wciśnięcie przycisku usuwa aktualnie 
wybrany wyraz poszukiwany ze słownika

Pomijaj  znaki  -  pozwala  wybrać  znaki,  które  mają  być 
ignorowane podczas odczytu tekstu (cudzysłów, myślnik, 
nawiasy, klamry, tylda, apostrofy, znaki: < >,/)

Sposoby odczytu tekstu

Tryb odczytu 

Dokładny” 

Tryb odczytu 

Lektorski”

N

£

£

£

iekiedy zachodzi potrzeba przekształcenia tekstu przed syntezą, w sposób zapewniający 
poprawny  sposób  jego  odczytu.  Typowym  przykładem  mogą  tu  być  wyrazy  obcego 
pochodzenia,  które  należy  przekazać  do  syntezatora  fonetycznie.  Aby  sprostać  tym 

potrzebom  głosy  syntezatora  mowy  IVONA  obsługują  rozbudowany  mechanizm  słownika 
wyjątków.

Okno dialogowe słownika wyjątków zawiera trzy części: 

Słownik  - jest to lista wyrazów wyjątkowych. Użytkownik może do niej dopisywać własne 
wyjątki zapisane w sposób fonetyczny. 

Sposób  odczytu  tekstu  -  pozwala  wybrać  jeden  z  trybów  odczytywania.  W  trybie 

Dokładnym” syntezator odczytuje wszystkie znaki znajdujące się w podanym tekście, podczas 

gdy w trybie  Lektorskim” część z nich interpretuje imitując zachowanie lektora. Szczegóły 
działania obu trybów zostały opisane w dalszej części tego dokumentu.

Pomijanie znaków - użytkownik może skonfigurować, które znaki mają zostać bezwzględnie 
pominięte podczas odczytywania. Zaznaczone znaki zostaną usunięte z tekstu wejściowego 
zanim trafi on do syntezatora.

background image

4

Tryb Dokładny i Lektorski

Zaawansowany paser tekstu

S

yntezator mowy I

 może pracować w dwóch trybach: 

ektorskim  i 

okładnym . W 

zależności  od  używanego  trybu  IVONA  w  różny  sposób  odczytuje  tekst.  W  trybie 

okładnym   wystąpienie  jednego  ze  znaków  specjalnych  (np.  nawias,  myślnik,  etc.) 

powoduje  odczytanie  jego  nazwy  przez  I

.  W  trybie 

ektorskim   I

  próbuje 

zinterpretować  tekst  tak,  jak  to  robi  lektor,  czyli  nie  odczytuje  nazwy  specjalnego  znaku,  ale 
odpowiednio zmienia intonację zdania. Na przykład zdanie:  Ala ma kota  Stefanka

zostanie 

zupełnie inaczej odczytane w obu trybach. W trybie dokładnym usłyszymy  Ala ma kota cudzysłów 
Stefanka cudzysłów."
 podczas, gdy w trybie lektorskim usłyszymy  Ala ma kota, Stefanka."

Aby  uruchomić  tryb  lektorski  należy  uruchomić  okno  konfiguracji  słownika  i  zmienić  sposób 
interpretacji  tekstu  na  tryb  lektorski.  Tryb  lektorski  jest  szczególnie  użyteczny  do  zamiany  na 
mowę dużej ilości tekstu wcześniej nieobrobionego, np. tekstu książek, w którym znajduje się 
wiele dialogów.

VONA

L

D

VONĘ

VONA

”.” 

„D

„L

G

UWAGA!!! 

łos  SAPI5  syntezatora  mowy  IVONA  ładuje  reguły  z  pliku  słownik   ivona.lex,  który 
umieszczony  jest  w  katalogu  instalacyjnym  syntezatora.  W  rzeczywistości  słownik  jest 
bardzo rozbudowanym parserem tekstu pozwalającym praktycznie dowolnie modyfikować 

tekst  poprzez  zastosowanie  wyrażeń  regularnych  zgodnych  z  definicją  POSIX  1003.2  regular 
expressions . Słownik zbudowany jest na zasadzie - jedna reguła w jednej linii. Reguła 

 

tekst_do_zamian  łańcuch_docelowy

Przykład:  ivo software   iwo softłer   

Jeżeli któryś z członów zawiera białe znaki to należy go ująć w czudzysłów. Jeżeli któryś z członów 
zawiera cudzysłów to należy poprzedzić go znakiem ucieczki \ (backslash). Człon tekst do zmiany 
definiuje wyrażenie regularne dopasowujące tekst do zamiany. W procesie przekształcania tekstu 
przed  syntezą  dopasowany  fragment  zostaje  zastąpiony  poprzez  łańcuch  docelowy.  Przy  czym 
łańcuch docelowy może zawierać referencje do dopasowywanego tekstu zapisane notacją \1 .. \9 
(\0  to  całe  dopasowanie).  Na  przykład  dodanie  reguły:  Singapur([[:alpha:]]*)  S~'ingapur\1 
spowoduje zamianę wszystkich wystąpień słowa Singapur we wszystkich odmianach.

Ręcznie  dodawane reguły do  pliku  słownika  mogą pojawić się  w  oknie  dialogowym 

słownika  wyjątków  w  zmienionej  formie.  Ze  względu  na  ułatwienie  obsługi  okno  dialogowe 
słownika wyjątków wstępnie przetwarza reguły tak, aby były łatwiejsze do zrozumienia. Nie należy 
w oknie dialogowym słownika wyjątków modyfikować reguł dodanych ręcznie do pliku! 

Przykładowe reguły 

Poniżej  przedstawiamy  kilka  reguł  słownika  systemu  syntezy  mowy  IVONA  używanych  do 
najbardziej typowych zadań. Należy zauważyć, że reguły są case-insensitive - czyli działają bez 
rozróżniania wielkości liter. 

(^|[[:punct:][:space:]])Software([[:punct:][:space:]]|$) \1softłer\2 

Powyższa  reguła  działa  w  sposób  następujący:  zamień  słowo  Software ,  na  wersję  zapisaną 
fonetycznie -  softłer . Otoczenie słowa ^|[[:punct:][:space:]] oraz [[:punct:][:space:]]|$ 
oznacza  dowolny  znak  interpunkcyjny,  biały  znak  lub  początek  tekstu  (znak  ^)  lub 
koniec tekstu (znak $) 
. Gdyby go nie było algorytm zamieniałby wszystkie wystąpienia słowa 

Software  (co akurat dla słowa  Software  nie jest niekorzystne, w przeciwieństwie do np. dla 

słowa  Ala   -  ponieważ  zamieniane  byłyby  także  takie  słowa  jak:  oddala ,  przechwala ). 
Opisywane tu otoczenie słowa zostało ujęte w nawiasy, aby umożliwić wykorzystanie referencji 
wstecznych - \1, \2, które powodują kopiowanie znaków dopasowanych do fragmentów reguły z 
nawiasów, na wyjście bez zmian. Powyższą regułę należy rozszerzyć jeżeli chcemy dopasować dwa 
wyrazy, np.: (^|[[:punct:][:space:]])IVO[[:space:]]+Software([[:punct:] [:space:]]|$) 
\1iwo softłer\2 
 

Zapis w słowniku usuwający niechciane znaki z tekstu: [!?@#$%*&()]+ 

a

składa się z 

dwóch członów oddzielonych dowolną ilością białych znaków: 

 „

” „

„”

£

background image

5

Znaczniki sterujące interfejsu SAPI5

Obsługa błędów syntezatora mowy

W

tekście podawanym do syntezy można używać znaczników sterujących, które pozwalają 
na modyfikację generowanej mowy w trakcie syntezy. Wszystkie znaczniki mają postać 
znaną z XML. 

Lista znaczników przydatnych podczas pracy z syntezatorem mowy IVONA:

Volume - Przy pomocy znacznika  Volume  można kontrolować głośność głosu. Jeżeli znacznik 

pozostanie pusty to zmiana głośności odnosi się do całego tekstu następującego po znaczniku, 
inaczej wyłącznie do tekstu ujętego w znacznik. Znacznik  Volume  wymaga atrybutu 

evel , 

który określa nowy poziom głośności. Wartość tego atrybutu musi zawierać się w przedziale [0, 
100], gdzie 100 oznacza 100% głośności i jednocześnie jest wartością domyślną. 
Przykład:   

Ala  ma  kota,  <volume  level= 5

>a  kot  ma  Alę.  

Ala  ma  <volume 

level= 50 >kota</volume>, a <volume level= 50 >kot</ volume> ma Alę.

Rate - Znacznik  Rate  pozwala kontrolować szybkość generowanej mowy. Znacznik może być 

pusty, co oznacza, że jego działanie odnosi się do całego następującego po nim tekstu. Znacznik 
Rate wymaga jednego z dwóch atrybutów: speed lub absspeed. Oba atrybuty przyjmują wartości z 
zakresu [-10, 10], gdzie -10 oznacza mowę najwolniejszą. Wartość 0 oznacza prędkość domyślną 
głosu. Atrybut speed zmienia prędkość mowy w sposób względny (czyli w odniesieniu do bieżącej 
prędkości mowy), a absspeed w sposób bezwzględny.
Przykład:  Ala ma kota, <rate absspeed= 5 >a kot ma Alę.   <rate absspeed= -1 >Ala ma <rate 
speed= 1 >kota</rate>, a <rate speed= 1 >kot</rate> ma Alę.

Silence  -  Znacznik  Silence   pozwala  wstawić  ciszę  w  określonym  miejscu  generowanej 

wypowiedzi. Długość wstawianej ciszy wyrażona jest w milisekundach. Znacznik Silence musi być 
pusty i zawierać jeden atrybut msec. 
Przykład:  3  <silence  msec= 2000 />  2  <silence  msec= 2000 />  1  <silence  msec= 2000”/> 
bum.”

Spell - Znacznik  Spell  wymusza literowanie ujętego w nim fragmentu tekstu. Znacznik ten 

nie może być pusty.  Ala ma papugę, która mówi i umie całkiem nieźle wymawiać niektóre literki, 
na przykład <spell>abcd</spell>.

£

£

£

£

„L

„ 0”

„ ”

” „

„ ”

„ ”

G

£

£

łosy  SAPI5  syntezatora  mowy  IVONA  do  zgłaszania  błędów  wykorzystują  mechanizm 
rejestru  zdarzeń  systemu  Windows.  Rejestr  ten  jest  dostępny  w  Panelu  Sterowania/ 
Narzędzia administracyjne/Podgląd Zdarzeń w sekcji Aplikacja

Błędy głosu SAPI5

Wystąpił problem z inicjalizacja interfejsu SAPI5 - nie można zaladowac pliku biblioteki głosu ”

 
Błąd może powstać podczas próby niepoprawnie zainstalowanego głosu syntezatora mowy IVONA, 
któremu brakuje jednego ze składników. Pojawienie się tego błędu oznacza, że dany głos nie będzie 
mógł być używany dopóki problem nie zostanie usunięty. Należy zainstalować dany głos ponownie. 

Interfejs  SAPI5  nie  może  zostać  użyty,  ponieważ  przekroczono  limit  dozwolonych  licencji 

syntez równoleglych.”

Błąd  powstanie  podczas  próby  przeprowadzenia  syntezy  niezgodnej  z  dostępną  licencją. 
Najczęstszą  przyczyną  jego  występowania  jest  próba  przeprowadzenia  większej  liczby 
jednoczesnych syntez niż zezwala na to licencja. Należy zwrócić uwagę na to, że niektóre programy 
korzystające z interfejsu 

5  zajmują  syntezator nawet gdy nie syntezują mowy. Dlatego też, w 

przypadku pojawienia się tego błędu, należy sprawdzić czy nie został uruchomiony inny program 
wykorzystujący dany głos IVONA.

.

SAPI „

background image

W razie pytań lub kłopotów z uruchomieniem produktów firmy IVO Software proszę kontaktować 
się bezpośrednio z działem wsparcia technicznego dla klientów: 

email: support@ivo.pl 

tel: + 48 58 783 49 51 

Wsparcie techniczne

IVO Software Sp. z o.o.
al.Zwycięstwa 96/98, 81-451 Gdynia

fax: +48 

e-mail: ivo@ivo.pl

www: www.ivo.pl; www.ivosoftware.com

tel.: +48 58 783 49 51

58 732 90 91

TM

Kont@kt

6


Document Outline