<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
  <!ENTITY ktts "<application
>KTTS</application
>">
  <!ENTITY kappname "&ktts;">
  <!ENTITY package "kdeaccessibility">
  <!ENTITY mbrola "<application
>MBROLA</application
>">
  <!ENTITY % imageobjectco.module "INCLUDE">
  <!ENTITY % addindex "IGNORE">
  <!ENTITY % Ukrainian "INCLUDE">
]>
<!-- Note to translators: KTTSD is meant to be built under KDE
     versions 3.2 and later.  Please avoid entities that won't
     be defined under those KDE versions.  Thanks.
-->

<!-- kdoctemplate v0.9 January 10 2003
     Changes to comments to clarify entity usage January 10 2003
     Minor update to "Credits and Licenses" section on August 24, 2000
     Removed "Revision history" section on 22 January 2001
     Changed to Installation/Help menu entities 18 October 2001
     Other minor cleanup and changes 18 October 2001 
     FPI change and minor changes November 2002 -->

<!--
This template was designed by: David Rugge davidrugge@mindspring.com
with lots of help from: Eric Bischoff ebisch@cybercable.tm.fr
and Frederik Fouvry fouvry@sfs.nphil.uni-tuebingen.de
of the KDE DocBook team.

You may freely use this template for writing any sort of KDE documentation.
If you have any changes or improvements, please let us know.

Remember:
- in XML, the case of the <tags
> and attributes is relevant ;
- also, quote all attributes.

Please don't forget to remove all these comments in your final documentation,
thanks ;-).
-->

<!-- ................................................................ -->

<!-- The language must NOT be changed here. -->
<!-- If you are writing original documentation in a language other -->
<!-- than English, change the language above ONLY, not here -->
<book lang="&language;">

<!-- This header contains all of the meta-information for the document such
as Authors, publish date, the abstract, and Keywords -->

<bookinfo>
<title
>Підручник з &ktts;</title>

<authorgroup>
<author
><personname
> <firstname
>Gary</firstname
> <othername
>R.</othername
> <surname
>Cramblitt</surname
> </personname
> <email
>garycramblitt@comcast.net</email
> </author>

<othercredit role="translator"
><firstname
>Юрій</firstname
><surname
>Чорноіван</surname
><affiliation
><address
><email
>yurchor@ukr.net</email
></address
></affiliation
><contrib
>Переклад українською</contrib
></othercredit
> 

</authorgroup>

<copyright>
<year
>2004-2005</year>
<holder
>Gary R. Cramblitt</holder>
</copyright>
<!-- Translators: put here the copyright notice of the translation -->
<!-- Put here the FDL notice.  Read the explanation in fdl-notice.docbook 
     and in the FDL itself on how to use it. -->
<legalnotice
>&FDLNotice;</legalnotice>

<!-- Date and version information of the documentation
Don't forget to include this last date and this last revision number, we
need them for translation coordination !
Please respect the format of the date (YYYY-MM-DD) and of the version
(V.MM.LL), it could be used by automation scripts.
Do NOT change these in the translation. -->

<date
>2005-07-31</date>
<releaseinfo
>1.05.00</releaseinfo>

<!-- Abstract about this handbook -->

<abstract>
<para
>&ktts; — це система озвучування тексту для &kde; — заснована на додатках служба, яка надає можливість будь-якій програмі &kde; (або програмі, що не належить до &kde;) вимовляти текст за допомогою інтерфейсу &DCOP;. </para>

<para
>&ktts; спрямовано на реалізацію програмного інтерфейсу для вимовляння тексту у &kde;.</para>

</abstract>

<!-- This is a set of Keywords for indexing by search engines.
Please at least include KDE, the KDE package it is in, the name
 of your application, and a few relevant keywords. -->

<keywordset>
<keyword
>KDE</keyword>
<keyword
>доступність</keyword>
<keyword
>kdeaccessibility</keyword>
<keyword
>TTS</keyword>
<keyword
>Синтез мовлення з тексту</keyword>
<keyword
>KTTSD</keyword>
<keyword
>kttsmgr</keyword>
<keyword
>festival</keyword>
<keyword
>flite</keyword>
<keyword
>hadifix</keyword>
<keyword
>MBROLA</keyword>
<keyword
>freetts</keyword>
<keyword
>epos</keyword>
<keyword
>SSML</keyword>
</keywordset>

</bookinfo>

<!-- The contents of the documentation begin here.  Label
each chapter so with the id attribute. This is necessary for two reasons: it
allows you to easily reference the chapter from other chapters of your
document, and if there is no ID, the name of the generated HTML files will vary
from time to time making it hard to manage for maintainers and for the CVS
system. Any chapter labelled (OPTIONAL) may be left out at the author's
discretion. Other chapters should not be left out in order to maintain a
consistent documentation style across all KDE apps. -->

<!-- ====================================================================== -->

<chapter id="introduction">
<title
>Вступ</title>

<!-- The introduction chapter contains a brief introduction for the
application that explains what it does and where to report
problems. Basically a long version of the abstract.  Don't include a
revision history. (see installation appendix comment) -->

<para
>&ktts; — це підсистема у &kde; для перетворення тексту на мовлення (TTS). Ця підсистема надає у розпорядження програмістів &kde; звичайний API, який забезпечує можливості перетворення тексту на мовлення у програмах. Крім того, програма надає деякі цікаві можливості і звичайним користувачам.</para>

<para
>Можливості для користувачів:</para>

<itemizedlist>
<listitem
><para
>Читання уголос текстового файла.</para
></listitem>
<listitem
><para
>Читання уголос сповіщень про події &kde; (KNotify).</para
></listitem>
<listitem
><para
>Читання уголос всіх текстових частин веб-сторінки у &konqueror;.</para
></listitem>
<listitem
><para
>Читання уголос всіх текстових частин у текстовому редакторі &kate;, зокрема, у випадках, коли &kate; вбудовано до іншої програми &kde;.</para
></listitem>
<listitem
><para
>Довгий текст розбивається на речення. Користувач може наказати програмі повторити речення, абзац, повертатися у відтворенні назад, призупиняти і зупиняти відтворення.</para
></listitem>
<listitem
><para
>Виведення звуку за допомогою &arts;, ALSA, GStreamer (версії 0.8.7 або пізнішої) або aKode.</para
></listitem>
<listitem
><para
>Налаштовані користувачем фільтри заміни слів, що вимовляються неправильно, вибір синтезаторів мовлення та перетворення документів XHMTL/&XML;.</para
></listitem>
</itemizedlist>

<para
>Можливості для програмістів:</para>

<itemizedlist>
<listitem
><para
>Система пріоритетів для виводу екранного засобу для читання, показ попереджень і повідомлень без переривання читання звичайних текстів.</para
></listitem>
<listitem
><para
>Заснована на додатках архітектура, призначена для підтримки широкого кола рушіїв синтезу мовлення з тексту і драйверів.</para
></listitem>
<listitem
><para
>Підтримка синтезу мовлення з командного рядка (або за допомогою скриптів оболонки) з використанням засобів &DCOP; &kde;.</para
></listitem>
<listitem
><para
>Легкий і простий у користуванні інтерфейс для програм, які створюють інформацію, яку слід озвучити.</para
></listitem>
<listitem
><para
>Програмам не потрібно самостійно вирішувати проблеми конкуренції у боротьбі за пристрій виведення звуку.</para
></listitem>
<listitem
><para
>У МАЙБУТНЬОМУ: підтримка мов розмітки мовлення, зокрема, VoiceXML, Sable, &Java; Speech Markup Language (JSML), і Speech Markup Meta-language (SMML).</para
></listitem>
<listitem
><para
>У МАЙБУТНЬОМУ: обмежена підтримка вбудованих позначок мовлення.</para
></listitem>
<listitem
><para
>Асинхронна робота для запобігання блокуванню системи.</para
></listitem>
</itemizedlist>

<para
>Насправді, &ktts; складається з декількох програм: <variablelist>

<varlistentry>
<term
><command
>kttsd</command
></term>
<listitem
><para
>фонова служба синтезу тексту з мовлення &kde;, яка не є програмою з графічним інтерфейсом. Ця служба забезпечує синтез мовлення для програм за допомогою &DCOP;. </para
></listitem
></varlistentry>

<varlistentry>
<term
><command
>kttsmgr</command
></term>
<listitem
><para
>програма з графічним інтерфейсом, призначена для налаштування і керування kttsd. kttsmgr показує піктограму у системному лотку. </para
></listitem
></varlistentry>

<varlistentry>
<term
><command
>libkhtmlkttsdplugin</command
></term>
<listitem
><para
>додаток до переглядача Тенет &konqueror;, який надає змогу прочитати уголос частину тексту на веб-сторінці. </para
></listitem
></varlistentry>

<varlistentry>
<term
><command
>ktexteditor_kttsd</command
></term>
<listitem
><para
>додаток до текстового редактора &kate;, який надає змогу прочитати уголос частину або весь текстовий файл, який редагується. </para
></listitem
></varlistentry>

</variablelist>
</para>

<!-- ...................................................................... -->

