1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912
|
Description: upstream forgot to include Czech documentation in the release
Forwarded: not-needed
Source: http://git.freebsoft.org/?p=speechd.git;f=doc/speech-dispatcher-cs.texi;h=2d8264
Index: speech-dispatcher/doc/Makefile.am
===================================================================
--- speech-dispatcher.orig/doc/Makefile.am 2013-03-26 21:27:32.786099155 +1100
+++ speech-dispatcher/doc/Makefile.am 2013-05-01 19:46:48.984867302 +1000
@@ -1,7 +1,7 @@
-info_TEXINFOS = ssip.texi speech-dispatcher.texi spd-say.texi
+info_TEXINFOS = ssip.texi speech-dispatcher.texi spd-say.texi speech-dispatcher-cs.texi
EXTRA_DIST = figures
-speech_dispatcher_TEXINFOS = gpl.texi fdl.texi
-speech_dispatcher_cs_TEXINFOS = gpl.texi fdl.texi
+speech_dispatcher_TEXINFOS = gpl.texi fdl.texi speech-dispatcher.texi
+speech_dispatcher_cs_TEXINFOS = gpl.texi fdl.texi speech-dispatcher-cs.texi
ssip_TEXINFOS = gpl.texi fdl.texi
Index: speech-dispatcher/doc/speech-dispatcher-cs.texi
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ speech-dispatcher/doc/speech-dispatcher-cs.texi 2013-05-01 19:39:03.384883744 +1000
@@ -0,0 +1,889 @@
+\input texinfo @c -*-texinfo-*-
+@c %**start of header
+@documentencoding ISO-8859-2
+@documentlanguage cs
+@setfilename speech-dispatcher-cs.info
+@settitle Speech Dispatcher
+@finalout
+@c @setchapternewpage odd
+@c %**end of header
+
+@syncodeindex pg cp
+@syncodeindex fn cp
+@syncodeindex vr cp
+
+@include version-2.texi
+
+@dircategory Sound
+@dircategory Development
+
+@direntry
+* Speech Dispatcher cs: (speechd-cs). Speech Dispatcher (in Czech).
+@end direntry
+
+@titlepage
+@title Speech Dispatcher
+@subtitle Zvldnut Babylonu TTS'
+@subtitle pro Speech Dispatcher @value{VERSION}
+@author Tom@'a@v{s} Cerha <@email{cerha@@brailcom.org}>
+@author Hynek Hanke <@email{hanke@@volny.cz}>
+@author Milan Zamazal <@email{pdm@@brailcom.org}>
+
+@page
+@vskip 0pt plus 1filll
+
+Tento manul se vzathuje ke Speech Dispatcher, verze @value{VERSION}. Jedn se
+vak pouze o uivatelskou st dokumentace a upozorujeme, e tento peklad ji
+nen aktuln! Poskytujeme jej s tm, e mon bude uiten a to zejmna v
+sekcch, kter popisuj obecn koncepty a mylenky projektu, a to tm, kte si
+nemohou pest anglickou dokumentaci. Nikdo by nicmn neml spolhat na
+technick detaily zde uveden, protoe mnoho vc je ji dnes jinak.
+
+Copyright @copyright{} 2001, 2002, 2003, 2006 Brailcom, o.p.s.
+
+@quotation
+Dvme povolen koprovat, distribuovat a/nebo modifikovate tento dokument pod
+podmnkami GNU Free Documentation License, Verze 1.2 nebo jakkoliv novj
+verze vydan Free Software Foundation, bez jakchkoliv Invariant Sections
+(nemnnch sekc), bez Front-Cover Texts (texty na pedn stran oblky) a bez
+Back-Cover Texts (texty na zadn stran oblky). Kopie tto licence je
+piloena v sekci nazvan ,,GNU Free Documentation License''.
+@end quotation
+
+@end titlepage
+
+@ifnottex
+@node Top, vod, (dir), (dir)
+
+Tento manul se vzathuje ke Speech Dispatcher, verze @value{VERSION}. Jedn se
+vak pouze o uivatelskou st dokumentace a upozorujeme, e tento peklad ji
+nen aktuln! Poskytujeme jej s tm, e mon bude uiten a to zejmna v
+sekcch, kter popisuj obecn koncepty a mylenky projektu, a to tm, kte si
+nemohou pest anglickou dokumentaci. Nikdo by nicmn neml spolhat na
+technick detaily zde uveden, protoe mnoho vc je ji dnes jinak.
+
+Copyright @copyright{} 2001, 2002, 2003 Brailcom, o.p.s.
+
+@quotation
+Dvme povolen koprovat, distribuovat a/nebo modifikovate tento dokument pod
+podmnkami GNU Free Documentation License, Verze 1.2 nebo jakkoliv novj
+verze vydan Free Software Foundation; bez jakchkoliv Invariant Sections
+(nemnnch sekc), bez Front-Cover Texts (texty na pedn stran oblky) a bez
+Back-Cover Texts (texty na zadn stran oblky). Kopie tto licence je
+piloena v sekci nazvan ,,GNU Free Documentation License''.
+@end quotation
+@end ifnottex
+
+@ifhtml
+@heading Menu
+@end ifhtml
+
+@menu
+* vod:: Co to je Speech Dispatcher
+* Uivatelsk dokumentace:: Pouvn, konfigurace
+
+* GNU General Public License:: Podmnky koprovn Speech Dispatcher
+* GNU Free Documentation License:: Podmnky koprovn tohoto manulu
+
+* Index of Concepts::
+@end menu
+
+@node vod, Uivatelsk dokumentace, Top, Top
+@chapter vod
+
+@menu
+* Motivace:: Pro Speech Dispatcher?
+* Zkladn design:: Jak to pracuje?
+* Pehled zkladnch rys:: Co vechno um?
+* Souasn stav:: Jak je souasn stav?
+@end menu
+
+@node Motivace, Zkladn design, vod, vod
+@section Motivace
+@cindex Hlavn mylenky, Motivace
+@cindex Filosofie
+
+Projekt Speech Dispatcher se sna poskytnout na zazen nezvislou vrstvu pro
+eovou syntzu. Ml by poskytovat jednoduch rozhran pro klientsk aplikace
+(aplikace, kter chtj mluvit), stejn jako pro ovladae konkrtnch zazen
+(rzn eov syntetizry).
+
+Vysoce kvalitn eov syntza je tu ji dlouho a nyn je pouiteln i pro
+bn uivatele na jejich domcch potach. Obas to pichz jako nutnost,
+obas je to jen dobr vlastnost, aby nkter programy poskytovaly eov
+vstup. Pro syntzu hlasu je tu irok pole vyuit od vukovho software a
+po specializovan systmy, jako jsou napklad nemocnice i laboratoe. Pro
+zrakov postien uivatele je to jedna ze dvou zkladnch cest, jak zskat
+vstup z potae (tou druhou je Braillsk dek).
+
+Existuj rzn eov syntetizry s rznmi schopnostmi. Nkter z nich jsou
+hardwarov, nkter softwarov. Nkter jsou svobodnm software a jsou voln
+dostupn na internetu. Programtoi to maj opravdu tk, kdy chtj sv
+programy rozmluvit, protoe potebuj nejprve najt njak vhodn syntetizr
+(dlouh hodiny experimentovn a tak dle) a potom jej potebuj njak
+zprovoznit s jejich programem. asto mus pst pro tyto programy i hardwarov
+zazen vlastn ovladae a dlaj to znovu a znovu. Snadno si lze pedstavit,
+e se to cel zhrout kdy nevinn uivatel spust dva programy najednou. Kdyby
+pesto nastartovaly oba, budou kiet jeden pes druhho.
+
+Tm je pro programtory velmi obtn implementovat do svch program podporu
+eov syntzy (pro nevidom uivatele, nebo prost pro lep uivatelsk
+rozhran) a je to jeden z dvod, pro pod jet pln nevyuvme toho, co
+eov syntza nabz.
+
+V idelnm svt by programtoi mohli pro eovou syntzu pouvat podobn
+pkazy, jako to dlaj pro textov vstup na obrazovku (printf, puts, ...). V
+idelnm svt by existovalo njak speech_printf(), kter by se staralo o to,
+aby byla zprva pemluvena ve sprvn as bez peruovn ostatnch.
+Programtor by se tak nemusel starat o to, jak je pesn komunikace s eovm
+syntetizrem implementovna. V idelnm svt by byl v kad GNU/Linuxov
+distribuci njak eov syntetizr a njak rozhran starajc se o aplikace,
+kter chtj mluvit, dovolujc uivatelm nastavit si parametry ei a
+poskytujc njak jednoduch rozhran (jako speech_printf()) pomoc njak
+sdlen knihovny pro programtory. Bude to jt dlouh cesta ne se nm
+poda doshnout tohoto stavu vc, ale se Speech Dispatcherem dlme prvn
+krky...
+
+@node Zkladn design, Pehled zkladnch rys, Motivace, vod
+@section Zkladn design
+@cindex Design
+
+V komunikaci mezi vemi rznmi aplikacemi a syntetizry je obrovsk nepodek.
+Proto jsme chtli, aby byl Speech Dispatcher vrstva oddlujc aplikace a
+syntetizry tak, aby se aplikace nemusely starat o syntetizry a syntetizry se
+nemusely starat o interakci s aplikacemi.
+
+Rozhodli jsme se implementovat Speech Dispatcher jako server, kter pijm od
+aplikac pkazy pes protokol nazvan @code{SSIP}, zpracovv je a, pokud je
+to nutn, zavol pslunou funkci danho vstupnho modulu, kter pak
+komunikuje s nkterm z rznch syntetiztor.
+
+Kad klient (aplikace, kter chce mluvit) oteve socketov spojen na Speech
+Dispatcher a vol funkce jako say(), stop(), pause() poskytovan knihovnou
+implementujc tento protokol. Tato sdlen knihovna je stle na stran
+klienta a posl Speech Dispatcheru SSIP pkazy pes oteven socket. Kdy
+pkazy doraz do Dispatchera, ten je zpracuje, pete text, kter by ml bt
+pekn a vlo jej do fronty podle jeho priority. Potom se rozhodne kdy, s
+jakmi parametry (nastavovanmi klientskm programem i uivatelem) a na jakm
+syntetizru zprvu nech pemluvit. Tyto poadavky na mluven jsou pak
+zpracovvny vstupnmi moduly (pluginy) pro rzn hardwarov a softwarov
+syntetizry a pekny nahlas.
+
+@image{figures/architecture,155mm,,Architektura Speech Dispatchera}
+
+Detailn popis programovn klient i serveru je k dispozici v anglickm
+manulu.
+
+@node Pehled zkladnch rys, Souasn stav, Zkladn design, vod
+@section Pehled zkladnch rys
+
+Speech Dispatcher z pohledu uivatele:
+
+@itemize @bullet
+@item snadn konfigurace rznch mluvcch aplikac, centrln sprva
+@item monost voln rozhodovat, jak aplikace bude mluvit s jakm syntetizrem
+@item mn asu vnovanho konfiguraci a ladn rznch aplikac vyuvajcch syntzu
+@item historie zprv pro zrakov postien uivatele
+@end itemize
+
+Speech Dispatcher z pohledu programtora aplikace:
+
+@itemize @bullet
+@item snadn cesta, jak aplikaci rozmluvit
+@item jednotn rozhran k rznm syntetizrm
+@item synchronizace zprv na vy rovni (kategorizace pomoc priorit)
+@item monost nemuset se starat o konfiguraci parametr hlasu
+@end itemize
+
+@node Souasn stav, , Pehled zkladnch rys, vod
+@section Souasn stav
+@cindex Syntetizry
+@cindex Ostatn programy
+
+TODO:
+
+@node Uivatelsk dokumentace, GNU General Public License, vod, Top
+@chapter Uivatelsk dokumentace
+
+@menu
+* Zkladn funkce:: Detailnj popis vech zkladnch funkc
+* Spoutn:: Volby pkazov dky
+* Konfigurace:: Jak zkonfigurovat Speech Dispatcher
+@end menu
+
+@node Zkladn funkce, Spoutn, Uivatelsk dokumentace, Uivatelsk dokumentace
+@section Zkladn funkce
+
+V tto sekci je detailnj popis zkladnch funkc Speech Dispatcheru.
+
+@menu
+* Model priorit zprv:: Zpracovn souasn pchozch zprv
+* Historie zprv:: Ukldn zprv pro pozdj nahldnut
+* Vce vstupnch modul:: Interakce s rznmi syntetizry
+* Autentifikace uivatel:: Autentifikace pro pstup k historii
+@end menu
+
+@node Model priorit zprv, Historie zprv, Zkladn funkce, Zkladn funkce
+@subsection Model priorit zprv
+@cindex priority
+
+Speech Dispatcher neme syntetizovat vechny zprvy, kter do nj pichz z
+prostho dvodu, e zprvy pichzej obyejn rychleji, ne je syntetick hlas
+doke st. Na obrazovce monitoru je v porovnn s jednokanlovm eovm
+vstupem relativn hodn msta. Z toho dvodu pouvme systm nkolika
+priorit zamench na rzn typy zprv.
+
+Mylenka je takov, e lohou programtora klientsk aplikace bude pouze urit
+pro kadou zprvu uritou prioritu odpovdajc typu dan zprvy. Veker
+synchronizace a pepnn mezi tmito zprvami (kter mohou pochzet od rznch
+klient) potom bude zajitno aplikovnm uritch pravidel ve Speech
+Dispatcheru.
+
+@menu
+* Typy priorit::
+* Diagram priorit::
+* Pklady vyuit priorit::
+@end menu
+
+@node Typy priorit, Diagram priorit, Model priorit zprv, Model priorit zprv
+@subsubsection Priority Categories
+
+Speech Dispatcher poskytuje systm pti priorit. Kad zprva obsahuje bu
+explicitn informaci o priorit, nebo j je piazena vchoz priorita.
+
+Prosm podvejte se tak na piloen diagram (dole).
+
+@subsubheading Priorita @code{important}
+@cindex Priorita important
+
+Tato zprva bude pekna okamit, jak doraz do serveru. Nen nikdy
+peruena. Kdy server obdr souasn nkolik rznch zprv tto priority, ty
+jsou uloeny a pekny v poad, ve kterm pily.
+
+Kdy pijde nov zprva priority @code{important} a zrovna se k njak jin
+zprva, tato jin zprva je zahozena. Dal zprvy nich priorit jsou bu
+pozdreny (priorita @code{message} a @code{text}) ne ji neekaj na pekn
+dn zprvy priority @code{important}, nebo jsou zahozeny (priority
+@code{notification} a @code{progress}).
+
+Tyto zprvy by mly bt tak krtk, jak je to jen mon, a mly by bt
+pouvny pouze zdka, protoe blokuj vstup vech ostatnch zprv.
+
+@subsubheading Priorita @code{message}
+@cindex Priorita message
+
+Tato zprva bude pekna, pokud ji ve front neek dn jin zprva
+priority @code{important} nebo @code{message}. V opanm ppad je tato
+zprva pozdrena dokud nebudou vechny pekny. To znamen, e priorita
+@code{message} nezastavuje sama sebe. Kdy ve front ekaj zprvy priorit
+@code{notification} nebo @code{progress} nebo @code{text} kdy pijde zprva
+priority @code{message}, jsou zahozeny.
+
+@subsubheading Priorita @code{text}
+@cindex Priorita text
+
+Tato zprva bude pekna, kdy ve front neek dn zprva priority
+@code{important} nebo @code{message}. Pokud ek, tato nov zprva je
+pozdrena dokud nebudou pedchoz zprvy pekny.
+
+Priorita text perquuje sama sebe. To znamen, e kdy pijde nkolik zprv
+priority text, ty nejsou pekny v poad, ve kterm pily, ale bude vyena
+pouze posledn z nich a ostatn jsou perueny a zahozeny.
+
+Pokud jsou ve front zprvy priorit @code{notification} nebo @code{progress}
+nebo se prv pekvaj, jsou zahozeny.
+
+@subsubheading Priorita @code{notification}
+@cindex Priorita notification
+
+Toto je zprva nzk priority. Pokud ve front ekaj zprvy priorit
+@code{important}, @code{messages}, @code{text} nebo @code{progress} nebo jsou
+prv pekvny, tato nov zprva priority @code{notification} je zruena.
+
+Tato priorita peruuje sama sebe, take kdy pijde najednou vce zprv s
+prioritou @code{notification}, pek se pouze posledn z nich.
+
+@subsubheading Priority @code{progress}
+
+Toto je speciln priorita pro zprvy, kter pichzej krtce po sob a nesou
+informaci o njak probhajc innosti (nap.@ @code{Dokoneno 45%}).
+
+Kdyby nov zprvy peruovaly ostatn (viz. priorita Notification), uivatel by
+nemusel slyet ani jednu zprvu do konce.
+
+Tato priorita se chov stejn jako @code{notification} s vjimkou dvou vc.
+
+@itemize
+@item
+Zprvy tto priority neperuuj jedna druhou. Msto toho, pokud je zrovna
+pekvna jin zprva tto priority, nov pchoz zprva je zahozena.
+@item
+Speech Dispatcher se sna detekovat posledn zprvu v srii pchozch zprv a
+zaruit jej pekn (pro uivatele je dleit slyet zprvu @code{Completed
+100%}, aby vdl, e proces ji skonil). Vdy, kdy ve front ji neek
+dn nov zprva tto priority a posledn pchoz zprva jet nebyla
+pekna, je jej pekn vynuceno s prioritou @code{message}.
+@end itemize
+
+@node Diagram priorit, Pklady vyuit priorit, Typy priorit, Model priorit zprv
+@subsubsection Diagram priorit
+
+@image{figures/priorities,,,Speech Dispatcher architecture}
+@c TODO: Generate a pdf version. (Why? -- Hynek Hanke)
+
+@node Pklady vyuit priorit, , Diagram priorit, Model priorit zprv
+@subsubsection Pklady vyuit priorit
+
+Pklady pouit priority @code{important} jsou:
+
+@itemize
+@item chybov hlky
+@item velmi dleit zprvy
+@item ...
+@end itemize
+
+Pklady pouit priority @code{message} jsou:
+
+@itemize
+@item bn zprvy programu
+@item varovn
+@item ...
+@end itemize
+
+Pklady pouit priority @code{text} jsou:
+
+@itemize
+@item text, na kterm uivatel pracuje
+@item pedtan text
+@item poloky menu
+@item ...
+@end itemize
+
+Pklady pouit priority @code{notification} jsou:
+
+@itemize
+@item mn dleit informace
+@item psmenka pi vkldn
+@item run-time npovda
+@item ...
+@end itemize
+
+Pklady pouit priority @code{progress} jsou:
+
+@itemize
+@item ``dokoneno 15%'', ``dokoneno 16%'', ``dokoneno 17%''
+@item ``Natm zvuky'', ``Natm grafiku'', ``Natm ai'', ...
+@end itemize
+
+@node Historie zprv, Vce vstupnch modul, Model priorit zprv, Zkladn funkce
+@subsection Historie zprv
+@cindex history
+
+Pro nevidom a zrakov postien je dobrou vlastnost, pokud maj monost
+njakm jednoduchm klientem prochzet historii vyslovench zprv.
+
+Nkter mn dleit zprvy jsou pijmuty Speech Dispatcherem bez toho, aby
+byly pekny, protoe jsou potlaeny dleitjmi informacemi. To je
+nedliteln vlastnost kadho eovho rozhran, protoe nen mon podat v
+eovm vstupu tolik informac, kolik se jich vejde na obrazovku. To je jeden
+z hlavnch dvod, pro je vhodn udrovat historii pijatch zprv, aby se
+mohl uivatel podvat, zda mu neulo nco dleitho.
+
+@menu
+* Pstupov prva:: Pstupov prva k historii zprv
+@end menu
+
+@node Pstupov prva, , Historie zprv, Historie zprv
+@subsubsection Access Rights
+@cindex access rights
+
+Aby bylo ochrnno soukrom uivatel, Speech Dispatcher omezuje pstup k
+historii na uritou podmnoinu pijatch zprv. Plat nsledujc pravidla:
+
+@itemize @bullet
+@item
+Vechny zprvy pijat od uritho klientskho spojen jsou tomuto spojen
+pstupny i v historii.
+
+@item
+Vechny zprvy odeslan uritm uivatelem jsou tomuto uivateli pstupny i v
+historii.
+
+@item
+@cindex @code{speechd} uivatel
+@cindex @code{speechd} skupina
+Vechny zprvy zaslan uivatelem @code{speechd} jsou pstupny vem uivatelm
+na danm systmu, pod kterm b Speech Dispatcher ve skupin @code{speechd}.
+
+@item
+dn dal zprvy nejsou pstupn.
+@end itemize
+
+Dv zprvy jsou povaovny za identick jestlie jejich spojen pochzej z
+toho samho potae, uivatelsk jmna jsou stejn a jejich identita me bt
+ovena, jak je popsno v @ref{Autentifikace uivatel}. Pokud neme bt
+uivatelova identita ovena, tento uivatel je povaovn za jinho ne vichni
+pipojen nebo dve pipojen uivatel.
+
+@node Vce vstupnch modul, Autentifikace uivatel, Historie zprv, Zkladn funkce
+@subsection Vce vstupnch modul
+@cindex vstupn modul
+@cindex syntetiztory
+
+Speech Dispatcher podporuje soubn pouvn vce vstupnch modul. Pokud
+tyto moduly poskytuj dobrou synchronizaci, lze je pi ten zprv kombinovat.
+Pokud nap. modul1 mluv anglicky a esky, zatmco modul2 mluv pouze nmecky,
+tak pokud pijde njak zprva v nmin, pouije se modul2, zatmco pro
+ostatn jazyky se pouije modul1. Na druh stran jazyk nen jedinm kritriem
+pro takov rozhodnut. Pesn pravidla pro vbr vstupho modulu mohou bt
+ovlivnna v konfiguranm souboru @file{speechd.conf}.
+
+@node Autentifikace uivatel, , Vce vstupnch modul, Zkladn funkce
+@subsection Autentifikace uivatel
+@cindex Identification Protocol
+@cindex identd
+@cindex RFC 1413
+
+NOTE: Na implementaci tto vlastnosti se pracuje, ale souasn verze ji
+nepodporuje.
+
+Speech Dispatcher neposkytuje dn explicitn autentifikan mechanismus. K
+oven identity uivatl pouvme Identification Protocol definovan v RFC
+1413.
+
+@cindex mapovn uivatl
+V konfiguraci je mon specifikovat mapovn uivatel. To umouje jednat s
+uritmi uivateli jako s jednm a pidlit jim stejn prva (nap. prochzet
+jejich @ref{Historie zprv}).
+
+@node Spoutn, Konfigurace, Zkladn funkce, Uivatelsk dokumentace
+@section Invoking
+
+@subsection Potebn privilegia
+
+Speech Dispatcher me bt obecn spoutn pod obyejnm uivatelem. Snaili
+jsme se jej zabezpeit, jak jen to bylo mon, ale nejsme odbornky na
+potaovou bezpenost a kd me obsahovat nebezpen chyby. Nedoporuujeme
+jej spoutt jako root nebo pod jinm vysoce privilegovanm uivatelem.
+
+Jedin omezen jsou tyto:
+
+@itemize
+@item
+Speech Dispatcher vytv PID file standardn ve
+@file{/var/run/speech-dispatcher.pid}, take @file{/var/run/} mus bt danmu
+uivateli pstupn k zpisu. To me bt zmnno nastavenm volby
+@code{pidpath} pi voln skriptu @code{./configure} pi kompilaci.
+@item
+Kdy je zapnuto logovn, vchoz cesta, kam Speech Dispatcher zapisuje svj
+log, je @file{/var/log/speech-dispatcher.log}. To ale me bt kdykoliv
+penastaveno v hlavnm konfiguranm souboru.
+@end itemize
+
+@subsection Volby pkazov dky
+
+Speech Dispatcher me bt sputn s tmito volbami:
+
+@code{speech-dispatcher [-@{d|s@}] [-l @{1|2|3|4|5@}] [-p=port] | [-v] | [-h]}
+
+@table @code
+@item -d or --run-daemon
+Spust program jako dmona (b v pozad, odpoj se od terminlu, atd.) Toto
+je vchoz chovn.
+
+@item -s or --run-single
+Spust program jako bnou aplikaci bc na poped.
+
+@item -l level or --log-level=level
+Vybere poadovan logovac rove. Logovac rove je slo mezi 0 a 5 (0
+znamen neloguj nic, 5 znamen zapisuj tm ve vetn zpracovvanho textu.)
+Standardn je 3. @xref{rovn logovn}.
+
+Logovac rove 5 by nemla bt pouvna k jinm elm, ne pro hledn chyb
+a to pouze krtkodob. Logy, kter produkuje mohou narst do obrovsk
+velikosti a obsahuj text ten uivateli nezvisle na rznch pstupovch
+prvech, jak plat pro historii. Spoutt server s touto rovn logovn tedy
+me snadno vst k naruen soukrom.
+
+@item -p or --port
+Zad port, na kterm by ml server ekat na klienty. Vchoz je 6560.
+
+@item -v or --version
+Vype informace o verzi Speech Dispatchera. Tak oznm zkladn informace o
+copyrightu.
+
+@item -h or --help
+Vype npovdu o volbch pkazov dky, upozornn o copyrightu
+a emailovou adresu pro zasln oznmen o chybch.
+@end table
+
+
+@node Konfigurace, , Spoutn, Uivatelsk dokumentace
+@section konfigurace
+@cindex konfigurace
+
+Speech Dispatcher me bt konfigurovn na nkolika rznch rovnch. Jedna z
+nich je nastavovn globlnch parametr pes serverov konfiguran soubor.
+Je zde i podpora pro konfiguraci specifickou pro urit klienty.
+
+Nkter aplikace maj vlastn mechanismus nastavovn voleb souvisejcch s
+eovou syntzou. Pro detaily o tchto nastavench se prosm podvejte do
+dokumentace danho programu.
+
+Nsledujc kapitoly se zabvaj pouze konfigurac na stran serveru pes
+konfiguran soubor.
+
+@menu
+* Syntaxe konfiguranho souboru::
+* Volby v konfiguraci::
+* Nastaven vstupnch modul::
+* rovn logovn::
+@end menu
+
+@node Syntaxe konfiguranho souboru, Volby v konfiguraci, Konfigurace, Konfigurace
+@subsection Syntaxe konfiguranho souboru
+
+Pro natn configurace zaloen na textovch souborech pouvme knihovnu
+DotConf, take bude syntaxe nejsp mnoha uivatelm povdom.
+
+Kad z etzcovch konstant, pokud nen uvedeno jinak, by mla bt zakdovna
+v UTF-8. Jmna voleb nepouvaj jin znaky ne standardn ASCII sadu omezenou
+na znaky (@code{a}, @code{b}, ...), pomlky (@code{-}) a podtrtka @code{_}.
+
+Komente a doasn neaktivn volby zanaj znakem @code{#}. Pokud chcete
+takovu volbu zapnout, sta smazat znak komente a nastavit volbu na
+poadovanou hodnotu.
+@example
+# toto je komentar
+# InactiveOption "tato volba je zatim vypla komentarem"
+@end example
+
+etzce jsou uzaveny v uvozovkch.
+@example
+LogFile "/var/log/speech-dispatcher.log"
+@end example
+
+sla jsou zapsna bez uvozovek.
+@example
+Port 6560
+@end example
+
+Pepnae pouvaj On (zapnuto) a Off (vypnuto).
+@example
+Debug Off
+@end example
+
+@node Volby v konfiguraci, Nastaven vstupnch modul, Syntaxe konfiguranho souboru, Konfigurace
+@subsection Configuration options
+
+Vechny dostupn volby jsou zdokumentovny pmo v konfiguranm souboru a jsou
+k nim uvedeny i pklady. Vtina voleb je nastavena na vchoz hodnotu a
+zakomentovna. Pokud je chcete zmnit, posta modifikovat jejich hodnotu a
+smazat symbol komente @code{#}.
+
+@node Nastaven vstupnch modul, rovn logovn, Volby v konfiguraci, Konfigurace
+@subsection Output Modules Configuration
+
+Kad uivatel by si ml zapnout ve sv konfiguraci alespo jeden vstupn
+modul, pokud chce, aby Speech Dispatcher produkoval njak zvukov vstup.
+Kdy nen naten dn vstupn modul, Speech Dispatcher sice nastartuje, bude
+komunikovat s klienty a logovat zprvy do historie, ale nebude produkovat dn
+zvuk.
+
+Kad vstupn modul je teba do Speech Dispatchera nathnout jednou dkou
+``AddModule'' v @file{etc/speechd.conf}. Navc, kad vstupn modul m
+piazen vlastn konfiguran soubor.
+
+@menu
+* Natahovn modul ve speechd.conf::
+* Konfiguran soubory vstupnch modul::
+* Konfigurace generickho vstupnho modulu::
+@end menu
+
+@node Natahovn modul ve speechd.conf, Konfiguran soubory vstupnch modul, Nastaven vstupnch modul, Nastaven vstupnch modul
+@subsubsection Natahovn modul ve speechd.conf
+
+@anchor{AddModule} Kad modul, kter by se ml spustit pi startu Speech
+Dispatchera, mus bt nataen pkazem @code{AddModule} v konfiguraci.
+Vimnte si, e lze nathnout jeden binrn modul vcekrt s rznmi
+konfiguranmi soubory a pod jinmi jmny. To je uiten hlavn pro
+natahovn generickch vstupnch modul. @xref{Konfigurace generickho
+vstupnho modulu}.
+
+@example
+AddModule "@var{module_name}" "@var{module_binary}" "@var{module_config}"
+@end example
+
+@var{module_name} je jmno danho vstupnho modulu.
+
+@var{module_binary} je jmno binrnho spustitelnho souboru tohoto vstupnho
+modulu. To me bt bu cesta absolutn nebo relativn k
+@file{bin/speechd-modules/}.
+
+@var{module_config} je soubor s konfigurac pro tento konkrtn vstupn modul.
+Cesta me bt absolutn i relativn k @file{etc/speech-dispatcher/modules/}.
+Tento parametr je voliteln (nen teba jej uvdt).
+
+@node Konfiguran soubory vstupnch modul, Konfigurace generickho vstupnho modulu, Natahovn modul ve speechd.conf, Nastaven vstupnch modul
+@subsubsection Konfiguran soubory vstupnch modul
+
+Kad vstupn modul je odlin a proto m odlin volby v konfiguraci. Prosm
+prostudujte si komente v danm konfiguranm souboru. Zde je popsno pouze
+nkolik voleb, kter jsou pro nkter vstupn moduly spolen.
+
+@table @code
+@item AddVoice "@var{language}" "@var{symbolicname}" "@var{name}"
+@anchor{AddVoice}
+
+Kad vstupn modul poskytuje njak hlasy a nkdy dokonce podporuje rzn
+jazyky. Z toho dvodu byl zaveden spolen mechanismus, kterm mou bt tyto
+hlasy definovny v konfiguraci. dn modul ovem nen povinen tuto volbu
+pouvat. Nkter syntetiztory, nap. Festival, podporuj symbolick jmna
+SSIP pmo, take konfigurace konkrtnch hlas se provd v syntetiztoru
+samotnm.
+
+Kadmu definovanmu hlasu odpovd pesn jedna dka @code{AddVoice}.
+
+@var{language} je ISO kd jazyka tohoto hlasu (en, cs, de, ...)
+
+@var{symbolicname} je symbolick jmno, pod kterm chcete, aby byl tento hlas
+dostupn. @xref{Standardn hlasy}, pro seznam symbolickch jmen, kter mete
+pout.
+
+@var{name} je jmno specifick pro dan vstupn modul. Prosm podvejte se na
+komente v pslunm konfiguranm souboru v sekci AddModule pro detailnj
+informace.
+
+Nap. definice, kterou v souastnosti pouvme pro Epos (generic) vypad
+takto:
+
+@example
+ AddVoice "cs" "male1" "kadlec"
+ AddVoice "sk" "male1" "bob"
+@end example
+
+@item ModuleDelimiters "@var{delimiters}", ModuleMaxChunkLength @var{length}
+
+asto se vstupn modul nesna vysyntetizovat cel pchoz text najednou, ale
+msto toho jej nejprve rozee na men kousky (vty, sti vt) a ty potom
+postupn odesl na syntzu. Tento pstup, vyuvan nktermi vstupnmi
+moduly, je mnohem rychlej, ale na druh stran zase limituje schopnost
+syntetizru poskytnout dobrou intonaci.
+
+Z toho dvodu mte obyejn monost zkonfigurovat si na jakch znacch
+(@var{delimiters}) by se ml text rozdlit na men sti (pokud jsou
+nsledovny njakm whitespace znakem). Druh volba (@var{length}) udv, po
+kolika znacch by se ml text nsiln rozdlit, pokud nebyl nalezen dn
+delimiter.
+
+Pokud tato dv pravidla zpsnte, dostanete lep rychlost, ale vzdte se
+urit sti kvality intonace. Take napklad pro pomalej potae
+doporuujeme do @var{delimiters} vloit i rku (,), aby byl text rozdlen i na
+stech vty, zatmco na rychlejch potach je lep tam rku nedvat,
+take do syntetizru vdy doraz cel souvt.
+
+To sam plat o @code{MaxChunkLength}. Pro rychlej potae
+je lep nastavit vt hodnotu.
+
+Napklad vchoz hodnoty ve vstupnm modulu pro Festival jsou:
+
+@example
+ FestivalMaxChunkLength 300
+ FestivalDelimiters ".?!;,:"
+@end example
+
+Vstupn modul se me tak rozhodnout dlit vty na delimiters pouze pokud ty
+jsou nsledovny mezerou. Take napklad ``file123.tmp'' by rozdleno nebylo,
+ale vta ``The horse raced around the fence, that was lately painted green,
+fell.'' by rozdlena byla (to je mimochodem velmi zajmav vta).
+@end table
+
+@node Konfigurace generickho vstupnho modulu, , Konfiguran soubory vstupnch modul, Nastaven vstupnch modul
+@subsubsection Konfigurace generickho vstupnho modulu
+
+Generick vstupn modul uivatelm dovoluje jednodue si napsat vlastn
+jednoduch vstupn modul pro syntetizry, kter maj rozhran ve form
+jednoduchho dkovho klienta, pouze modifikac konfiguranho souboru. Tmto
+zpsobem nemus pst dn specifick kd v C a uivatel si mohou pidvat
+podporu pro vstupn zazen i kdy neum programovat. @xref{AddModule}.
+
+Klov st kadho generickho vstupnho modulu je definice etzce, kter
+se m spoutt.
+
+@defvr {Konfigurace generickho modulu} GenericExecuteSynth "@var{execution_string}"
+
+@code{execution_string} je pkaz, kter by ml bt zavoln v shellu, kdy je
+poteba nco ct. Ve skutenosti to me bt vce jak jeden pkaz, dohromady
+zetzen opertorem @code{&&}. Kdy bude vstupn modul chtt pekvn
+zprvy zastavit, zale tmto procesm signl KILL, take je dleit, aby
+pouit pkazy po obdren KILL okamit pestaly mluvit. (Na vtin
+GNU/Linuxovch systm m tuto vlastnost utilita @code{play})
+
+V @code{execution_string} mete vyut tchto promnnch, kter budou
+nahrazeny poadovanmi hodnotami, ne bude pkaz vykonn.
+
+@itemize
+@item @code{$DATA}
+Text, kter by ml bt pekn. Znaky etzce, kter by njak interferovali
+se zpracovnm v bashi budou automaticky nahrazeny odpovdajcmi escape
+sekvencemi. Asi bude ale nutn uvst kolem tto promnn uvozovky
+(nap. takto: @code{\"$DATA\"}).
+@item @code{$LANG}
+Identifikan etzec jazyka (ten je definovn pomoc GenericLanguage).
+@item @code{$VOICE}
+Identifikan etzec hlasu (ten je definovn pomoc AddVoice).
+@item @code{$PITCH}
+Poadovan vka hlasu (desetinn slo definovan v GenericPitchAdd a v
+GenericPitchMultiply)
+@item @code{$RATE}
+Poadovan rychlost hlasu (desetinn slo definovan v GenericRateAdd a v
+GenericRateMultiply)
+@end itemize
+
+Tady je pklad z @file{etc/speech-dispatcher/modules/epos-generic.conf}
+@example
+GenericExecuteSynth \
+"epos-say -o --language $LANG --voice $VOICE --init_f $PITCH --init_t $RATE \
+\"$DATA\" | sed -e s+unknown.*$++ >/tmp/epos-said.wav && play /tmp/epos-said.wav >/dev/null"
+@end example
+@end defvr
+
+@defvr {Konfigurace generickho modulu} AddVoice "@var{language}" "@var{symbolicname}" "@var{name}"
+@xref{AddVoice}.
+@end defvr
+
+@defvr {Konfigurace generickho modulu} GenericLanguage "iso-code" "string-subst"
+
+Definuje, jak etzec @code{string-subst} by ml bt nahrazen za @code{$LANG}
+pro dan @code{iso-code} ISO kd jazyka.
+
+Opt pklad z Epos generic:
+@example
+GenericLanguage "en" "english"
+GenericLanguage "cs" "czech"
+GenericLanguage "sk" "slovak"
+@end example
+@end defvr
+
+@defvr {Konfigurace generickho modulu} GenericRateAdd @var{num}
+@end defvr
+@defvr {Konfigurace generickho modulu} GenericRateMultiply @var{num}
+@end defvr
+@defvr {Konfigurace generickho modulu} GenericPitchAdd @var{num}
+@end defvr
+@defvr {Konfigurace generickho modulu} GenericPitchMultiply @var{num}
+Tyto parametry nastavuj konverzi pro vpoet rychlosti a vky.
+(@code{$RATE} a @code{$PITCH}).
+
+Vsledn rychlost (nebo vka) je dna nsledujcm vzorcem:
+@example
+ (speechd_rate * GenericRateMultiply) + GenericRateAdd
+@end example
+kde speechd_rate je hodnota mezi -100 (nejni) a +100 (nejvy). Je teba
+definovat njakou rozumnou konverzi pro dan syntetizr.
+
+(Hodnoty v GenericNcoMultiply jsou vynsobeny stem, protoe stvajc verze
+DotConfu nepodporuje desetinn sla. Mete tedy pst 0.85 jako 85 atd.)
+@end defvr
+
+@node rovn logovn, , Nastaven vstupnch modul, Konfigurace
+@subsection rovn logovn
+
+Ve Speech Dispatcheru je 6 rznch rovn logovn. 0 znamen dn logovn,
+zatmco 5 znamen vypisovat tm vechny dostupn informace.
+
+@itemize @bullet
+
+@item rove 0
+@itemize @bullet
+@item dn informace
+@end itemize
+
+@item rove 1
+@itemize @bullet
+@item Informace o startu a vypnn.
+@end itemize
+
+@item rove 2
+@itemize @bullet
+@item Informace o chybch, kter nastaly.
+@item Alokace a uvolovn zdroj pi startu a pi exitu.
+@end itemize
+
+@item rove 3
+@itemize @bullet
+@item Informace o pijmn/odeprn/zavrn klientskch spojen.
+@item Informace o neplatnch SSIP pkazech od klient.
+@end itemize
+
+@item rove 4
+@itemize @bullet
+@item Je vypisovn kad pijat pkaz
+@item Informace o zpracovvn vstupu
+@item Informace o ukldn zprv do front
+@item Informace o fungovn historie, zvukovch ikon, atd.
+facilities.
+@item Informace o prci vlkna speak()
+@end itemize
+
+@item rove 5
+(Ta slou pouze pro ladc ely a me vypisovat opravdu *mnoho*
+dat. Pouvejte opatrn.)
+@itemize @bullet
+@item Vechna obdren data jsou vypisovna (zprvy od klient)
+@item Ladc informace.
+@end itemize
+@end itemize
+
+@appendix Standardn hlasy
+@anchor{Standardn hlasy}
+
+@table @code
+@item MALE1
+@item MALE2
+@item MALE3
+@item FEMALE1
+@item FEMALE2
+@item FEMALE3
+@item CHILD_MALE
+@item CHILD_FEMALE
+@end table
+
+Skuten dostupnost tchto hlas nen zaruena, ale pkaz @code{SET SELF
+VOICE} mus akceptovat jakkoliv z nich. Pokud nen dan hlas dostupn, je
+mapovn na jin hlas vstupnm modulem.
+
+@node GNU General Public License, GNU Free Documentation License, Uivatelsk dokumentace, Top
+@appendix GNU General Public License
+@center Version 2, June 1991
+@cindex GPL, GNU General Public License
+
+@include gpl.texi
+
+
+@node GNU Free Documentation License, Index of Concepts, GNU General Public License, Top
+@appendix GNU Free Documentation License
+@center Version 1.2, November 2002
+@cindex FDL, GNU Free Documentation License
+
+@include fdl.texi
+
+@node Index of Concepts, , GNU Free Documentation License, Top
+@unnumbered Index of Concepts
+
+@cindex tail recursion
+@printindex cp
+
+@bye
+
+@c LocalWords: texinfo setfilename speechd settitle finalout syncodeindex pg
+@c LocalWords: setchapternewpage cp fn vr texi dircategory direntry titlepage
+@c LocalWords: Cerha Hynek Hanke vskip pt filll insertcopying ifnottex dir fd
+@c LocalWords: API SSIP cindex printf ISA pindex Flite Odmluva FreeTTS TTS CR
+@c LocalWords: src struct gchar gint const OutputModule intl FDSetElement len
+@c LocalWords: fdset init flite deffn TFDSetElement var int enum EVoiceType
+@c LocalWords: sayf ifinfo verbatiminclude ref UTF ccc ddd pxref LF cs conf
+@c LocalWords: su AddModule DefaultModule xref identd printindex Dectalk GTK
+
+@c speechd.texi ends here
+@c LocalWords: emph soundcard precission archieved succes
|