<sect1 id="support">
<title
>Підтримка</title>
<para
>Окрім бази даних Bugzilla &kde; ( <ulink url="http://bugs.kde.org/"
>http://bugs.kde.org/</ulink
> ), обговорення &ktts; можна проводити у списку листування kde-accessibility. Підписатися на листи цього списку можна за адресою <ulink url="https://mail.kde.org/mailman/listinfo/kde-accessibility"
> https://mail.kde.org/mailman/listinfo/kde-accessibility</ulink
>. З розробниками можна поспілкуватися у IRC (irc.kde.org, канал #kde-accessibility). </para>
</sect1>

</chapter>

<!-- ====================================================================== -->

<chapter id="using-kapp">
<title
>Користування &ktts;</title>

<para>
<warning
><para
>Перш ніж почати користуватися &ktts;, вам слід встановити принаймні один з рушіїв синтезу мовлення з тексту і переконатися, що він працює належним чином. Щоб дізнатися як це зробити, прочитайте розділ <xref linkend="installation"/>. </para
></warning
></para>

<!-- ...................................................................... -->


<sect1 id="starting-kttsmgr">
<title
>Як запустити <command
>kttsmgr</command
></title>

<para
>Щоб запустити систему &ktts;, введіть таку команду у &konsole;: </para>

<para
><userinput
>kttsmgr</userinput
></para>

<para
>або виберіть пункт kttsmgr у меню &kde;.</para>

<para
>Якщо ви запустили <command
>kttsmgr</command
> вперше, або якщо ви ще не налаштували жодного диктора, буде відкрито вікно <guilabel
>Диктори</guilabel
>. Перегляньте розділ <xref linkend="configure-plugin"/>. Якщо ж ви вже налаштували принаймні одного диктора, відкриється вікно <guilabel
>Загального</guilabel
> налаштування. Перегляньте розділ <xref linkend="general"/>.</para>

</sect1>

<!-- ...................................................................... -->


<sect1 id="configure-plugin">
<title
>Налаштування додатків синтезу (дикторів)</title>

<para
>У більшості синтезаторів мовлення з тексту (TTS) можна здійснювати синтез мовлення декількома голосами різних статей, різної гучності і з різною швидкістю. Ви можете налаштувати декілька екземплярів синтезатора. Кожна з комбінацій мови, синтезатора, голосу, статі, гучності і швидкості називається диктором. Перед запуском &ktts; і початком читання тексту вам слід налаштувати принаймні одного диктора.</para>

<note
><para
>Декілька дикторів для одного синтезатора подібні до декількох черг друку для одного фізичного принтера.</para
></note>

<para
>Коли програми надсилають текст до &ktts;, ці програми можуть вказувати атрибути бажаного диктора для синтезу. Наприклад, програма може надіслати запит на англомовного диктора жіночої статі. Якщо ви налаштували англомовного диктора жіночої статі, буде використано цього диктора, у іншому випадку буде обрано найближчого відповідного диктора. Щоб дізнатися більше про те, як &ktts; обирає дикторів, перегляньте розділ <xref linkend="filters"/>.</para>

<para
>Коли ви перейдете на вкладку <guilabel
>Диктори</guilabel
> у <command
>kttsmgr</command
>, буде відкрито вікно <guilabel
>Диктори</guilabel
>. Це вікно буде автоматично відкрито, якщо ви запустили <command
>kttsmgr</command
> без налаштування жодного диктора.</para>

<para>
<screenshot>
<screeninfo
>Керування синтезом мовлення з тексту у &kde; (вкладка «Диктори»).</screeninfo>
	<mediaobjectco>
		<imageobjectco>
			<areaspec units="calspair">
				<area id="pt-talker-1" coords="1 1"/>
				<area id="pt-talker-2" coords="1 1"/>
				<area id="pt-talker-3" coords="1 1"/>
				<area id="pt-talker-4" coords="1 1"/>
				<area id="pt-talker-5" coords="1 1"/>
				<area id="pt-talker-6" coords="1 1"/>
			</areaspec>
			<imageobject>
				<imagedata fileref="talkers.png" format="PNG"/>
			</imageobject>
		</imageobjectco>
		<textobject>
			<phrase
>Керування синтезом мовлення з тексту у &kde; (вкладка «Диктори»).</phrase>
		</textobject>
	</mediaobjectco>
</screenshot>
</para>

<para>
<calloutlist>
<callout arearefs="pt-talker-1"
><para
>Натисніть, щоб додати нового диктора.</para
></callout>
<callout arearefs="pt-talker-2"
><para
>На цій вкладці буде показано список всіх налаштованих <guilabel
>Дикторів</guilabel
>. <guilabel
>Дикторів</guilabel
> з найвищим пріоритетом буде показано у верхній частині списку. Диктора, запис якого знаходиться на вершині списку, буде використано для вимовляння тексту, якщо програма не вкаже параметрів диктора.</para
></callout>
<callout arearefs="pt-talker-3"
><para
>Натисніть пункт диктора у списку, щоб виділити його, а потім натисніть цю кнопку, щоб вилучити диктора.</para
></callout>
<callout arearefs="pt-talker-4"
><para
>Натисніть пункт диктора у списку, щоб виділити його, а потім натисніть цю кнопку, щоб показати діалогове вікно налаштування додатка синтезу. Докладнішу інформацію можна знайти далі за текстом.</para
></callout>
<callout arearefs="pt-talker-5"
><para
>Натисніть пункт диктора у списку, щоб виділити його, а потім натисніть цю кнопку, щоб пересунути позначку диктора на один рядок нижче у списку. Чим нижче стоятиме позначка диктора у списку, тим нижчим є пріоритет цього диктора.</para
></callout>
<callout arearefs="pt-talker-6"
><para
>Натисніть одну з цих кнопок, щоб застосувати зміни, які ви виконали з запущеною системою &ktts;.</para
></callout>
</calloutlist>
</para>

<para
>Після натискання кнопки <guibutton
>Додати</guibutton
> відкривається діалогове вікно <guilabel
>Додати диктора</guilabel
>.</para>

<para>
	<screenshot>
		<screeninfo
>Діалогове вікно додавання диктора.</screeninfo>
		<mediaobjectco>
			<imageobjectco>
				<areaspec units="calspair">
					<area id="pt-addtalker-1" coords="1 1"/>
					<area id="pt-addtalker-2" coords="1 1"/>
					<area id="pt-addtalker-3" coords="1 1"/>
				</areaspec>
				<imageobject>
					<imagedata fileref="addtalker.png" format="PNG"/>
				</imageobject>
			</imageobjectco>
			<textobject>
				<phrase
>Діалогове вікно додавання диктора</phrase>
			</textobject>
		</mediaobjectco>
	</screenshot>
</para>

<para>
<calloutlist>
<callout arearefs="pt-addtalker-1"
><para
>Ви можете обрати додаток синтезу мовлення або за назвою <guilabel
>Синтезатора</guilabel
>, або за <guilabel
>Мовою</guilabel
>, якою вимовлятиметься текст. Просто переставте перемикач на відповідне поле. Якщо перемикач буде встановлено навпроти пункту <guilabel
>Мова</guilabel
>, у списку <guilabel
>Мова</guilabel
> буде показано всі мови, які підтримуються всіма наявними синтезаторами, а у полі <guilabel
>Синтезатор</guilabel
> буде показано лише ті синтезатори, які підтримують синтез обраною мовою. Якщо ж перемикач буде встановлено навпроти пункту <guilabel
>Синтезатор</guilabel
>, у полі <guilabel
>Синтезатор</guilabel
> буде показано всі наявні синтезатори, а у полі <guilabel
>Мова</guilabel
> — лише мови, які підтримуються обраним синтезатором.</para
></callout>
<callout arearefs="pt-addtalker-2"
><para
>Тут ви можете обрати мову і додаток синтезу.</para
></callout>
<callout arearefs="pt-addtalker-3"
><para
>Після клацання більшість з додатків синтезу буде налаштовано автоматично, тобто буде обрано типові налаштування. У списку на сторінці <guilabel
>Диктори</guilabel
> з’явиться запис нового диктора. Натисніть кнопку <guibutton
>Редагувати</guibutton
>, щоб переглянути або змінити налаштування диктора.</para
></callout>
</calloutlist>
</para>

<para
>Після натискання кнопки <guibutton
>Додати</guibutton
> на вкладці <guilabel
>Диктори</guilabel
> і додавання диктора, якого не можна налаштувати автоматично, або натискання кнопки <guibutton
>Редагувати</guibutton
> відкриється вікно <guilabel
>Налаштування диктора</guilabel
>. Пункти, показані у вікні <guilabel
>Налаштування диктора</guilabel
> будуть різними для різних дикторів. Нижче наведено приклад налаштування інтерактивного додатка Festival. Щоб дізнатися про особливості налаштування інших додатків, прочитайте розділ <xref linkend="configuration"/>.</para>

<para>
<screenshot>
<screeninfo
>Налаштування диктора</screeninfo>
	<mediaobjectco>
		<imageobjectco>
			<areaspec units="calspair">
				<area id="pt-prop-1" coords="1 1"/>
				<area id="pt-prop-2" coords="1 1"/>
				<area id="pt-prop-3" coords="1 1"/>
				<area id="pt-prop-4" coords="1 1"/>
				<area id="pt-prop-5" coords="1 1"/>
				<area id="pt-prop-6" coords="1 1"/>
				<area id="pt-prop-7" coords="1 1"/>
			</areaspec>
			<imageobject>
				<imagedata fileref="festivalintconf.png" format="PNG"/>
			</imageobject>
		</imageobjectco>
		<textobject>
			<phrase
>Налаштування диктора</phrase>
		</textobject>
	</mediaobjectco>
</screenshot>
</para>

<para>
<calloutlist>
<callout arearefs="pt-prop-1"
><para
>Тут вкажіть шлях до виконуваного файла програми Festival. Якщо Festival знаходиться у теці, яка описана у змінній середовища PATH, просто введіть <userinput
><replaceable
>festival</replaceable
></userinput
>.</para
></callout>
<callout arearefs="pt-prop-2"
><para
>Натисніть, щоб програма автоматично виявила доступні голоси.</para
></callout>
<callout arearefs="pt-prop-3"
><para
>Виберіть голос.</para
></callout>
<callout arearefs="pt-prop-4"
><para
>Виберіть кодування символів тексту, які буде надіслано до Festival. Для голосів, які відомі &ktts;, цей параметр буде обрано автоматично. Загалом кажучи, для західноєвропейських мов використовують кодування ISO 8859-1. Для східноєвропейських мов, таких як чеська або словацька, використовують кодування ISO 8859-2.</para
></callout>
<callout arearefs="pt-prop-5"
><para
>Натисніть для перевірки. Ви маєте почути вимовлене тестове речення.</para
></callout>
<callout arearefs="pt-prop-6"
><para
>Скористайтесь засобами керування для встановлення рівня гучності, швидкості вимови і тону синтезованого мовлення. Якщо якийсь з цих засобів керування буде вимкнено (показано сірим кольором), обраний вами голос не підтримує зміну відповідного параметра.</para
></callout>
<callout arearefs="pt-prop-7"
><para
>Деякі з голосів, зокрема голоси MultiSyn, є настільки великими, що потрібно декілька секунд для їх завантаження. Позначення цього пункту призведе до того, що ці голоси завантажуватимуться під час запуску KTTSD, таким часом буде зменшено час (але ціною більшого використання пам’яті) перед початком синтезу першого речення.</para
></callout>
</calloutlist>
</para>

<para
>Натисніть кнопку <guibutton
>Гаразд</guibutton
>, щоб зберегти параметри налаштування диктора.</para>

<warning
><para
>Не забудьте натиснути кнопку <guibutton
>Застосувати</guibutton
>, інакше зміни у запущеній системі &ktts; не набудуть чинності. </para
></warning>

<para
>Якщо перевірка пройшла успішно, ви майже готові до використання &ktts;. Тепер поверніться на вкладку <guilabel
>Загальне</guilabel
> і позначте пункт <guilabel
>Увімкнути систему синтезу мовлення з тексту (KTTSD)</guilabel
>. Позначення цього пункту запустить фонову службу синтезу мовлення з тексту &kde;. Див. <xref linkend="general"/>. Тепер ви можете використовувати &ktts; для вимовляння тексту. Перейдіть на вкладку <guilabel
>Завдання</guilabel
>, для створення і керування завданнями з вимовляння тексту. Див. <xref linkend="jobmgr"/>. </para>

</sect1>

<!-- ...................................................................... -->


<sect1 id="general">
<title
>Запуск KTTSD і встановлення загальних параметрів</title>

<para
>Після того, як ви налаштуєте принаймні одного диктора, ви можете запустити систему синтезу мовлення з тексту &kde;. Натисніть заголовок вкладки <guilabel
>Загальне</guilabel
>. Буде відкрито сторінку <guilabel
>Загальне</guilabel
>. На цій сторінці ви також можете встановити деякі загальні параметри. </para>

<para>
	<screenshot>
		<screeninfo
>Керування синтезатором мовлення з тексту &kde; (вкладка «Загальне»).</screeninfo>
		<mediaobjectco>
			<imageobjectco>
				<areaspec units="calspair">
					<area id="pt-gen-1" coords="1 1"/>
					<area id="pt-gen-2" coords="1 1"/>
					<area id="pt-gen-3" coords="1 1"/>
					<area id="pt-gen-4" coords="1 1"/>
                    <area id="pt-gen-5" coords="1 1"/>
                    <area id="pt-gen-6" coords="1 1"/>
				</areaspec>
				<imageobject>
					<imagedata fileref="general.png" format="PNG"/>
				</imageobject>
			</imageobjectco>
			<textobject>
				<phrase
>Керування синтезатором мовлення з тексту &kde; (вкладка «Загальне»)</phrase>
			</textobject>
		</mediaobjectco>
	</screenshot>
</para>

<para>
<calloutlist>
<callout arearefs="pt-gen-1"
><para
>Позначте цей пункт, щоб задіяти систему &ktts;. Позначення цього пункту запускає фонову службу синтезу мовлення з тексту &kde; (KTTSD). Якщо KTTSD буде запущено, у вікні з’явиться вкладка <guilabel
>Завдання</guilabel
>. Одразу після запуску KTTSD ви можете розпочати створення і виконання завдань з вимовляння тексту. Див. <xref linkend="jobmgr"/>. Зняття позначки призведе до зупинки KTTSD і вимикання системи синтезу мовлення з тексту &kde;. <note
><para
>Якщо позначки навпроти цього пункту немає, ви ще не налаштували жодного диктора (або ви забули натиснути кнопку <guibutton
>Застосувати</guibutton
>). Див. <xref linkend="configure-plugin"/>.</para
></note>
</para
></callout>
<callout arearefs="pt-gen-2"
><para
>Якщо позначено цей пункт, під час виконання <command
>kttsmgr</command
> у системному лотку буде показано піктограму. У такому режимі після натискання кнопок <guibutton
>Гаразд</guibutton
> та <guibutton
>Скасувати</guibutton
> роботу <command
>kttsmgr</command
> не буде завершено. Замість цього, зникне вікно, але програма <command
>kttsmgr</command
> продовжуватиме виконуватися у лотку стільниці. Наведіть вказівник миші на піктограму і клацніть лівою кнопкою миші, щоб знову відкрити вікно програми. Щоб завершити роботу <command
>kttsmgr</command
>, наведіть вказівник на піктограму у лотку, клацніть правою кнопкою і скористайтеся пунктом <guilabel
>Вийти</guilabel
> з контекстного меню. Якщо зняти позначку з пункту, програма не згортатиметься у піктограму лотка стільниці. Натискання кнопок <guibutton
>Гаразд</guibutton
> і <guibutton
>Скасувати</guibutton
> завершить роботу <command
>kttsmgr</command
>. <note
><para
>Після завершення роботи <command
>kttsmgr</command
>, &ktts; продовжуватиме виконуватися, якщо позначено пункт <guilabel
>Увімкнути систему синтезу мовлення з тексту (KTTSD)</guilabel
>.</para
></note>
<note
><para
>Цей пункт не набуде чинності до наступного запуску <command
>kttsmgr</command
>.</para
></note>
<note
><para
>Цей пункт ні на що не впливатиме, якщо <command
>kttsmgr</command
> запущено у &kcontrol;.</para
></note>
</para
></callout>
<callout arearefs="pt-gen-3"
><para
>Якщо позначено цей пункт, після запуску <command
>kttsmgr</command
> з’являтиметься вікно <command
>kttsmgr</command
>. Якщо позначки навпроти пункту не буде, після запуску <command
>kttsmgr</command
> у лотку стільниці з’являтиметься піктограма <command
>kttsmgr</command
>, але вікно відкрито не буде. Щоб відкрити вікно програми, вам слід буде навести вказівник миші на піктограму у лотку і клацнути лівою кнопкою миші.</para
></callout>
<callout arearefs="pt-gen-4"
><para
>Якщо позначено цей пункт, і <command
>kttsmgr</command
> ще не запущено, програма з’являтиметься у системному лотку кожного разу, коли KTTSD вимовлятиме текст. Це надасть вам можливість зупиняти або іншим чином керувати вимовлянням.</para
></callout>
<callout arearefs="pt-gen-5"
><para
>Якщо позначено цей пункт, і <command
>kttsmgr</command
> автоматично з’являтиметься у вигляді піктограми у системному лотку під час вимовляння, відповідна піктограма автоматично зникатиме після завершення вимовляння.</para
></callout>
<callout arearefs="pt-gen-6"
><para
>Не забудьте натиснути тут, щоб зберегти встановлені вами параметри.</para
></callout>
</calloutlist>
</para>

</sect1>

<!-- ...................................................................... -->


<sect1 id="jobmgr">
<title
>Керування текстовими завданнями</title>

<para
>Після натискання заголовка вкладки <guilabel
>Завдання</guilabel
> у вікні <command
>kttsmgr</command
> буде відкрито сторінку <guilabel
>Завдання</guilabel
>.</para>

<para>
<screenshot>
<screeninfo
>Керування синтезатором мовлення з тексту &kde; (вкладка «Завдання»).</screeninfo>
	<mediaobjectco>
		<imageobjectco>
			<areaspec units="calspair">
				<area id="pt-jobmgr-1" coords="1 1"/>
				<area id="pt-jobmgr-2" coords="1 1"/>
				<area id="pt-jobmgr-3" coords="1 1"/>
				<area id="pt-jobmgr-4" coords="1 1"/>
				<area id="pt-jobmgr-5" coords="1 1"/>
				<area id="pt-jobmgr-6" coords="1 1"/>
				<area id="pt-jobmgr-7" coords="1 1"/>
			</areaspec>
			<imageobject>
				<imagedata fileref="jobs.png" format="PNG"/>
			</imageobject>
		</imageobjectco>
		<textobject>
			<phrase
>Керування синтезатором мовлення з тексту &kde; (вкладка «Завдання»)</phrase>
		</textobject>
	</mediaobjectco>
</screenshot>
</para>

<para>
<calloutlist>
<callout arearefs="pt-jobmgr-1"
><para
>Тут ви зможете побачити поточну чергу завдань, а також відомості про програму, яка додала завдання до черги, поточний стан завдання, кількість речень у завданні і номер поточного речення. Стовпчик <guilabel
>ІД диктора</guilabel
> відповідає стовпчику <guilabel
>ІД</guilabel
> на вкладці <guilabel
>Диктори</guilabel
>. </para
></callout>
<callout arearefs="pt-jobmgr-2"
><para
>За допомогою кнопок у цьому ряді ви можете запускати, вилучати або призупиняти текстові завдання. Виберіть завдання з розташованого вище списку, а потім натисніть одну з цих кнопок.</para
></callout>
<callout arearefs="pt-jobmgr-3"
><para
>За допомогою кнопок у рядку ви зможете пересунути позицію читання на речення вперед або назад у завданні, обраному зі списку, розташованого вище (але не всі завдання складаються з декількох речень).</para
></callout>
<callout arearefs="pt-jobmgr-4"
><para
>За допомогою кнопок з цього рядка можна змусити програму вимовляти поточний текст з буфера обміну інформацією &kde; або відкрити текстовий файл для читання уголос. Крім того, ви можете оновити список текстових завдань або змінити диктора для окремого завдання. Див. <xref linkend="selecttalker"/>.</para
></callout>
<callout arearefs="pt-jobmgr-5"
><para
>Тут з’являється поточне речення, над яким працює програма.</para
></callout>
<callout arearefs="pt-jobmgr-6"
><para
>Після натискання кнопки <guibutton
>Гаразд</guibutton
> всі зміни у параметрах на інших вкладках буде застосовано (якщо такі зміни було внесено), а вікно <command
>kttsmgr</command
> буде мінімізовано до системного лотка. Щоб відновити вікно керування програмою, достатньо натиснути піктограму у системному лотку.</para
></callout>
<callout arearefs="pt-jobmgr-7"
><para
>Перетягніть цей роздільник, щоб змінити розмір панелей списку завдань і <guilabel
>Поточне речення</guilabel
>.</para
></callout>
</calloutlist>
</para>

<note
><para
>Вкладка <guilabel
>Завдання</guilabel
> з’являтиметься, лише коли запущено KTTSD. Якщо ви не бачите вкладки <guilabel
>Завдання</guilabel
>, перейдіть на вкладку <guilabel
>Загальний</guilabel
> і позначте пункт <guilabel
>Увімкнути систему синтезу мовлення з тексту (KTTSD)</guilabel
>.</para>
</note>

<note
><para
>Якщо вами не було встановлено підсистеми роботи зі звуком &arts;, але ви встановили одну з підсистем ALSA, GStreamer або aKode, перейдіть на вкладку <guilabel
>Звук</guilabel
>. Див. <xref linkend="audio"/>.</para
></note>

<note
><para
>За допомогою цієї вкладки можна переглядати і керувати лише текстовими завданнями. Виведення екранного диктора, попередження і повідомлення показано не буде. Щоб дізнатися більше про типи повідомлень &ktts;, ознайомтеся з розділом <xref linkend="filters"/>.</para
></note>

</sect1>

<!-- ...................................................................... -->

<sect1 id="audio">
<title
>Параметри звуку</title>

<para
>Після того, як ви натиснете заголовок вкладки <guilabel
>Звук</guilabel
> у <command
>kttsmgr</command
>, буде відкрито сторінку <guilabel
>Звук</guilabel
>.</para>

<para>
    <screenshot>
        <screeninfo
>Керування синтезатором мовлення з тексту &kde; (вкладка «Звук»).</screeninfo>
        <mediaobjectco>
            <imageobjectco>
                <areaspec units="calspair">
                    <area id="pt-audio-1" coords="1 1"/>
                    <area id="pt-audio-2" coords="1 1"/>
                    <area id="pt-audio-3" coords="1 1"/>
                    <area id="pt-audio-4" coords="1 1"/>
                    <area id="pt-audio-5" coords="1 1"/>
                </areaspec>
                <imageobject>
                    <imagedata fileref="audio.png" format="PNG"/>
                </imageobject>
            </imageobjectco>
            <textobject>
                <phrase
>Керування синтезатором мовлення з тексту &kde; (вкладка «Звук»)</phrase>
            </textobject>
        </mediaobjectco>
    </screenshot>
</para>

<para>
<calloutlist>
<callout arearefs="pt-audio-1"
><para
>Тут ви можете обрати метод виведення звуку. Якщо певний компонент позначено сірим кольором, або &ktts; було зібрано без підтримки відповідного звукового додатка, або програма &ktts; не змогла завантажити потрібні бібліотеки. </para
></callout>
<callout arearefs="pt-audio-2"
><para
>Якщо для виводу звуку обрано GStreamer або aKode, тут вам слід обрати спосіб приймання звуку. Якщо у списку не буде жодного приймача, вам слід встановити хоча б один. Якщо обрано ALSA, вам слід обрати у цьому полі пристрій PCM. Див. <xref linkend="requirements"/>. </para
></callout>
<callout arearefs="pt-audio-3"
><para
>Тут можна налаштувати швидкість вимовляння. Швидкість у 50% відповідає вимовлянню удвічі повільнішому за звичайний темп мови, а у 200% — приблизно удвічі швидшому. Щоб цей параметр запрацював, вам слід встановити програму <command
>sox</command
>. </para
></callout>
<callout arearefs="pt-audio-4"
><para
>Якщо позначено цей пункт, &ktts; копіюватиме тимчасові звукові файли (файли .wav) до вказаної теки. Ви можете обрати будь-яку з тек на вашому жорсткому диску, але вам слід мати доступ на запис до цієї теки. Таке налаштування може бути корисним для створення звукових файлів з вимовленими фразами для подальшого використання. Форма назви цих файлів буде такою <filename
>kttsd-З-НР</filename
>, де <filename
>З</filename
> — це номер завдання, а <filename
>НР</filename
> — номер речення. Існуючі файли з такими назвами буде вилучено. <emphasis
>Не забудьте потім зняти позначку з цього пункту, інакше ви ризикуєте засмітити жорсткий диск вашого комп’ютера!</emphasis
> </para
></callout>
<callout arearefs="pt-audio-5"
><para
>Не забудьте натиснути кнопку <guibutton
>Застосувати</guibutton
>, щоб застосувати нові параметри до запущеної системи &ktts;. </para
></callout>
</calloutlist>
</para>

<note
><para
>Існує два способи налаштування швидкості вимовляння тексту у &ktts;. У діалогових вікнах налаштування багатьох <guilabel
>Дикторів</guilabel
> є пункт <guilabel
>Швидкість</guilabel
>. Відповідне вікно можна відкрити натисканням кнопки <guibutton
>Редагування</guibutton
> на вкладці <guilabel
>Диктори</guilabel
>. Пункт <guilabel
>Швидкість</guilabel
> на вкладці <guilabel
>Звук</guilabel
> є додатковим параметром швидкості диктора, його, загалом кажучи, можна використовувати, навіть якщо диктор не підтримує налаштування швидкості. Щоб запрацював цей параметри швидкості, вам слід встановити програму <command
>sox</command
> у вашій системі (користувачі Debian можуть виконати команду: <command
>apt-get install sox</command
>). Крім того, цей параметр швидкості буде проігноровано, якщо текст, що вимовляється містить SSML. (Див. <xref linkend="ssml"/>)</para
></note>

<note
><para
>У списку пристроїв ALSA ви знайдете всі пристрої ALSA PCM і додатки, налаштовані у вашій системі. Деякі з варіантів вибору не працюватимуть. Вам слід експериментальним шляхом визначити потрібний пристрій. Якщо маєте сумніви, оберіть <guilabel
>типовий</guilabel
>.</para
></note>

</sect1>

<!-- ...................................................................... -->

<sect1 id="interruption">
<title
>Параметри переривання тексту</title>

<para
>Після того, як ви натиснете заголовок вкладки <guilabel
>Переривання</guilabel
> у <command
>kttsmgr</command
>, буде відкрито сторінку <guilabel
>Переривання</guilabel
>.</para>

<para>
<screenshot>
<screeninfo
>Керування синтезатором мовлення з тексту &kde; (вкладка «Переривання»).</screeninfo>
	<mediaobjectco>
		<imageobjectco>
			<areaspec units="calspair">
				<area id="pt-interruption-1" coords="1 1"/>
				<area id="pt-interruption-2" coords="1 1"/>
				<area id="pt-interruption-3" coords="1 1"/>
				<area id="pt-interruption-4" coords="1 1"/>
			</areaspec>
			<imageobject>
				<imagedata fileref="interruption.png" format="PNG"/>
			</imageobject>
		</imageobjectco>
		<textobject>
			<phrase
>Керування синтезатором мовлення з тексту &kde; (вкладка «Переривання»)</phrase>
		</textobject>
	</mediaobjectco>
</screenshot>
</para>

<para
>За допомогою цієї вкладки ви можете вказати особливі дії, які буде виконано, якщо завдання з вимовляння тексту буде перервано повідомленнями з вищим пріоритетом. Існує чотири різновиди завдань з вимовляння тексту, якими може керувати &ktts;: <itemizedlist>
<listitem
><para
>Звичайний текст.</para
></listitem>
<listitem
><para
>Повідомлення.</para
></listitem>
<listitem
><para
>Попередження.</para
></listitem>
<listitem
><para
>Виведення засобу читання з екрана.</para
></listitem>
</itemizedlist>
</para>

<para
>Виведення засобу читання з екрана має найвищий пріоритет. Його зарезервовано для використання програмами для читання з екрана. Виведення засобу читання з екрана вивантажує всі інші повідомлення, тобто призупиняє їх вимовляння. Після вимовляння виведення засобу читання з екрана виконання призупинених завдань буде автоматично поновлено. </para>

<para
>Попередження мають пріоритет трохи нижчий за пріоритет найвищого рівня. Рівень попереджень призначено для повідомлень високого пріоритету, наприклад, «Процесор перегрівся». Попередження вивантажують Повідомлення і звичайний текст, тобто призупиняють виконання таких завдань. Після вимовляння Попередження виконання призупинених завдань буде поновлено.</para>

<para
>Повідомлення мають нижчий пріоритет. Повідомлення призупиняють виконання звичайних текстових завдань. &kmouth; є прикладом програми, яка використовує Повідомлення. Наприклад, під час читання значного об’єму тексту з веб-сторінки &kmouth; можна використати для вітання з кимось, хто увійшов до кімнати.</para>

<para
>Всі чотири типи завдань потрапляють до черги, окрім виведення засобу читання з екрана. Якщо виведення засобу читання з екрана буде надіслано з якоїсь програми у той час, коли &ktts; вимовлятиме інше виведення засобу читання з екрана, вимовляння поточного повідомлення буде зупинено, а саме повідомлення буде відкинуто.</para>

<para
>Якщо текстове завдання буде перервано Повідомленням, Попередженням або Виведенням засобу читання з екрана, &ktts; додасть відповідний пункт на цю вкладку у чергу.</para>

<para>
<calloutlist>
<callout arearefs="pt-interruption-1"
><para
>Це повідомлення буде вимовлено кожного разу, коли буде перервано звичайне текстове завдання.</para
></callout>
<callout arearefs="pt-interruption-2"
><para
>Цей звуковий файл буде відтворено під час переривання текстового завдання. Якщо вказано і <guilabel
>Передзвук</guilabel
> і <guilabel
>Передмову</guilabel
>, <guilabel
>Передзвук</guilabel
> буде відтворено до <guilabel
>Передмови</guilabel
>.</para
></callout>
<callout arearefs="pt-interruption-3"
><para
>Це повідомлення буде вимовлено кожного разу, коли буде поновлено перерване текстове завдання.</para
></callout>
<callout arearefs="pt-interruption-4"
><para
>Цей звуковий файл буде відтворено кожного разу, коли поновлюватиметься виконання текстового завдання. Він звучатиме останнім.</para
></callout>
</calloutlist>
</para>

<note
><para
>Параметри, які визначаються за допомогою цієї вкладки, стосуватимуться лише звичайних текстових завдань. Для повідомлень, попереджень, виведення засобу читання з екрана особливих дій у відповідь на переривання їх виконання повідомленням вищого пріоритету не передбачено.</para
></note>

</sect1>

<!-- ...................................................................... -->


<sect1 id="web">
<title
>Читання тексту з веб-сторінок</title>

<para
>Під час роботи у переглядачі Тенет &kde; — &konqueror;, ви можете наказати програмі прочитати показаний текст. Для цього спочатку переконайтеся, що запущено &ktts;. Виділіть текст, який слід вимовити, а потім скористайтеся пунктом <menuchoice
> <guisubmenu
>Інструменти</guisubmenu
> <guisubmenu
>Продекламувати текст</guisubmenu
> </menuchoice
> головного меню. <action
>Якщо ви трохи зачекаєте, програма почне вимовляти виділений текст.</action
> </para>

<tip
><para
>Завжди варто спочатку виділити на веб-сторінці текст, який слід вимовити. Ви можете пропустити цей крок, але тоді ви почуєте, як програма читатиме уголос заголовки &HTML; та інші невидимі теґи.</para
></tip>

</sect1>

<!-- ...................................................................... -->


<sect1 id="kate">
<title
>Читання тексту з текстового редактора &kate;</title>

<para
>Ви можете запустити читання тексту уголос під час роботи у текстовому редакторі &kde; (&kate;). Спочатку переконайтеся, що запущено &ktts;. Виділіть текст, який слід вимовити, і скористайтеся пунктом меню <menuchoice
> <guisubmenu
>Інструменти</guisubmenu
> <guisubmenu
>Продекламувати текст</guisubmenu
> </menuchoice
>. <action
>Якщо ви трохи зачекаєте, програма почне вимовляти виділений текст.</action
> </para>

<tip
><para
>Вам не потрібно спочатку виділяти текст. У цьому випадку вимовлятиметься весь файл.</para
></tip>

<tip
><para
>Таку дію можна виконати і якщо &kate; вбудовано до іншої програми, наприклад, &konqueror; або &quanta;.</para
></tip>

</sect1>

<!-- ...................................................................... -->

<sect1 id="knotify">
<title
>Читання сповіщень (KNotify)</title>

<para
>KNotify — це підсистема сповіщення у &kde;, ця підсистема попереджає вас про події, сповіщення про які ви налаштували у системі &kde;. Ви можете налаштувати &ktts; так, щоб програма вимовляла текстові сповіщення.</para>

<para
>Наприклад, &konversation;, програма &kde; для роботи у IRC, надає вам змогу налаштувати широкий спектр сповіщень. Зокрема, ви можете наказати &konversation; сповіщати вас кожного разу, коли у каналі IRC з’являється повідомлення з вашим прізвиськом у тексті. У сполученні з &ktts; ви можете наказати системі &kde; прочитати це повідомлення IRC уголос.</para>

<para
>Загалом кажучи, якщо програма &kde; підтримує KNotify, у меню <guilabel
>Параметри</guilabel
> програми має бути пункт <guilabel
>Сповіщення</guilabel
>. Параметри налаштування програм для роботи з KNotify залежать від самої програми.</para>

<para
>Щоб увімкнути вимовляння за допомогою &ktts; текстових сповіщень KNotify, запустіть <command
>kttsmgr</command
> і натисніть заголовок вкладки <guilabel
>Сповіщення</guilabel
>. програма відкриє панель <guilabel
>Сповіщення</guilabel
>.</para>

<para>
<screenshot>
<screeninfo
>Керування синтезатором мовлення з тексту &kde; (вкладка «Сповіщення»).</screeninfo>
	<mediaobjectco>
		<imageobjectco>
			<areaspec units="calspair">
				<area id="pt-notify-1" coords="1 1"/>
				<area id="pt-notify-2" coords="1 1"/>
				<area id="pt-notify-3" coords="1 1"/>
				<area id="pt-notify-4" coords="1 1"/>
				<area id="pt-notify-5" coords="1 1"/>
				<area id="pt-notify-6" coords="1 1"/>
				<area id="pt-notify-7" coords="1 1"/>
				<area id="pt-notify-8" coords="1 1"/>
				<area id="pt-notify-9" coords="1 1"/>
				<area id="pt-notify-10" coords="1 1"/>
			</areaspec>
			<imageobject>
				<imagedata fileref="notifications.png" format="PNG"/>
			</imageobject>
		</imageobjectco>
		<textobject>
			<phrase
>Керування синтезатором мовлення з тексту &kde; (вкладка «Сповіщення»)</phrase>
		</textobject>
	</mediaobjectco>
</screenshot>
</para>

<para>
<calloutlist>
<callout arearefs="pt-notify-1"
><para
>Позначте цей пункт, щоб увімкнути вимовляння сповіщень &kde;. Якщо позначки у відповідному полі не буде, всі інші пункти налаштування на цій вкладці буде вимкнено, а &ktts; не вимовлятиме жодних сповіщень.</para
></callout>
<callout arearefs="pt-notify-2"
><para
>Якщо позначено цей пункт, повідомлення всіх програм, які супроводжуватимуться звуком, вимовлятися &ktts; не будуть.</para
></callout>
<callout arearefs="pt-notify-3"
><para
>Скористайтеся цими кнопками для додавання або вилучення подій програм зі списку, розташованого нижче. Після натискання кнопки <guibutton
>Додати</guibutton
> програма відкриє діалогове вікно, у якому ви зможете обрати програму і подію, яку ви бажаєте додати до списку. </para
></callout>
<callout arearefs="pt-notify-4"
><para
>Таке визначення події призведе до вимовляння повідомлення, яке надсилає &konversation;, коли хтось згадає ваше прізвисько у повідомленні IRC. </para
></callout>
<callout arearefs="pt-notify-5"
><para
>Якщо &konversation; надсилатиме повідомлення про будь-які інші події, &ktts; на них не реагуватиме.</para
></callout>
<callout arearefs="pt-notify-6"
><para
>На всі інші події, не вказані у цьому списку, &ktts; не реагуватиме.</para
></callout>
<callout arearefs="pt-notify-7"
><para
>Скористайтеся цією панеллю, щоб вказати дію, яку має виконати &ktts; у відповідь на повідомлення про подію. Ви можете обрати один з таких варіантів:</para>
<para>
<variablelist>
<varlistentry>
<term
>Декламувати назву події</term>
<listitem
><para
>Читає вголос назву події, яку ви побачите у списку подій цього вікна.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>Декламувати сповіщення</term>
<listitem
><para
>Читає повідомлення у вигляді, у якому його було надіслано програмою.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>Не декламувати сповіщення</term>
<listitem
><para
>Не читає повідомлень про цю подію взагалі.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>Декламувати вказаний текст</term>
<listitem
><para
>Читає текст, який ви ввели на панелі, розташованій праворуч.</para
></listitem>
</varlistentry>
</variablelist>
</para>
</callout>
<callout arearefs="pt-notify-8"
><para
>Якщо обрано дію <guilabel
>Декламувати вказаний текст</guilabel
>, вам слід буде ввести у відповідне поле текст повідомлення, яке слід вимовити. У повідомленні ви можете скористатися такими шаблонами заміни:</para>
<para>
<variablelist>
<varlistentry>
<term
>%e</term>
<listitem
><para
>Назва події</para
></listitem>
</varlistentry>
<varlistentry>
<term
>%a</term>
<listitem
><para
>Назва програми, яка повідомила про подію</para
></listitem>
</varlistentry>
<varlistentry>
<term
>%m</term>
<listitem
><para
>Повідомлення, яке надіслала програма</para
></listitem>
</varlistentry>
</variablelist>
</para>
</callout>
<callout arearefs="pt-notify-9"
><para
>Перевірте повідомлення натисканням цієї кнопки.</para
></callout>
<callout arearefs="pt-notify-10"
><para
>Тут ви зможете вказати параметри бажаного диктора, який читатиме повідомлення сповіщення. Якщо вказати <command
><userinput
>default</userinput
></command
>, буде використано диктора, позначка якого займає найвищу позицію у списку на вкладці <guilabel
>Диктори</guilabel
>. Див. <xref linkend="selecttalker"/>. </para
></callout>
</calloutlist>
</para>

<para
>Зауважте, що існує три рівні подій. Якщо вказано окрему подію для окремої програми, буде виконано відповідну дію. У іншому випадку, якщо вказано дію для всіх подій окремої програми, буде виконано цю дію. Якщо ж і такої дії не вказано, буде виконано дію для всіх інших подій, вказану у пункті <guilabel
>Типова (всі інші події)</guilabel
>.</para>

<para
>Подію <guilabel
>всі сповіщення</guilabel
> для програми <guilabel
>Типова (всі інші події)</guilabel
> неможливо вилучити зі списку. Для визначення типової дії для всіх інших подій ви можете вказати один з типів дій, які було згадано вище, у такий спосіб:</para>

<variablelist>
<varlistentry>
<term
>немає</term>
<listitem
><para
>Без декламації.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>вікна сповіщення</term>
<listitem
><para
>Буде вимовлено сповіщення, які буде показано на екрані у діалогових вікнах, які користувач має закрити власноруч.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>пасивні вигульки</term>
<listitem
><para
>Буде вимовлено сповіщення, які буде показано на екрані у пасивних діалогових вікнах, які автоматично зникатимуть за деякий час без втручання користувача.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>вікна сповіщення і пасивні вигульки</term>
<listitem
><para
>Буде вимовлено всі сповіщення, які буде показано на екрані.</para
></listitem>
</varlistentry>
<varlistentry>
<term
>всі сповіщення</term>
<listitem
><para
>Буде вимовлено всі сповіщення, байдуже, чи їх буде показано не екрані.</para
></listitem>
</varlistentry>
</variablelist>

<tip
><para
>Фільтри заміни рядків можуть знадобитися для очищення повідомлень, надісланих програмами, якщо &ktts; неправильно вимовляє ці повідомлення. Файл <filename
>kmail.xml</filename
>, який постачається разом з &ktts;, є непоганим прикладом такого фільтра. Цей фільтр вилучає з повідомлень сповіщень &kmail; теґи <command
>br</command
> і <command
>b</command
>, а також вилучає фразу <command
>/local/inbox/</command
>, оскільки такі елементи спотворюють читання повідомлення. Див. <xref linkend="stringreplacer"/>. </para
></tip>

<para
>Щоб зберегти ваші налаштування сповіщень до файла, скористайтесь кнопкою <guibutton
>Зберегти</guibutton
>. Для того, щоб завантажити збережені параметри з файла, скористайтесь кнопкою <guibutton
>Завантажити</guibutton
>. Список завантажених подій буде об’єднано зі списком вже існуючих подій у списку. Якщо ви бажаєте розпочати з порожнього списку подій, натисніть спочатку кнопку <guibutton
>Очистити</guibutton
>. У результаті буде вилучено всі події, окрім події <guilabel
>всі сповіщення</guilabel
>.</para>

<note
><para
>Не забудьте натиснути кнопку <guibutton
>Застосувати</guibutton
> або <guibutton
>Гаразд</guibutton
>, щоб зберегти внесені вами зміни.</para
></note>

</sect1>

<!-- ...................................................................... -->

<sect1 id="ssml">
<title
>SSML</title>

<para
>Мова розмітки синтезу мовлення (Speech Synthesis Markup Language або SSML) є стандартом W3C для розмітки тексту для наступного перетворення його у мовлення. У ній передбачено теґи для керування дикторами, швидкістю вимовляння, гучністю, статтю диктора і тоном. Також передбачено теґи для визначення вимови слова, наприклад, для вимови абревіатур. SSML є частиною специфікації VoiceXML, яка також є частиною стандарту W3C.</para>

<para
>У поточній версії &ktts; передбачено обмежену і лише базову підтримку SSML. У поточній версії є наведені нижче обмеження.</para>

<itemizedlist>
<listitem
><para
>Підтримка працює лише з дикторами Festival Interactive і Hadifix.</para
></listitem>
<listitem
><para
>Вам слід встановити диктора <command
>rab_diphone</command
> (British male), оскільки він є типовим диктором, який використовує Festival під час вимовляння SSML.</para
></listitem>
<listitem
><para
>Параметр <guilabel
>Швидкість</guilabel
>, вказаний на вкладці <guilabel
>Звук</guilabel
>, не братиметься до уваги під час вимовляння тексту з SSML.</para
></listitem>
<listitem
><para
>Якщо параметри <guilabel
>Швидкість</guilabel
> або <guilabel
>Тон</guilabel
> у діалоговому вікні налаштування Festival не встановлено у значення 100%, текст SSML буде вимовлено монотонно.</para
></listitem>
</itemizedlist>

<para
>Для експериментів з SSML ви можете скористатися наведеним нижче текстом.</para>

<programlisting
><![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE speak PUBLIC "-//W3C//DTD SYNTHESIS 1.0//EN"
    "http://www.w3.org/TR/speech-synthesis/synthesis.dtd">

<speak version="1.0" xml:lang="en-US">
    <prosody pitch="low">
        Who's been sleeping in my bed?
    </prosody>
    said papa bear.
    <prosody pitch="medium">
        Who's been sleeping in my bed?
    </prosody>
    said momma bear.
    <prosody pitch="high">
        Who's been sleeping in my bed?
    </prosody>
    said baby bear.
</speak>
]]></programlisting>

<para
>Покращення підтримки SSML заплановано у наступній версії &ktts;. </para>

</sect1>

<!-- ...................................................................... -->

<sect1 id="filters">
<title
>Фільтри (додаткові відомості)</title>

<para
>Фільтрування є одною з додаткових можливостей &ktts;. Для основних дій &ktts; вони не потрібні.</para>

<para
>Фільтри використовуються для попередньої обробки тексту перед надсиланням його до рушія синтезу мовлення з тексту. Вони можуть знадобитися для покращення вимовляння тексту, заміни у словах, які вимовляються неправильно або абревіатурах, вибору відповідної мови і диктора для синтезу або обходу певних обмежень синтезаторів мовлення та їх дикторів.</para>

<!-- ...................................................................... -->

<sect2 id="msg-types">
<title
>Типи повідомлень &ktts;</title>

<para
>Щоб зрозуміти те, як використовувати фільтри, корисно розуміти спосіб обробки тексту у &ktts;. Тексти, які вимовляються за допомогою &ktts; належать до таких чотирьох типів:</para>

<para>
<itemizedlist>
<listitem
><para
>Виведення засобу читання з екрана.</para
></listitem>
<listitem
><para
>Попередження.</para
></listitem>
<listitem
><para
>Повідомлення</para
></listitem>
<listitem
><para
>Текстові завдання</para
></listitem>
</itemizedlist>
</para>

<para
>Тип, який визначається програмою, яка надсилає текст до &ktts;.</para>

<para
>Виведення засобу читання з екрана має найвищий пріоритет. Його зарезервовано для використання програмами для читання з екрана. Виведення засобу читання з екрана вивантажує всі інші повідомлення, тобто призупиняє їх вимовляння. Після вимовляння виведення засобу читання з екрана виконання призупинених завдань буде автоматично поновлено. </para>

<para
>Попередження мають пріоритет трохи нижчий за пріоритет найвищого рівня. Рівень попереджень призначено для повідомлень високого пріоритету, наприклад, «Процесор перегрівся». Попередження вивантажують Повідомлення і звичайний текст, тобто призупиняють виконання таких завдань. Після вимовляння Попередження виконання призупинених завдань буде поновлено.</para>

<para
>Повідомлення мають нижчий пріоритет. Повідомлення призупиняють виконання звичайних текстових завдань. &kmouth; є прикладом програми, яка використовує Повідомлення. Наприклад, під час читання значного об’єму тексту з веб-сторінки &kmouth; можна використати для вітання з кимось, хто увійшов до кімнати. Сповіщення &kde; також належать до Повідомлень (див. <xref linkend="knotify"/>).</para>

<para
>Решта текстів належать до Текстових завдань. Всі завдання, які ви започатковуєте за допомогою вкладки <guilabel
>Завдання</guilabel
> є Текстовими завданнями. KSayit є прикладом програми, яка використовує Текстові завдання. Тип Текстові завдання призначено для синтезу мовлення з довгих текстових документів, за умови, що такий синтез не є нагальним.</para>

<para
>Всі чотири типи завдань потрапляють до черги, окрім виведення засобу читання з екрана. Якщо виведення засобу читання з екрана буде надіслано з якоїсь програми у той час, коли &ktts; вимовлятиме інше виведення засобу читання з екрана, вимовляння поточного повідомлення буде зупинено, а саме повідомлення буде відкинуто.</para>

</sect2>

<!-- ...................................................................... -->

<sect2 id="filter-types">
<title
>Типи фільтрів</title>

<para
>Перше, що ви маєте знати про фільтри, це те, що їх ніколи не буде застосовано для виведення читання з екрана. Фільтри застосовуються до Попереджень, Повідомлень і Текстових завдань, а також до сповіщень &kde; (KNotify).</para>

<para
>Існує два типи фільтрів — звичайні фільтри і фільтри визначення меж речень (Sentence Boundary Detector або SBD). За допомогою фільтрів SBD можна розбити текст на окремі речення. Такі фільтри пришвидшують мовлення у &ktts;, оскільки програмі потрібно буде синтезувати мовлення лише для одного речення, а не для всього тестового завдання одразу. Такі фільтри також надають змогу вам переходити на речення вперед або назад на вкладці <guilabel
>Завдання</guilabel
>, зупиняти або призупиняти виконання текстових завдань, якщо рушій синтезу мовлення не підтримує напряму зупинку синтезу. </para>

<para
>Звичайні фільтри обробляють текст і передають його на наступний фільтр. У поточній версії існує три різновиди звичайних фільтрів. </para>

<para>
<itemizedlist>
<listitem
><para
>Заміна рядків.</para
></listitem>
<listitem
><para
>Перетворення &XML;</para
></listitem>
<listitem
><para
>Вибір диктора.</para
></listitem>
</itemizedlist>
</para>

<note
><para
>Функції фільтрів реалізуються за допомогою архітектури додатків. У майбутньому у програмі може бути реалізовано додаткові різновиди фільтрів.</para
></note>

<para
>Фільтри заміни рядків виконують заміну шматків тексту на інший текст. Шматки тексту знаходяться програмою за вказаними словами або регулярними виразами. Програма &ktts; постачається з попередньо визначеними фільтрами заміни рядків для вимовляння абревіатур, емоційок у балачках, таких як «:-)», та переведення повідомлень сповіщень від &konversation; або &kmail; у зрозумілішу форму. </para>

<para
>Фільтри перетворення &XML; використовують файл перетворення мовою стилів &XML; (&XML; Style Language - Transforms або XSLT) для перетворення &XML; у одному форматі на файл у іншому форматі. До складу &ktts; включено декілька файлів XSLT, призначених для перетворення &XHTML; на SSML. </para>

<para
>Фільтри вибору диктора надають вам змогу переспрямовувати завдання певним дикторам, залежно від вмісту тексту або програми, яка надіслала текст до &ktts;. Наприклад, якщо ви налаштували диктора з жіночим голосом на вкладці <guilabel
>Диктори</guilabel
>, ви можете спрямувати текст з KSayIt до цього диктора. Див. <xref linkend="configure-plugin"/>. </para>

<para
>Для кожного з цих різновидів фільтрів можна налаштувати правила, згідно до яких цей фільтр буде застосовано до тексту, який слід вимовити. Якщо такими правилами буде визначено, що фільтр не потрібно застосовувати, текст буде передано до наступного фільтра у незмінному вигляді.</para>

<para
>Якщо до &ktts; буде надіслано Текстове завдання, Попередження або повідомлення сповіщення &kde;, отримані дані буде пропущено через всі увімкнені фільтри, які ви налаштуєте у вікні, знімок якого наведено нижче. Фільтри буде застосовано у порядку згори до низу. Після проходження через всі звичайні фільтри, перелік яких буде показано у верхній частині вікна, текстові завдання буде пропущено через фільтри <guilabel
>Визначення меж речення</guilabel
> (SBD). (Сповіщення &kde;, Попередження та Повідомлення ніколи не пропускаються через фільтри SBD.) На відміну від звичайних фільтрів, за знаходження першого ж з фільтрів SBD, який вноситиме зміни до даних, подальше фільтрування буде припинено. </para>

</sect2>

<!-- ...................................................................... -->

<sect2 id="configure-filters">
<title
>Налаштування фільтрів</title>

<para
>Щоб скористатися фільтрами, відкрийте вкладку <guilabel
>Фільтри</guilabel
> у вікні <command
>kttsmgr</command
>.</para>

<para>
    <screenshot>
        <screeninfo
>Менеджер синтезу мовлення з тексту &kde; (вкладка «Фільтри»).</screeninfo>
        <mediaobjectco>
            <imageobjectco>
                <areaspec units="calspair">
                    <area id="pt-filters-1" coords="1 1"/>
                    <area id="pt-filters-2" coords="1 1"/>
                    <area id="pt-filters-3" coords="1 1"/>
                    <area id="pt-filters-4" coords="1 1"/>
                    <area id="pt-filters-5" coords="1 1"/>
                    <area id="pt-filters-6" coords="1 1"/>
                    <area id="pt-filters-7" coords="1 1"/>
                    <area id="pt-filters-8" coords="1 1"/>
                </areaspec>
                <imageobject>
                    <imagedata fileref="filters.png" format="PNG"/>
                </imageobject>
            </imageobjectco>
            <textobject>
                <phrase
>Менеджер синтезу мовлення з тексту &kde; (вкладка «Фільтри»)</phrase>
            </textobject>
        </mediaobjectco>
    </screenshot>
</para>

<para>
<calloutlist>
<callout arearefs="pt-filters-1"
><para
>Це список налаштованих звичайних фільтрів. Якщо навпроти запису фільтра немає позначки, цей фільтр не буде увімкнено. Фільтри застосовуються за порядком, який вказано у списку, починаючи з верхньої частини.</para
></callout>
<callout arearefs="pt-filters-2"
><para
>Натисніть цю кнопку, щоб додати новий фільтр. Програма запитає вас про тип фільтра, який ви бажаєте додати. Після вибору типу ви побачите перед собою діалогове вікно налаштування.</para
></callout>
<callout arearefs="pt-filters-3"
><para
>Натисніть цю кнопку, щоб вилучити фільтр.</para
></callout>
<callout arearefs="pt-filters-4"
><para
>Натисніть цю кнопку, щоб змінити налаштування фільтра. Відомості щодо діалогових вікон налаштування можна знайти далі за текстом.</para
></callout>
<callout arearefs="pt-filters-5"
><para
>Натискайте ці кнопки, щоб пересувати фільтр вгору або вниз списком.</para
></callout>
<callout arearefs="pt-filters-6"
><para
>Тут показано список фільтрів визначення меж речень. Під час першого ж запуску &ktts; для вас буде автоматично налаштовано стандартний засіб визначення меж речень. Ви можете змінити налаштування цього фільтра або додати нові фільтри визначення меж речень, але, якщо ви початківець, ми не радимо вам цього робити.</para
></callout>
<callout arearefs="pt-filters-7"
><para
>За допомогою цієї кнопки зі спадним меню ви можете додавати, вилучати, редагувати і змінювати порядок фільтрів виявлення меж речення.</para
></callout>
<callout arearefs="pt-filters-8"
><para
>Не забудьте натиснути цю кнопку, інакше ваші зміни не набудуть чинності.</para
></callout>
</calloutlist>
</para>

</sect2>

<!-- ...................................................................... -->

<sect2 id="stringreplacer">
<title
>Налаштування фільтрів заміни рядків</title>

<para
>Фільтри заміни рядків можна налаштувати зазначенням списку слів або формальних виразів, за якими відбуватиметься пошук і заміна. Якщо у тексті буде знайдено слова, які збігаються з вказаними вами словами або формальними виразами, їх буде замінено на вказані вами рядки. Пошук збігів відбуватиметься з врахуванням регістру.</para>

<para>
    <screenshot>
        <screeninfo
>Заміна рядків</screeninfo>
        <mediaobjectco>
            <imageobjectco>
                <areaspec units="calspair">
                    <area id="pt-stringreplacer-1" coords="1 1"/>
                    <area id="pt-stringreplacer-2" coords="1 1"/>
                    <area id="pt-stringreplacer-3" coords="1 1"/>
                    <area id="pt-stringreplacer-4" coords="1 1"/>
                    <area id="pt-stringreplacer-5" coords="1 1"/>
                    <area id="pt-stringreplacer-6" coords="1 1"/>
                    <area id="pt-stringreplacer-7" coords="1 1"/>
                    <area id="pt-stringreplacer-8" coords="1 1"/>
                    <area id="pt-stringreplacer-9" coords="1 1"/>
                </areaspec>
                <imageobject>
                    <imagedata fileref="stringreplacer.png" format="PNG"/>
                </imageobject>
            </imageobjectco>
            <textobject>
                <phrase
>Заміна рядків</phrase>
            </textobject>
        </mediaobjectco>
    </screenshot>
</para>

<para>
<calloutlist>
<callout arearefs="pt-stringreplacer-1"
><para
>Введіть назву вашого фільтра. Скористайтеся назвою, за якою ви згодом зможете визначити потрібний фільтр серед інших фільтрів.</para
></callout>
<callout arearefs="pt-stringreplacer-2"
><para
>Тут буде наведено список слів та формальних виразів. Під час фільтрування відбудеться пошук кожного з рядків у стовпчику <guilabel
>Збіг</guilabel
> з заміною на його відповідник зі стовпчика <guilabel
>Замінити на</guilabel
>. Обробка збігів за списком відбуватиметься у напрямку, у якому показано відповідні записи, згори до низу.</para
></callout>
<callout arearefs="pt-stringreplacer-3"
><para
>Натисніть цю кнопку, щоб додати слово або формальний вираз до списку.</para
></callout>
<callout arearefs="pt-stringreplacer-4"
><para
>Натисніть ці кнопки, щоб пересунути поточне виділене слово або формальний вираз вгору або вниз списком.</para
></callout>
<callout arearefs="pt-stringreplacer-5"
><para
>Натисніть цю кнопку, щоб змінити існуюче слово або існуючий формальний вираз у списку.</para
></callout>
<callout arearefs="pt-stringreplacer-6"
><para
>Натисніть цю кнопку, щоб вилучити поточне виділене слово або формальний вираз зі списку.</para
></callout>
<callout arearefs="pt-stringreplacer-7"
><para
>Скористайтеся цими кнопками для завантаження списку слів або формальних виразів з файла, збереження поточного списку до файла або спорожнення списку. Завантажені з файла записи буде додано до списку поточних записів у списку.</para
></callout>
<callout arearefs="pt-stringreplacer-8"
><para
>Якщо позначено, фільтр буде застосовано, лише якщо мова диктора, який виголошує текст, збігатиметься з вказаною вами у цьому полі мовою. Щоб побачити список мов, натисніть відповідну кнопку. Щоб обрати декілька мов, утримуйте натиснутою клавішу <keycap
>&Ctrl;</keycap
> під час вибору за допомогою клацання клавішею миші.</para
></callout>
<callout arearefs="pt-stringreplacer-9"
><para
>Якщо позначено, фільтр буде застосовано, лише якщо текст було надіслано однією з програм зі списку. Ви можете вказати декілька назв програм, відокремивши ці назви комою. Приклад: <command
><userinput
>konversation,kmail</userinput
></command
></para>
<tip
><para
>Визначити <guilabel
>ІД програми</guilabel
> для програм, що зараз виконуються, можна за допомогою програми <command
>&kdcop;</command
>. Номери &DCOP; слід пропустити. Наприклад, якщо &kdcop; покаже ІД програми як <command
>kopete-3432</command
>, вам слід просто ввести <command
><userinput
>kopete</userinput
></command
>.</para
></tip
></callout>
</calloutlist>
</para>

<para
>Фільтр заміни рядків буде застосовано лише у випадку, коли виконуються всі непорожні умови з панелі <guilabel
>Застосувати цей фільтр, коли</guilabel
>. Якщо всі пункти будуть порожніми, фільтр буде застосовано до всього тексту.</para>

<para
>Пошук збігів не враховує регістру.</para>

<para
>Під час пошуку слів фільтр заміни рядків використовує внутрішні формальні вирази у вигляді <command
>\s<userinput
>слово</userinput
>\s</command
>. Іншими словами, кожне слово має бути виокремлено (пробілами) з обох боків.</para>

<para
>Обговорення способів створення формальних виразів не стосується предмета цього підручника. Якщо ви встановили редактор формальних виразів &kde;, у вікнах <guilabel
>Додати</guilabel
> і <guilabel
>Редагувати</guilabel
> з’явиться відповідна кнопка, яка допоможе вам у створенні формальних виразів. Редактор формальних виразів &kde; є частиною пакунка <command
>kdeutils</command
>.</para>

<para
>Програма &ktts; постачається з декількома списками слів, зокрема списком емоційок, на зразок «:-)», деяких абревіатур, які типово використовуються у IRC або програм для миттєвого обміну повідомленнями, та списком інших абревіатур. Крім того, до програми додається список спеціальних символів, які не може обробити поточна версія польського диктора Festival. Якщо вам вдасться створити власні корисні списки слів, скористайтеся кнопкою <guibutton
>Зберегти</guibutton
>, щоб зберегти такий список до файла, а потім надішліть файл команді розробників &ktts;, щоб її учасники змогли включити надіслані вами списки до наступних версій програми.</para>

</sect2>

<!-- ...................................................................... -->

<sect2 id="xmltransformer">
<title
>Налаштування фільтрів перетворення &XML;</title>

<para
>Фільтр перетворення &XML; використовує файли XSLT для перетворення &XML; з одного формату на інший. XSLT, мова стилів &XML; для перетворень є стандартною мовою W3C для виконання таких перетворень. Такі фільтри можна застосовувати лише для коректних файлів &XML;. Крім того, вам слід встановити програму <command
>xsltproc</command
>.</para>

<para>
    <screenshot>
        <screeninfo
>Перетворення &XML;</screeninfo>
        <mediaobjectco>
            <imageobjectco>
                <areaspec units="calspair">
                    <area id="pt-xmltransformer-1" coords="1 1"/>
                    <area id="pt-xmltransformer-2" coords="1 1"/>
                    <area id="pt-xmltransformer-3" coords="1 1"/>
                    <area id="pt-xmltransformer-4" coords="1 1"/>
                    <area id="pt-xmltransformer-5" coords="1 1"/>
                </areaspec>
                <imageobject>
                    <imagedata fileref="xmltransformer.png" format="PNG"/>
                </imageobject>
            </imageobjectco>
            <textobject>
                <phrase
>Перетворення &XML;</phrase>
            </textobject>
        </mediaobjectco>
    </screenshot>
</para>

<para>
<calloutlist>
<callout arearefs="pt-xmltransformer-1"
><para
>Введіть назву вашого фільтра. Скористайтеся назвою, за якою ви згодом зможете визначити потрібний фільтр серед інших фільтрів.</para
></callout>
<callout arearefs="pt-xmltransformer-2"
><para
>Введіть повну адресу існуючого файла XSLT, за допомогою якого буде виконано перетворення.</para
></callout>
<callout arearefs="pt-xmltransformer-3"
><para
>Вкажіть адресу програми <command
>xsltproc</command
>. Якщо програма xsltproc знаходиться у каталозі, вказаному у змінній середовища PATH, просто введіть <command
><userinput
>xsltproc</userinput
></command
>.</para
></callout>
<callout arearefs="pt-xmltransformer-4"
><para
>Якщо позначено, фільтр буде застосовано, лише якщо у &XML; є вказаний кореневий елемент або специфікація <command
><![CDATA[<!DOCTYPE]]></command
>, що починається з введеного рядка. Таким чином програма відрізнятиме одну форму &XML; від іншої. Наприклад, <command
><userinput
>html</userinput
></command
> у полі <guilabel
>DOCTYPE</guilabel
> відповідатиме документам <command
><![CDATA[<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
>]]></command
>. </para
></callout>
<callout arearefs="pt-xmltransformer-5"
><para
>Якщо позначено, фільтр буде застосовано, лише якщо текст було надіслано однією з програм зі списку. Ви можете вказати декілька назв програм, відокремивши ці назви комою. Приклад: <command
><userinput
>konversation,kmail</userinput
></command
></para>
<tip
><para
>Визначити <guilabel
>ІД програми</guilabel
> для програм, що зараз виконуються, можна за допомогою програми <command
>&kdcop;</command
>. Номери &DCOP; слід пропустити. Наприклад, якщо &kdcop; покаже ІД програми як <command
>kopete-3432</command
>, вам слід просто ввести <command
><userinput
>kopete</userinput
></command
>.</para
></tip
></callout>
</calloutlist>
</para>

<para
>Фільтр перетворення &XML; буде застосовано до тексту, лише якщо буде знайдено вказаний кореневий елемент або DOCTYPE і якщо ідентифікатор програми відповідатиме вказаному у полі <guilabel
>Застосувати цей фільтр, коли</guilabel
>. Якщо елемент у цьому полі буде порожнім, перевірка не виконуватиметься, отже, якщо всі поля будуть порожніми, фільтр буде застосовано до будь-якого тексту. Але вам слід би заповнити принаймні одне поле, оскільки далеко не всі завдання матимуть формат &XML;.</para>

</sect2>

<!-- ...................................................................... -->

<sect2 id="talkerchooser">
<title
>Налаштування фільтрів вибору диктора</title>

<para
>Фільтри вибору диктора застосовують для переспрямування тексту до бажаного диктора, налаштованого на вкладці <guilabel
>Диктор</guilabel
>, або до будь-якого диктора з вказаними атрибутами. Наприклад, ви можете вказати, що текст, який надходить від програми <command
>kmail</command
> слід вимовляти за допомогою налаштованого диктора з жіночим голосом. Див. <xref linkend="configure-plugin"/>.</para>

<para
>Перед тим, як &ktts; почне передавати текст до фільтрів, програма має визначитися з диктором, який вимовлятиме текст. Вибір диктора буде засновано на параметрах диктора, вказаних програмою, яка надіслала текст до &ktts;, та параметрами диктора, які ви визначили на вкладці <guilabel
>Диктори</guilabel
>. Фільтр вибору диктора надає вам змогу перевизначити обраний фільтр. </para>

<para>
    <screenshot>
        <screeninfo
>Вибір диктора</screeninfo>
        <mediaobjectco>
            <imageobjectco>
                <areaspec units="calspair">
                    <area id="pt-talkerchooser-1" coords="1 1"/>
                    <area id="pt-talkerchooser-2" coords="1 1"/>
                    <area id="pt-talkerchooser-3" coords="1 1"/>
                    <area id="pt-talkerchooser-4" coords="1 1"/>
                    <area id="pt-talkerchooser-5" coords="1 1"/>
                </areaspec>
                <imageobject>
                    <imagedata fileref="talkerchooser.png" format="PNG"/>
                </imageobject>
            </imageobjectco>
            <textobject>
                <phrase
>Вибір диктора</phrase>
            </textobject>
        </mediaobjectco>
    </screenshot>
</para>

<para>
<calloutlist>
<callout arearefs="pt-talkerchooser-1"
><para
>Введіть назву вашого фільтра. Скористайтеся назвою, за якою ви згодом зможете визначити потрібний фільтр серед інших фільтрів.</para
></callout>
<callout arearefs="pt-talkerchooser-2"
><para
>Якщо позначено, фільтр буде застосовано, лише якщо текст міститиме введений формальний вираз. Якщо встановлено редактор формальних виразів &kde;, натисніть кнопку перегляду, це допоможе вам у створенні формального виразу.</para>
<tip
><para
>Щоб покращити швидкодію, спробуйте «прив’язати» формальний вираз до початку рядка. Іншими словами, почніть ваш формальний вираз з тексту <command
><userinput
><![CDATA[^]]></userinput
></command
>.</para
></tip
></callout>
<callout arearefs="pt-talkerchooser-3"
><para
>Якщо позначено, фільтр буде застосовано, лише якщо текст було надіслано однією з програм зі списку. Ви можете вказати декілька назв програм, відокремивши ці назви комою. Приклад: <command
><userinput
>konversation,kmail</userinput
></command
></para>
<tip
><para
>Визначити <guilabel
>ІД програми</guilabel
> для програм, що зараз виконуються, можна за допомогою програми <command
>&kdcop;</command
>. Номери &DCOP; слід пропустити. Наприклад, якщо &kdcop; покаже ІД програми як <command
>kopete-3432</command
>, вам слід просто ввести <command
><userinput
>kopete</userinput
></command
>.</para
></tip
></callout>
<callout arearefs="pt-talkerchooser-4"
><para
>Тут слід вказати параметри диктора, якому ви бажаєте доручити виголошення тексту. Якщо текст задовольнятиме вказаним вище умовам, буде обрано диктора, який найкраще відповідає вказаним вами тут параметрам. Щоб відкрити діалогове вікно <guilabel
>Вибрати диктора</guilabel
>, натисніть кнопку, розташовану праворуч. Див. <xref linkend="selecttalker"/>.</para
></callout>
<callout arearefs="pt-talkerchooser-5"
><para
>Скористайтеся цими кнопками для того, щоб зберегти ваші параметри вибору диктора, завантажити параметри зі збереженого файла або відновити початкові значення всіх параметрів.</para
></callout>
</calloutlist>
</para>

<para
>Фільтр вибору диктора буде застосовано, лише якщо виконуватимуться всі непорожні умови з панелі <guilabel
>Застосувати цей фільтр, коли</guilabel
>. Вам слід вказати принаймні одну умову на цій панелі.</para>

<para
>Найпростішим шляхом вивчення налаштування вибору диктора є експеримент. Вимкніть вибір диктора і надішліть програмі якесь текстове завдання. Подивіться на вкладці <guilabel
>Завдання</guilabel
>, який вибір диктора зробила програма &ktts;. Натисніть кнопку <guibutton
>Змінити диктора</guibutton
>, введіть певні параметри і подивіться, як вплинули ці параметри на поведінку програми. Звичайно ж, щоб мати змогу щось налаштовувати, вам слід встановити хоча б декілька дикторів.</para>

</sect2>

<!-- ...................................................................... -->

<sect2 id="sbd">
<title
>Налаштування фільтрів визначення меж речення</title>

<para
>За допомогою фільтрів визначення меж речення (Sentence Boundary Detector або SBD) текст розбивається на окремі речення. Таке розбиття є важливим, оскільки розбиття</para>

<itemizedlist>
<listitem
><para
>надає змогу &ktts; швидше розпочати синтез мовлення, оскільки спочатку слід буде синтезувати лише перше речення, а не весь блок тексту, на синтез мовлення з якого може бути витрачено значний час,</para
></listitem>
<listitem
><para
>надає вам змогу перемикати синтез на речення вперед і назад на вкладці <guilabel
>Завдання</guilabel
> і</para
></listitem>
<listitem
><para
>надає вам змогу призупиняти або повністю зупиняти виконання текстових завдань за допомогою вкладки <guilabel
>Завдання</guilabel
>, навіть якщо синтезатор мовлення не підтримує таких можливостей.</para
></listitem>
</itemizedlist>

<para
>З певних причин, стандартний фільтр визначення меж речення буде автоматично увімкнено під час першого запуску <command
>kttsmgr</command
>, цей фільтр неможливо вимкнути (хоча ви можете його вилучити). Ми радимо вам не змінювати параметри цього фільтра, якщо ви маєте недостатні знання щодо того, що робите.</para>

<para
>Але ви можете додати власні фільтри SBD, призначені для вирішення певних проблем. Наприклад, станом на лютий 2005 року польський диктор для Festival мав неприємну ваду з обробкою пунктуації у реченні. Він, наприклад, вимовляв точки у кінці речення. Цю проблему не можна вирішити створенням фільтра заміни рядків для вилучення пунктуації з речення, оскільки такий фільтр не дасть стандартному SBD визначити межі будь-якого речення. Замість цього ви можете створити змінену версію стандартного SBD, яка визначатиме межі речень і одночасно вилучатиме знаки пунктуації з речення. Щоб зробити це, додайте фільтр SBD, а потім скористайтеся кнопкою <guibutton
>Завантажити</guibutton
>, щоб завантажити файл <filename
>polish_festival_sbdrc</filename
>, який постачається з &ktts;.</para>

<para
>Робота фільтрів SBD полягає у пошуку формального виразу межі речення і додавання символів Tab (десятковий номер 8) на межі речення. (Всі символи Tab автоматично вилучаються з тексту до фільтрування.) Зауважте, що стандартний фільтр SBD зберігає знаки пунктуації у реченні. </para>

<para
>Фільтри SBD ніколи не застосовуються до повідомлень сповіщень &kde; (knotify), Попереджень, Повідомлень або Виведення засобу читання з екрана.</para>

<para
>Якщо ви випадково вилучили стандартний фільтр виявлення меж речення, ви можете відновити його за допомогою завантаження файла <filename
>standard_sbdrc</filename
>, який постачається разом з &ktts;.</para>

</sect2>

</sect1>

<!-- ...................................................................... -->

<sect1 id="selecttalker">
<title
>Вибір дикторів (додаткові відомості)</title>

<para
>На вкладці <guilabel
>Диктори</guilabel
> ви можете налаштувати будь-яку кількість дикторів. Див. розділ <xref linkend="configure-plugin"/>. Програми під час надсилання тексту до &ktts; можуть вказувати параметри бажаного диктора, який виголосить текст. &ktts; знайде найближчий відповідник цього диктора зі списку налаштованих вами дикторів, щоб задовольнити запит програми. Наприклад, програма може надіслати запит на вимову тексту англійським диктором з жіночим голосом. Якщо ви налаштували диктора, який може вимовляти тексти англійською жіночим голосом, буде використано цього диктора. Якщо ви налаштували лише дикторів з чоловічими голосами, буде використано одного з цих дикторів. Якщо програма не вкаже ніяких параметрів, буде використано типового (найвищого у списку) диктора зі списку на вкладці <guilabel
>Диктори</guilabel
>.</para>

<para
>Програми під час визначення параметрів бажаного диктора можуть вказувати параметри, які мають пріоритет над іншими параметрами. Наприклад, програма може вказати, що текст слід вимовляти голосним жіночим голосом, і визначити, що параметри «голосним» матиме пріоритет над параметром «жіночим». Якщо у вас налаштовано тихий жіночий і голосний чоловічий голоси, &ktts; обере голосний чоловічий голос для виголошення тексту. Оскільки мова є визначальним параметром для того, щоб вимовлений текст можна було зрозуміти, параметр мови завжди матиме пріоритет над іншими параметрами.</para>

<para
>За допомогою діалогового вікна <guilabel
>Вибрати диктора</guilabel
> ви можете перевизначити параметри програми диктора. Це діалогове вікно буде відкрито,</para>

<itemizedlist>
<listitem
><para
>якщо ви натиснете кнопку <guibutton
>Змінити диктора</guibutton
> на вкладці <guilabel
>Завдання</guilabel
> або</para
></listitem>
<listitem
><para
>якщо ви натиснете кнопку <guilabel
>Диктор</guilabel
> у діалоговому вікні <guilabel
>Налаштування фільтра</guilabel
> для вибору фільтра вибору диктора або</para
></listitem>
<listitem
><para
>якщо ви натиснете кнопку <guilabel
>Диктор</guilabel
> на вкладці <guilabel
>Сповіщення</guilabel
>.</para
></listitem>
</itemizedlist>

<para>
    <screenshot>
        <screeninfo
>Вибір диктора</screeninfo>
        <mediaobjectco>
            <imageobjectco>
                <areaspec units="calspair">
                    <area id="pt-selecttalker-1" coords="1 1"/>
                    <area id="pt-selecttalker-2" coords="1 1"/>
                    <area id="pt-selecttalker-3" coords="1 1"/>
                    <area id="pt-selecttalker-4" coords="1 1"/>
                    <area id="pt-selecttalker-5" coords="1 1"/>
                </areaspec>
                <imageobject>
                    <imagedata fileref="selecttalker.png" format="PNG"/>
                </imageobject>
            </imageobjectco>
            <textobject>
                <phrase
>Вибір диктора</phrase>
            </textobject>
        </mediaobjectco>
    </screenshot>
</para>

<para
>У цьому діалоговому вікні буде запропоновано три методи визначення бажаних параметрів диктора:</para>

<itemizedlist>
<listitem
><para
>Використовувати типового диктора (того, чий запис займає найвищий рядок на вкладці <guilabel
>Диктори</guilabel
>). Іншими словами, не вказувати параметрів диктора.</para
></listitem>
<listitem
><para
>Використовувати найближчий відповідник диктора, який має один або декілька з вказаних параметрів.</para
></listitem>
<listitem
><para
>Використовувати найближчий відповідник диктора, який має всі вказані параметри. Якщо ви не вилучатимете і не змінюватимете параметри диктора, &ktts; обере відповідного диктора. Якщо ви вилучите або зміните параметри диктора, &ktts; обере найближчий відповідник диктора з початковими параметрами диктора.</para
></listitem>
</itemizedlist>

<para>
<calloutlist>
<callout arearefs="pt-selecttalker-1"
><para
>Оберіть метод введення параметрів диктора за допомогою цих перемикачів.</para
></callout>
<callout arearefs="pt-selecttalker-2"
><para
>Тут ви можете обрати параметри бажаного диктора. Залиште поле параметра порожнім, якщо вам байдуже значення параметра.</para
></callout>
<callout arearefs="pt-selecttalker-3"
><para
>Позначте цей пункт, якщо ви бажаєте, щоб цей параметр мав пріоритет над іншими параметрами. Ви можете позначити декілька пунктів одразу.</para
></callout>
<callout arearefs="pt-selecttalker-4"
><para
>Оскільки мова є визначальним параметром для того, щоб вимовлений текст можна було зрозуміти, параметр мови завжди матиме пріоритет над іншими параметрами. Навряд чи цей параметр вам колись знадобиться. Єдиним випадком його використання може бути випадок, у якому вам відомо, що певна програма надсилає текст мовою, відміною від мови вашої стільниці.</para
></callout>
<callout arearefs="pt-selecttalker-5"
><para
>Тут наведено список дикторів, яких на поточний момент часу налаштовано у &ktts;. Вибором одного з цих дикторів ви, по суті, вказуєте всі параметри цього диктора. Якщо цей диктор буде діяти на час надсилання тексту, буде отримано точний збіг і використано саме цього диктора. Але, якщо ви пізніше вилучите диктора або зміните його налаштування, може статися, що він вже не буде вибраним диктором. Буде обрано диктора, який найкраще відповідає початковим параметрам.</para
></callout>
</calloutlist>
</para>

<para
>Параметр <guilabel
>Мова</guilabel
> є особливим, оскільки виголошений текст може стати зовсім незрозумілим, якщо його буде вимовлено диктором, який вимовляє тексти мовою, відмінною від мови тексту. Тому атрибут мови завжди має пріоритет над іншими атрибутами. Якщо ви вкажете мову, вказаний параметр перевизначить вибрану мову, але, якщо ви залишите це поле порожнім, буде використано існуючі налаштування мови. Якщо програма, яка надсилає текст до &ktts; не вказала мови, &ktts; припускатиме, що мова збігається з мовою найвищого у списку диктора, якого ви налаштували на вкладці <guilabel
>Диктори</guilabel
>. Іншими словами, вважатиметься, що найвищий у списку диктор виголошує тексти мовою вашої стільниці.</para>

<tip
><para
>Щоб відновити всі початкові значення параметрів у розділі <guilabel
>Вживати диктора, що найближче підходить і має</guilabel
>, спочатку позначте варіант <guilabel
>Використовувати типового диктора</guilabel
>, а потім позначте варіант <guilabel
>Вживати диктора, що найближче підходить і має</guilabel
>.</para
></tip>

</sect1>

</chapter>

<!-- ====================================================================== -->

<chapter id="commands">
<title
>Довідка щодо команд</title>

<!-- (OPTIONAL, BUT RECOMMENDED) This chapter should list all of the
application windows and their menubar and toolbar commands for easy reference.
Also include any keys that have a special function but have no equivalent in the
menus or toolbars. This may not be necessary for small apps or apps with no tool
or menu bars. -->

<para
>ЩЕ НЕ НАПИСАНО</para>

</chapter>

<!--

<sect1 id="kapp-mainwindow">
<title
>The main &ktts; window</title>

<sect2>
<title
>The File Menu</title>
<para>
<variablelist>
<varlistentry>
<term
><menuchoice>
<shortcut>
<keycombo action="simul"
>&Ctrl;<keycap
>N</keycap
></keycombo>
</shortcut>
<guimenu
>File</guimenu>
<guimenuitem
>New</guimenuitem>
</menuchoice
></term>
<listitem
><para
><action
>Creates a new document</action
></para
></listitem>
</varlistentry>
<varlistentry>
<term
><menuchoice>
<shortcut>
<keycombo action="simul"
>&Ctrl;<keycap
>S</keycap
></keycombo>
</shortcut>
<guimenu
>File</guimenu>
<guimenuitem
>Save</guimenuitem>
</menuchoice
></term>
<listitem
><para
><action
>Saves the document</action
></para
></listitem>
</varlistentry>
<varlistentry>
<term
><menuchoice>
<shortcut>
<keycombo action="simul"
>&Ctrl;<keycap
>Q</keycap
></keycombo>
</shortcut>
<guimenu
>File</guimenu>
<guimenuitem
>Quit</guimenuitem>
</menuchoice
></term>
<listitem
><para
><action
>Quits</action
> &ktts;</para
></listitem>
</varlistentry>
</variablelist>
</para>

</sect2>

-->

<!-- ====================================================================== -->

<chapter id="developers">
<title
>Інструкція для розробників &ktts;</title>

<para
>&ktts; має два інтерфейси для творців програм (API): </para>

<itemizedlist>
<listitem
><para
>Програмний інтерфейс синтезу мовлення з тексту &kde;, який використовується розробниками програм для надання програмам можливостей синтезу мовлення з тексту. Обмін інформацією між програмами і KTTSD відбувається за посередництва &DCOP;.</para
></listitem>
<listitem
><para
>Програмний інтерфейс додатків KTTSD, який використовується для додавання до KTTSD додатків синтезу мовлення з тексту, за допомогою яких &ktts; зможе працювати з новими рушіями синтезу мовлення.</para
></listitem>
</itemizedlist>

<para
>У цьому розділі подано короткий опис програмного інтерфейсу синтезу мовлення з тексту &DCOP; &kde;. Повноцінну документацію щодо обох програмних інтерфейсів можна знайти у мережі на сайті <ulink url="http://accessibility.kde.org/developer/kttsd/"
>модуля доступності &kde;</ulink
> http://accessibility.kde.org). </para>


<!-- ...................................................................... -->


<sect1 id="dcop-interface">
<title
>Інтерфейс &DCOP; &ktts;</title>

<para
>Програми передаю запити до служб синтезу мовлення з тексту за допомогою інтерфейсу &DCOP; &kde; для програми <command
>kttsd</command
> і об’єкта <command
>KSpeech</command
>. </para>

<para
>Введіть перелічені нижче команди у &konsole;.</para>

<para
>Якщо KTTSD ще не запущено</para>

<para
><userinput
>kttsd</userinput
></para>

<para
>Щоб поставити завдання з вимови тексту до черги</para>

<para
><userinput
>dcop kttsd KSpeech setText "<replaceable
>текст</replaceable
>" "<replaceable
>мовець</replaceable
>"</userinput
></para>

<para
>де <userinput
><replaceable
>текст</replaceable
></userinput
> — це текст, який буде вимовлено, <userinput
><replaceable
>диктор</replaceable
></userinput
> — код мови, наприклад, <userinput
><replaceable
>en</replaceable
></userinput
>, <userinput
><replaceable
>cy</replaceable
></userinput
> тощо. Ця команда не призводить безпосередньо до вимовляння тексту, вона всього лише надсилає текстове завдання для виголошення.</para>

<para
>Приклад.</para>

<para
><userinput
>dcop kttsd KSpeech setText "This is a test." "en"</userinput
></para>

<para
>Щоб вимовити останнє текстове завдання з черги, виконайте команду</para>

<para
><userinput
>dcop kttsd KSpeech startText <replaceable
>0</replaceable
></userinput
></para>

<para
>У цьому випадку, <userinput
>0</userinput
> є посиланням на останнє текстове завдання у черзі. Ви також можете вказати певний номер завдання. (Якщо номер завдання не буде вказано, слід використовувати <userinput
>0</userinput
>.)</para>

<para
>Щоб зупинити поточне завдання з вимови</para>

<para
><userinput
>dcop kttsd KSpeech stopText 0</userinput
></para>

<para
>Залежно від використаного додатка мовлення, мовлення може бути припинено не одразу.</para>

<para
>Існує ще безліч команд, які можна використати. Щоб побачити список можливих команд, виконайте команду:</para>

<para
><userinput
>dcop kttsd KSpeech</userinput
></para>

<para
>або прочитайте довідник <ulink url="http://accessibility.kde.org/developer/kttsd/"
>Програмний інтерфейс синтезу мовлення з тексту у &kde;</ulink
> у мережі.</para>

</sect1>

</chapter>

<!-- ====================================================================== -->

<chapter id="faq">
<title
>Запитання і відповіді</title>
&reporting.bugs; &updating.documentation; <qandaset id="faqlist">
<qandaentry>
<question>
<para
>Команда <command
>kttsmgr</command
> аварійно завершує роботу одразу після запуску. Програму було зібрано з підтримкою усунення вад, але у виводі навіть немає зворотного трасування.</para>
</question>
<answer>
<para
>GStreamer аварійно завершує роботу разом з &ktts;. Скоріше за все, вам слід «зареєструвати» GStreamer. Для GStreamer 0.8x командою реєстрації буде <command
>gst-register-0.8</command
>. Якщо така команда не виправить проблеми, можливо, у вас встановлено несумісну версію GStreamer. Ви можете спробувати оновити або вилучити GStreamer.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para
>Вивід звуку до ALSA не працює, якщо я одночасно відтворюю музику у іншій програмі. Якщо я призупиняю виконання текстового завдання, &ktts; повисає. Серед інформації, яка виводиться до &konsole;, помітні повідомлення «unable to open PCM».</para>
</question>
<answer>
<para
>Ви маєте справу з проблемою конкуренції за пристрій ALSA, яка призводить до неможливості одночасного відкриття декількох пристроїв PCM. Можливі вирішення проблеми можна знайти на веб-сайті ALSA (dmix): <ulink url="www.alsa-project.org"
>www.alsa-project.org</ulink
> </para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para
>Мені потрібно почати все з початку. Якщо повністю припинити роботу &ktts;?</para>
</question>
<answer>
<para
>Введіть у &konsole; такі команди: <programlisting
>killall kttsd
killall kttsmgr
</programlisting>
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para
>Як переглянути відомості для усунення вад, які виводить <command
>kttsd</command
>?</para>
</question>
<answer>
<para
>Відкрийте два вікна &konsole;. У першому виконайте команду <command
>kttsd</command
>, а потім виконайте команду <command
>kttsmgr</command
> у другому.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para
>Я звантажив (звантажила) додатковий голос Festival з інтернету. Після його встановлення я можу користуватися ним у Festival, але у списку <command
>kttsmgr</command
> цей голос так і не з’явився.</para>
</question>
<answer>
<para
>Змініть файл <command
>$KDEHOME/share/apps/kttsd/festivalint/voices</command
>: додайте у нього нового диктора. Як зразок можна використатися записи для інших дикторів. Якщо вам успішно вдалося додати диктора, будь ласка, надішліть відповідну латку розробникам разом з адресою &URL;, за якою ви звантажили файл диктора.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para
>Жоден з підтримуваних синтезаторів мовлення не підтримує потрібної мені мови. Де взяти синтезатор для моєї мови?</para>
</question>
<answer>
<para
>Вам допоможе Google(tm). Допомогти має також це <ulink url="http://tcts.fpms.ac.be/synthesis/mbrola/mbrtts.html"
>посилання</ulink
>. Якщо вам вдасться знайти вільний рушій синтезу, який підтримуватиме потрібну вам мову, і ви забажаєте, щоб підтримку цієї мови було додано до &ktts;, будь ласка, зв’яжіться з командою розробників програми. Особливо приємно буде додати рушії з відкритими кодами. Якщо вам відомий комерційний рушій, ви можете переконати його виробника надати безкоштовну копію цього рушія команді розробників &ktts;. Доки підтримку не додано, ви зможете користуватися синтезатором за допомогою додатка <guilabel
>Команда</guilabel
>. Див. розділ <xref linkend="using-with-command"/>.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para
>&ktts; вимовляє слова занадто повільно. Як можна пришвидшити процес вимовляння?</para>
</question>
<answer>
<para
>На вкладці <guilabel
>Звук</guilabel
> є параметр <guilabel
>Швидкість</guilabel
>. Щоб мати змогу керувати швидкістю за допомогою цього параметра, вам слід встановити програму <command
>sox</command
> у якийсь з каталогів, визначених у змінній PATH. Для деяких додатків синтезу, наприклад, Festival Interactive, параметр <guilabel
>Швидкість</guilabel
> є і у діалоговому вікні налаштування диктора. Залежно від голосу, яким ви користуєтеся, його може бути увімкнено або вимкнено.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para
>Гаразд, це працює у деяких випадках, але вимовляння тексту веб-сторінок все одно залишається занадто повільним.</para>
</question>
<answer>
<para
>Параметри швидкості не братимуться до уваги &ktts; під час вимовляння &HTML;. (Причиною цього є те, що &HTML; перетворюється на SSML, у якому є власні теґи «rate».) Вам слід або вимкнути фільтр перетворення &XML; для &HTML; (див. розділ <xref linkend="filters"/>), або, якщо почуваєтеся на силі, змінити файл .xsl у фільтрі перетворення &HTML; на SSML і збільшити у ньому швидкість виголошення тексту.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para
>Я не можу зробити так, щоб текст веб-сторінок виголошувався жіночим голосом. Мною налаштовано жіночого диктора Festival, але &ktts; завжди читає уголос текст веб-сторінок чоловічим голосом.</para>
</question>
<answer>
<para
>Принаймні у Festival 1.95 beta, теґ SABLE GENDER не працюватиме. Щоб уникнути помилок у Festival, файл .xsl для переведення SSML у SABLE вирізає теґи статі. Те саме стосується і теґів голосу (voice).</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para
>Я налаштував (налаштувала) фільтр перетворення &XML; &HTML;, але текст веб-сторінок зовсім не виголошується, я користуюся додатком Festival.</para>
</question>
<answer>
<para
>Через ваду у Festival 1.95 beta вам слід встановити <command
>rab_diphone</command
> (британський чоловічий) голос, щоб SABLE запрацювало, навіть якщо ви не використовуєте цей голос для вимовляння веб-сторінок. Крім того, вам слід переконатися, що встановлено програму <command
>xsltproc</command
>, і що ця програма знаходиться у каталозі, вказаному у змінній середовища PATH.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para
>Певні символи та знаки пунктуації призводять до помилок синтезатора, він пропускає цілі речення або виголошує якусь маячню. Що робити?</para>
</question>
<answer>
<para
>Спершу переконайтесь, що правильно встановлено параметр <guilabel
>Кодування символів</guilabel
> для вашої мови у діалоговому вікні налаштування диктора. Якщо певні слова або символи спричиняють виникнення проблем, вам може допомогти фільтр заміни рядків. Якщо символи пунктуації у реченнях спричиняють помилки у синтезаторі, вам слід налаштувати фільтр визначення меж речень. Див. розділ <xref linkend="filters"/>.</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para
>Я додав (додала) свій власний фільтр заміни рядків, тепер &ktts; не дозволяє мені пересувати позицію вимовляння на речення вперед або назад. На вкладці <guilabel
>Завдання</guilabel
> програма вимагає, щоб у кожному завданні було не більше одного речення. Що було зроблено не так?</para>
</question>
<answer>
<para
>Вам не слід фільтрувати символи пунктуації у реченні (точку, знак питання, знак оклику, двокрапку і крапку з комою). Для таких символів слід використовувати фільтри визначення меж речень.</para>
</answer>
</qandaentry>
</qandaset>
</chapter>

<!-- ====================================================================== -->

<chapter id="credits">

<!-- Include credits for the programmers, documentation writers, and
contributors here. The license for your software should then be included below
the credits with a reference to the appropriate license file included in the KDE
distribution. -->

<title
>Подяки і ліцензія</title>

<para
>&ktts; </para>
<para
>Авторські права на програму &copy; 2002 Jos&#233; Pablo Ezequiel "Pupeno" Fern&#225;ndez <email
>pupeno@kde.org</email
> </para>
<para
>Поточний супровід: Gary Cramblitt <email
>garycramblitt@comcast.net</email
> </para>
<para
>Учасники розробки: <itemizedlist>
<listitem
><para
>Olaf Schmidt <email
>ojschmidt@kde.org</email
></para>
</listitem>
<listitem
><para
>Gunnar Schmi Dt <email
>gunnar@schmi-dt.de</email
></para>
</listitem>
<listitem
><para
>Paul Giannaros <email
>ceruleanblaze@gmail.com</email
></para>
</listitem>
</itemizedlist>
</para>

<para
>Авторські права на документацію &copy; 2004 Gary R. Cramblitt <email
>garycramblitt@comcast.net</email
> </para>

<para
>Переклад українською: Юрій Чорноіван<email
>yurchor@ukr.net</email
></para
> 
&underFDL; &underGPL; <note
><para
>Рушії синтезу мовлення, які використовуються у &ktts; мають власні правила ліцензування. Докладно про ліцензію рушія можна дізнатися з документації до нього або на веб-сайті рушія. Окремі диктори рушіїв теж можуть мати власні ліцензійні обмеження.</para
></note>

</chapter>

<!-- ====================================================================== -->

<appendix id="installation">
<title
>Встановлення</title>

<!-- ...................................................................... -->


<sect1 id="getting-kapp">
<title
>Як отримати &ktts;</title>

<!-- This first entity contains boiler plate for applications that are
part of KDE CVS.  You should remove it if you are releasing your
application --> 

<para
>&install.intro.documentation; </para>

<para
>Команда встановлення у Debian: <command
>apt-get install kdeaccessibility</command
></para>

<note>
<para
>Посилання на пакунки з початковими кодами і пакунки з програмою ви можете знайти на веб-сайті <ulink url="http://accessibility.kde.org/developer/kttsd/"
>Доступності &kde;</ulink
> (http://accessibility.kde.org).</para>

<para
>Якщо у вас є доступ до сховища коду &kde;, ви можете звантажити &ktts; разом з модулем <command
>kdeaccessibility</command
>. &ktts; знаходитиметься у теці <command
>kttsd</command
>. Крім того, ви можете звантажити архіви з початковими кодами модуля kdeaccessibility за адресою <ulink url="ftp://ftp.kde.org/pub/kde/"
> ftp://ftp.kde.org/pub/kde/</ulink
></para>
</note>

</sect1>

<!-- ...................................................................... -->


<sect1 id="requirements">
<title
>Вимоги</title>

<para
>Необхідні компоненти:</para>

<para>
<itemizedlist>
<listitem
><para
>&kde; версії 3.2 або пізнішої.</para
></listitem>
<listitem
><para
>Рушій перетворення тексту на мовлення. У цій версії підтримуються такі рушії і мови.</para>

<para>
<informaltable id="synth-engines">
<tgroup cols="2">
<tbody>

<row>
<entry
>Festival</entry>
<entry
>Американська англійська, британська, іспанська, німецька, фінська, чеська, польська, російська, італійська, французька канадська, кісуахілі, зулуська і ібібіо</entry>
</row>

<row>
<entry
>Festival Lite (flite)</entry>
<entry
>Англійська</entry>
</row>

<row>
<entry
>Hadifix (&mbrola; і txt2pho)</entry>
<entry
>Німецька, угорська</entry>
</row>

<row>
<entry
>Epos</entry>
<entry
>Чеська, словацька</entry>
</row>

<row>
<entry
>FreeTTS</entry>
<entry
>Англійська</entry>
</row>

</tbody>
</tgroup>
</informaltable>
</para>

<para
>Програма також працює з будь-яким рушієм синтезу, який можна запустити як команду з &konsole;.</para>

<note
><para
>Список мов, наведений вище, не є ані повним, ані таким, що відповідає поточній ситуації. Повний список підтримуваних мов можна знайти у специфікаціях кожного з рушіїв. Крім того, на веб-сайті <ulink url="http://accessibility.kde.org/developer/kttsd/index.php"
> &ktts;</ulink
> ви можете знайти додаткові відомості, які, можливо, не увійшли до цього підручника. </para
></note>

<note>
<para
>У &ktts; використано гнучку систему додатків для рушіїв синтезу тексту з мовлення. Якщо ви бажаєте розширити можливості &ktts; підтримкою ще одного рушія, зв’яжіться з командою розробників програми. </para>
</note>

<para
>Перегляньте розділ <xref linkend="configuration"/>, щоб прочитати настанови щодо кожного з цих рушіїв. </para>

</listitem>

<listitem>
<para
>Принаймні одна з таких звукових підсистем: <itemizedlist>
<listitem
><para
>Підсистема &arts; &kde;. Зазвичай, &arts; встановлюється разом з &kde;.</para
></listitem>
<listitem
><para
>ALSA (Advanced &Linux; Sound Architecture). ALSA встановлено у більшості систем &Linux;. (<ulink url="www.alsa-project.org"
>www.alsa-project.org</ulink
>)</para
></listitem>
<listitem
><para
>GStreamer версії 0.8.7 або новішої. <emphasis
>Зауваження</emphasis
>: не забудьте зареєструвати ваші додатки GStreamer командою <command
>gst-register</command
>, перш ніж використовувати GStreamer у &ktts;. (<ulink url="http://gstreamer.freedesktop.org"
> http://gstreamer.freedesktop.org</ulink
>)</para
></listitem>
<listitem
><para
>Бібліотека aKode. aKode — це бібліотека з декодування, яка є частиною &kde;. </para
></listitem>
</itemizedlist>

<note
><para
>Проект &kde; планує відмовитися від використання &arts;, починаючи з версії 4 цього стільничного середовища.</para
></note>

<note
><para
>У деяких користувачів виникають проблеми з конфліктами програм у боротьбі за пристрій ALSA. Якщо у вашій системі виникає подібна проблема, ви не зможете одночасно слухати музику і текст, виголошений синтезатором мовлення. Крім того, &ktts; зависатиме, якщо ви призупините текстове завдання, а потім розпочнете виконання іншого. Можливі вирішення проблеми можна знайти на веб-сайті ALSA (dmix).</para
></note>

<note
><para
>Станом на липень 2005 року, aKode не підтримувала можливості призупинення. Якщо ви призупиняли виконання текстового завдання у &ktts;, програма завершувала виголошення останнього речення.</para
></note>

</para>
</listitem>

</itemizedlist>
</para>

<para
>Додаткові компоненти</para>

<para>
<itemizedlist>

<listitem>
<para
>Для керування швидкістю виголошення текстів слід встановити програму <command
>sox</command
>, але загалом, для вимовляння текстів, ця програма не є обов’язковою. Користувачі Debian можуть встановити sox командою <command
>apt-get install sox</command
>. Sox є однією з програм, які записують на більшість компакт-дисків дистрибутивів &Linux;.</para>
</listitem>

<listitem>
<para
>Для підтримки SSML та фільтра перетворення &XML; вам слід встановити програму <command
>xsltproc</command
>, але загалом для роботи вимовляння тексту ця програма не є обов’язковою. Користувачі Debian можуть встановити xsltproc командою <command
>apt-get install xsltproc</command
>.</para>
</listitem>

</itemizedlist>
</para>

</sect1>

<!-- ...................................................................... -->


<sect1 id="compilation">
<title
>Збирання і встановлення</title>

<!-- This entity contains the boilerplate text for standard -->
<!-- compilation instructions.  If your application requires any -->
<!-- special handling, remove it, and replace with your own text. -->

<!-- &install.compile.documentation; -->

<para
>Для збирання &ktts; вам слід встановити свіжу (&kde; 3.4 або новішу) версію бібліотек &kde; для розробки, зокрема kdelibs і arts.</para>

<para
>Якщо ви звантажили архів з &ktts;, увійдіть до системи як звичайний користувач і розпакуйте архів до відповідної теки, а потім виконайте наведені нижче команди.</para>

<programlisting
>./configure
make
</programlisting>

<para
>Можна використовувати такі параметри <command
>configure</command
>:</para>

<para>
<informaltable id="configure-audio-options">
<tgroup cols="3">
<tbody>

<row>
<entry
><emphasis
>Типовий параметр</emphasis
></entry>
<entry
><emphasis
>Опис</emphasis
></entry>
<entry
><emphasis
>Альтернатива</emphasis
></entry>
</row>
<row>
<entry
>--with-arts</entry>
<entry
>Збирає звуковий додаток arts.</entry>
<entry
>--without-arts</entry>
</row>
<row>
<entry
>--with-alsa=check</entry>
<entry
>Збирає звуковий додаток ALSA.</entry>
<entry
>--with-alsa=no</entry>
</row>
<row>
<entry
>--with-gstreamer=no</entry>
<entry
>Не збирати звуковий додаток GStreamer.</entry>
<entry
>--with-gstreamer=check</entry>
</row>
<row>
<entry
>--with-akode=no</entry>
<entry
>Не збирати звуковий додаток aKode.</entry>
<entry
>--with-akode=check</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>

<note
><para
>У &kde; 4 додаток &arts; буде вилучено або, принаймні, не буде типово збиратися. </para
></note>

<para
>Наведені нижче додатки синтезаторів мовлення буде зібрано за типових умов. Працездатність деяких з цих додатків залежить від наявності у системі програмного забезпечення, яке не є вільним (згідно до правил Debian). У стовпчику «Параметр налаштування, щоб не збирати» наведено команду налаштування, за допомогою якої можна скасувати збирання додатка:</para>

<para>
<informaltable id="configure-synth-options">
<tgroup cols="3">
<tbody>

<row>
<entry
><emphasis
>Синтезатор</emphasis
></entry>
<entry
><emphasis
>Ліцензія</emphasis
></entry>
<entry
><emphasis
>Параметр налаштування, щоб не збирати</emphasis
></entry>
</row>
<row
><entry
>Festival</entry
><entry
>вільна</entry
><entry
>--disable-kttsd-festivalint</entry
></row>
<row
><entry
>Festival Lite</entry
><entry
>вільна</entry
><entry
>--disable-kttsd-flite</entry
></row>
<row
><entry
>Epos</entry
><entry
>вільна</entry
><entry
>--disable-kttsd-epos</entry
></row>
<row
><entry
>Command</entry
><entry
>вільна</entry
><entry
>--disable-kttsd-command</entry
></row>
<row
><entry
>Hadifix</entry
><entry
>не вільна</entry
><entry
>--disable-kttsd-hadifix</entry
></row>
<row
><entry
>FreeTTS</entry
><entry
>не вільна</entry
><entry
>--disable-kttsd-freetts</entry
></row>
</tbody
></tgroup
></informaltable
></para>

<para
>Типово, наведені вище команди встановлять &ktts; до каталогу <filename
>/opt/kde3</filename
>. Якщо цей каталог не вказано у вашій змінній середовища $<envar
>KDEDIRS</envar
>, можливо, вам слід додати параметр налаштування <userinput
>--prefix=<replaceable
>каталог_призначення</replaceable
></userinput
>. Наприклад,</para>

<programlisting
>./configure --prefix=/usr/local
make
</programlisting>

<note
><para
>У системах Debian, каталог <filename
><replaceable
>/usr/local</replaceable
></filename
> є звичайним місцем для встановлення програм, зібраних з початкових кодів. </para
></note>

<para
>Увійдіть до системи від імені адміністративного користувача (root) і встановіть зібрану програму &ktts; наведеною нижче командою.</para>

<programlisting
>su
make install
</programlisting>

<para
>Якщо ви звантажили коди &ktts; зі сховища коду модуля <filename
>kdeaccessibility</filename
>, або звантажили архів зі знімком сховища, скористайтеся наведеними нижче командами для збирання і встановлення програми. </para>

<programlisting
>cd kdeaccessibility
echo kttsd
>inst-apps
make -f Makefile.cvs
./configure
cd kttsd
make
su
make install
</programlisting>

</sect1>

<!-- ...................................................................... -->


<sect1 id="configuration">
<title
>Налаштування</title>

<para
>Перш ніж користуватися &ktts;, переконайтеся, що рушій синтезу мовлення працює. Для виконання такої перевірки скористайтеся настановами, які постачаються разом з відповідним рушієм.</para>

<tip>
<para
>У деяких випадках вам слід надати користувачеві доступ на запис до звукового пристрою.</para>
<para
><userinput
>chmod a+rw <replaceable
>/dev/dsp*</replaceable
></userinput
></para>
</tip>

<!-- ...................................................................... -->


<sect2 id="using-with-festival">
<title
>Використання з Festival (інтерактивним)</title>

<para
>Festival є одним з найкращих наявних вільних рушіїв синтезу мовлення з тексту з відкритим кодом. Якість вимовляння рушія загалом можна оцінити як добру, рушієм підтримується досить невелика кількість мов і дикторів. Для багатьох з дикторів ви можете керувати гучністю, швидкістю виголошення тексту та тоном за допомогою &ktts;.</para>

<para
>Назва синтезатора: <guilabel
>Festival Interactive</guilabel
></para>

<para
>&URL;: <ulink url="http://www.cstr.ed.ac.uk/projects/festival/"
> http://www.cstr.ed.ac.uk/projects/festival/</ulink
> </para>

<para
>Команда встановлення у Debian: <userinput
>apt-get install festival</userinput
></para>

<para
>Вам слід встановити диктора принаймні для однієї мови. Скористайтесь настановами, які постачаються разом з Festival. Якщо ви маєте намір скористатися читанням уголос веб-сторінок, вам слід встановити диктора <command
>rab_diphone</command
> (британський чоловічий голос). </para>

<para
>Додаткові англійські голоси festival можна знайти тут:</para>

<para
><ulink url="http://hts.ics.nitech.ac.jp/"
>http://hts.ics.nitech.ac.jp/</ulink
>. </para>

<para
>Додаткові голоси іспанською, англійською і німецькою можна знайти тут:</para>

<para
><ulink url="http://cslu.cse.ogi.edu/tts/download/"
>http://cslu.cse.ogi.edu/tts/download/</ulink
></para>

<para
>Для цих дикторів вам потрібні будуть додаткові модулі, тому вам слід встановити пакунки з початковими кодами Festival. Ці диктори німецької мають обмежене поширення. </para>

<para
>Фінський чоловічий голос можна знайти тут: </para>

<para
><ulink url="http://www.ling.helsinki.fi/suopuhe/download/"
> http://www.ling.helsinki.fi/suopuhe/download/</ulink
>. </para>

<para
>Чоловічий голос для польської можна звантажити за такою адресою: </para>

<para
><ulink url="http://www.artegence.com/download/voicexml/speech/festival_polish_voice.tgz"
> http://www.artegence.com/download/voicexml/speech/festival_polish_voice.tgz</ulink
>. </para>

<para
>Чоловічий голос для російської можна звантажити за такою адресою: </para>

<para
><ulink url="http://nshmyrev.narod.ru/festival/festival.html"
>http://nshmyrev.narod.ru/festival/festival.html </ulink
></para>

<para
>Щоб використовувати цього диктора вам слід встановити принаймні Festival 1.95 beta. Розробку диктора ще не завершено. Розпакуйте архів до <filename
>festival/lib/voices/russian/</filename
>. Під час налаштування диктора російською скористайтеся кодом <userinput
>msu_ru_nsh_diphone</userinput
>. Пам’ятайте, що слід обрати 8-бітове кодування кирилиці, наприклад, <userinput
>KOI8-R</userinput
>.</para>

<para
>Голоси італійською для Festival 1.95 beta можна звантажити</para>

<para
><ulink url="http://www.csrf.pd.cnr.it/TTS/It-FESTIVAL-download.htm"
> http://www.csrf.pd.cnr.it/TTS/It-FESTIVAL-download.htm</ulink
>.</para>

<para
>Якщо у вас виникають помилки CRC під час видобування з zip, спробуйте звантажити файл ще раз.</para>

<para
>Голоси кісуахілі, зулуською та ібібіо для Festival 1.95 beta можна звантажити за адресою</para>

<para
><ulink url="http://www.llsti.org/"
>http://www.llsti.org/</ulink
>.</para>

<para
>На жаль, голос мовою хінді, який також можна звантажити за цією адресою, не працюватиме з &ktts;.</para>

<para
>Комерційні голоси, зокрема голос канадською французькою можна придбати у Cepstral, LLC за адресою</para>

<para
><ulink url="http://www.cepstral.com/"
>http://www.cepstral.com/</ulink
></para>

<para
>У розділі ЧаП на сторінці підтримки наведено відомості щодо використання дикторів у Festival.</para>

<para
>Типово, Festival включається у будь-який дистрибутив &Linux;. Перевірте наявність пакунка з цим рушієм на компакт-диску з вашим дистрибутивом.</para>

<note>
<para
>Під час використання дикторів польською, угорською та чеською мовами не забудьте встановити параметр <guilabel
>Кодування</guilabel
> у значення <userinput
>ISO 8859-2</userinput
>. </para>
<para
>Під час використання диктора російською мовою не забудьте встановити параметр <guilabel
>Кодування</guilabel
> у значення 8-бітового кодування кирилиці, наприклад, <userinput
>KOI8-R</userinput
>. </para>
</note>

<!-- ...................................................................... -->


<sect3 id="festival-with-mbrola">
<title
>Використання Festival з &mbrola;</title>

<para
>Festival можна використовувати разом з синтезатором &mbrola;. У такому режимі Festival виконує лексичний аналіз, а &mbrola; відповідає за створення звуку. Виконуваний файл &mbrola; і файли дикторів &mbrola; можна звантажити за адресою</para>

<para
><ulink url="http://festvox.org/mbrola/"
>http://festvox.org/mbrola/</ulink
>.</para>

<para
>Виконайте настанови з файла <filename
>readme.txt</filename
>, який ви знайдете у звантаженому пакунку.</para>

<para
>Зауважте, що &mbrola; не є повноцінним інструментом синтезу мовлення з тексту. &mbrola; виконує синтез мовлення на основі файлів дифонів. Вам слід встановити додаткове програмне забезпечення, яке створюватиме ці дифони. У випадку сполучення з Festival, Festival створює дифони потрібні &mbrola;. Крім того, командою <command
>txt2pho</command
> можна скористатися для створення дифонів з текстів німецькою. Додаткові відомості можна знайти у розділі <xref linkend="using-with-hadifix"/>.</para>

<para
>Існує три способи комбінованого використання Festival з &mbrola;.</para>

<para>
<itemizedlist>
<listitem
><para
><link linkend="mbrola-wrappers"
>Пакувальники &mbrola;</link
>. На час написання цього підручника, цей спосіб можна було використовувати лише для дикторів англійською мовою.</para
></listitem>
<listitem
><para
><link linkend="ims-german-festival"
>IMS German Festival</link
>.</para
></listitem>
<listitem
><para
><link linkend="festival-czech"
>Festival-Czech</link
>.</para
></listitem>
</itemizedlist>
</para>

<!-- ...................................................................... -->

<sect4 id="mbrola-wrappers">
<title
>Використання Festival з пакувальниками &mbrola;</title>

<para
>За використання цього методу до Festival буде додано код увімкнення синтезу мовлення на основі голосових файлів &mbrola;. Зауважте, що голосові файли &mbrola; <emphasis
>не</emphasis
> слід встановлювати у дерево тек &mbrola;. Замість цього, їх слід встановити у дерево тек <filename
>festival/lib/</filename
>. Настанови можна знайти за адресою</para>

<para
><ulink url="http://www.cstr.ed.ac.uk/projects/festival/mbrola.html"
>http://www.cstr.ed.ac.uk/projects/festival/mbrola.html</ulink
></para>

</sect4>

<!-- ...................................................................... -->

<sect4 id="ims-german-festival">
<title
>Використання IMS German Festival</title>

<para
>IMS German Festival — це модифікована версія Festival, у якій використано німецькі голоси &mbrola;. Ця версія працює як з Festival 1.4.1, так і з Festival 2.0 (1.95beta). Спочатку вам слід встановити Festival і &mbrola;, якщо ви ще цього не зробили. Далі, звантажити IMS German Festival за адресою</para>

<para
><ulink url="http://www.ims.uni-stuttgart.de/phonetik/synthesis/festival_opensource.html"
> http://www.ims.uni-stuttgart.de/phonetik/synthesis/festival_opensource.html</ulink
>.</para>

<para
>Виконайте настанови з файла <filename
>README</filename
>, який постачається зі звантаженим файлом. (Зауважте, що, якщо у комбінації з Festival 2.0 <emphasis
>не</emphasis
> потрібно застосовувати архів з <filename
>виправленнями</filename
>, але перезібрати festival все ж доведеться.) Нарешті, додайте наступні рядки до файла <filename
>festival/lib/siteinit.scm</filename
>.</para>

<para>
<programlisting
>(voice-location "german_de1_os" "/usr/local/mbrola/de1"
  "German Female, IMS Festival de1")
(voice-location "german_de2_os" "/usr/local/mbrola/de2"
  "German Male, IMS Festival de2")
(voice-location "german_de3_os" "/usr/local/mbrola/de3"
  "German Female, IMS Festival de3")
</programlisting>
</para>

<para
>безпосередньо перед рядком</para>

<para>
<programlisting
>(provide 'siteinit)
</programlisting>
</para>

<para
>У деяких системах файлом, який вам слід змінити буде <filename
>/etc/festival.scm</filename
>. Додайте лише рядки, які стосуються встановлених вами дикторів німецькою мовою. Шлях <userinput
><replaceable
>/usr/local/mbrola/</replaceable
></userinput
> замініть на коректний. Крім того, зауважте, що (на час написання цього підручника) IMS German Festival не працював для дикторів німецькою de4, de5 і de6.</para>

</sect4>

<!-- ...................................................................... -->

<sect4 id="festival-czech">
<title
>Використання Festival-Czech</title>

<para
>За цього способу вам потрібно буде скористатися певним кодом, який увімкне синтез мовлення у Festival на основі диктора чеською мовою з &mbrola;. Щоб встановити цього диктора, спочатку звантажте і встановіть Festival і &mbrola; і переконайтеся, що обидва рушії працюють. Далі, звантажте Festival-Czech за адресою</para>

<para
><ulink url="http://www.freebsoft.org/festival-czech"
>http://www.freebsoft.org/festival-czech</ulink
></para>

<note
><para
>Під час виконання наступних дій змініть за потреби шляхи на ті, які є правильними у вашій системі.</para
></note>

<para
>Розпакуйте звантажений архів до відповідної теки і створіть словник. Виконуваний файл Festival має бути серед каталогів, визначених змінною середовища <envar
>PATH</envar
>. </para>

<para>
<programlisting
>cd /usr/local
tar xvfz festival-czech.tar.gz
cd festival-czech
make
</programlisting>
</para>

<para
>Звантажте голосовий файл <filename
>cz2</filename
> з веб-сайта &mbrola; і розпакуйте його до теки &mbrola;.</para>

<para>
<programlisting
>cd /usr/local/mbrola
mkdir cz2
cd cz2
unzip cz2-001009.zip
</programlisting>
</para>

<para
>Додайте наступні рядки до файла <filename
>festival/lib/siteinit.scm</filename
>:</para>

<para>
<programlisting
>(set! czech-lexicon-file "/usr/local/festival-czech/czech-lexicon.out")
(set! load-path (cons "/usr/local/festival-czech" load-path))
(require 'czech)
(set! czech-mbrola_database "/usr/local/mbrola/cz2/cz2")
(set! mbrola_progname "/usr/local/mbrola/mbrola")
(voice-location "czech_mbrola_cz2" "/usr/local/mbrola/cz2"
    "Czech Male, MBROLA")
(require 'czech-mbrola)
</programlisting>
</para>

<para
>безпосередньо перед рядком</para>

<para>
<programlisting
>(provide 'siteinit)
</programlisting>
</para>

<para
>У деяких системах назвою файла, який вам слід змінити, буде <filename
>/etc/festival.scm</filename
>.</para>

</sect4>

</sect3>

</sect2>

<!-- ...................................................................... -->

<sect2 id="using-with-flite">
<title
>Використання з Festival Lite (flite)</title>

<para
>Festival Lite — це вільний рушій з відкритим кодом, поточна версія якого підтримує обмежену кількість голосів та мов. Програма має невеликий розмір, але досягнуто це шляхом деякого погіршення якості. Ви не зможете керувати тоном, гучністю і швидкістю виголошення текстів цим рушієм за допомогою &ktts;.</para>

<para
>Назва синтезатора: <guilabel
>Festival Lite (flite)</guilabel
></para>

<para
>&URL;: <ulink url="http://www.speech.cs.cmu.edu/flite/index.html"
> http://www.speech.cs.cmu.edu/flite/index.html</ulink
> </para>

<para
>Команда встановлення у Debian: <userinput
>apt-get install flite</userinput
></para>

<para
>flite типово включено до дистрибутивів &Linux;. Перегляньте компакт-диск з вашим дистрибутивом, щоб дізнатися, чи є там пакунок з цим рушієм.</para>

<para
>Настанови зі збирання і встановлення flite можна знайти у файлі <filename
>README</filename
>, який постачається разом з програмою.</para>

</sect2>

<!-- ...................................................................... -->


<sect2 id="using-with-hadifix">
<title
>Використання з Hadifix (&mbrola; і txt2pho)</title>

<para
>Hadifix — це двоступеневий рушій синтезу, заснований на дифонах. Програма <command
>txt2pho</command
> перетворює тексти на дифони, а рушій &mbrola; синтезує з цих дифонів звук. Якість звуку достатньо добра, але підтримка мов поки що досить обмежена. Ви можете керувати голосом, тоном, швидкістю виголошення тексту за допомогою <application
>kttsmgr</application
>. </para>

<para
>Назва синтезатора: <guilabel
>Hadifix</guilabel
></para>

<para
>&URL;: див. нижче</para>

<para
>Команда для встановлення у Debian: немає</para>

<para
>Якщо ви ще не встановили Hadifix, зробіть наступне:</para>

<procedure>
<step
><para
>Звантажте бінарний файл &mbrola; з <ulink url="http://festvox.org/mbrola/"
>http://festvox.org/mbrola/</ulink
>.</para
></step>
<step
><para
>Встановіть &mbrola; до теки <filename
>/usr/local/mbrola</filename
>.</para
></step>
<step
><para
>Звантажте принаймні один мовний файл німецької з сайта &mbrola;. Розпакуйте його до теки <filename
>/usr/local/mbrola</filename
>.</para
></step>
<step
><para
>Звантажте txt2pho з</para>
<para
><ulink url="http://www.ikp.uni-bonn.de/dt/forsch/phonetik/hadifix/HADIFIXforMBROLA.html"
> http://www.ikp.uni-bonn.de/dt/forsch/phonetik/hadifix/HADIFIXforMBROLA.html</ulink
>.</para>
</step>
<step
><para
>Розпакуйте txt2pho до <filename
>/usr/local/txt2pho</filename
>.</para
></step>
<step
><para
>Змініть файл <command
>txt2phorc</command
>, ввівши до нього правильні шляхи до даних.</para
></step>
<step
><para
>Скопіюйте <command
>txt2phorc</command
> до <filename
>~/.txt2phorc</filename
> або до <filename
>/etc/txt2pho</filename
>. Не забудьте прибрати "rc" у назві файла.</para
></step>
<step
><para
>У <application
>kttsmgr</application
> оберіть німецьку мову (<guilabel
>de</guilabel
>) і додайте <guilabel
>Hadifix</guilabel
>.</para
></step>
<step
><para
>На сторінці <guilabel
>Налаштувати диктора</guilabel
> вкажіть голос і шляхи до &mbrola; і txt2pho.</para
></step>
<step
><para
>Натисніть кнопку <guibutton
>Тест</guibutton
>, щоб перевірити налаштування.</para
></step>
</procedure>

<para
>Мовні файли для угорської мови у &mbrola; і txt2pho доступні за адресою</para>

<para
><ulink url="http://tkltrans.sourceforge.net/"
>http://tkltrans.sourceforge.net/</ulink
>. </para>

</sect2>

<!-- ...................................................................... -->


<sect2 id="using-with-epos">
    <title
>Використання з Epos</title>

<para
>Epos — це вільний синтезатор чеської і словацької мов з відкритим кодом. Цей синтезатор є невеликим за розміром, але досягнуто це певною втратою якості синтезу. Під час синтезу за допомогою цього рушія ви не зможете керувати гучністю голосу у &ktts;.</para>

<para
>Назва синтезатора: <guilabel
>Epos TTS Synthesis System</guilabel
></para>

<para
>Адреса &URL;: <ulink url="http://epos.ure.cas.cz/"
> http://epos.ure.cas.cz/</ulink
> </para>

<para
>Команда для встановлення у Debian: <userinput
>apt-get install epos</userinput
></para>

<para
>Запустіть <application
>kttsmgr</application
>. На вкладці <guilabel
>Диктори</guilabel
> натисніть кнопку <guibutton
>Додати</guibutton
>. Оберіть чеську або словацьку мови і <guilabel
>Epos TTS Synthesis System</guilabel
>. Якщо виконувані файли сервера і клієнта epos не знаходяться у теках, перелічених у вашій змінній середовища <envar
>PATH</envar
>, вкажіть шляхи до цих виконуваних файлів у діалоговому вікні <guilabel
>Налаштувати диктора</guilabel
>. За допомогою полів параметрів ви можете передати додаткові параметри серверу або клієнту рушія. Щоб переглянути список можливих параметрів, виконайте у &konsole; команду <userinput
>epos -h</userinput
> або <userinput
>say -h</userinput
>.</para>

</sect2>

<!-- ...................................................................... -->


<sect2 id="using-with-freetts">
    <title
>Використання з FreeTTS</title>

<para
>FreeTTS — це вільний рушій синтезу мовлення з відкритим кодом, написаний на &Java;, це означає, що для його використання вам слід встановити віртуальну машину &Java; у вашій системі. Поточна версія має досить обмежену підтримку дикторів і мов. Ви не можете керувати тоном, гучністю або швидкістю виголошення тексту цим рушієм за допомогою &ktts;.</para>

<para
>Назва синтезатора: <guilabel
>FreeTTS</guilabel
></para>

<para
>&URL;: <ulink url="http://sourceforge.net/projects/freetts/"
> http://sourceforge.net/projects/freetts/</ulink
> </para>

<para
>Команда для встановлення у Debian: немає</para>

</sect2>

<!-- ...................................................................... -->


<sect2 id="using-with-command">
    <title
>Використання додатка команд</title>

<para
>Додаток команд надає вам змогу використовувати &ktts; з будь-яким рушієм синтезу мовлення, який можна запустити з командного рядка у &konsole;.</para>

<para
>Назва синтезатора: <guilabel
>Команда</guilabel
></para>

<para
>&URL;: немає</para>

<para
>Команда для встановлення у Debian: немає</para>

<para
>У ідеалі, вам слід використовувати команду, яка створює тимчасовий аудіо-файл (wav), а не надсилає звук безпосередньо на аудіо-пристрій.</para>

<para
>Якщо рушієві синтезу мовлення для роботи потрібен текст у кодуванні, параметри якого відрізняються від параметрів кодування вашої стільниці, вам слід скористатися параметром <command
>%f</command
> для передавання тексту рушієві. &ktts; перекодує текст згідно з вказаними параметрами під час запису тексту до тимчасового файла. Якщо ви зробите спробу передати текст у командному рядку за допомогою параметра <command
>%t</command
>, вважатиметься, що параметри кодування тексту збігаються з параметрами кодування вашої стільниці. Крім того, ви можете скористатися параметром <guilabel
>Надсилати дані як стандартний ввід</guilabel
>, щоб усунути цю проблему, якщо рушій може приймати вхідні дані з StdIn. Наприклад, ось зразок команди для надсилання тексту польською мовою до Festival з використанням кодування ISO 8859-2 і вилученням непридатних для вимови символів пунктуації.</para>

<para
><command
>cat %f | tr '(){}[]"' ' ' | festival --tts --language polish</command>
</para>

</sect2>

<!-- ====================================================================== -->

</sect1>

</appendix>

&documentation.index;
</book>

<!--
Local Variables:
mode: xml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-indent-step:0
sgml-indent-data:nil
End:

vim:tabstop=2:shiftwidth=2:expandtab 
-->
