[TC] Re: альтернативный sapi5 драйвер
Здравствуйте.
Евгений Корнев пишет:
> для тех у кого Катерина не
> даёт житья другим SAPI5 синтезатором могу предложить альтернативный SAPI5
> драйвер.
http://q148.land.ru/SAPI5.rar
в связи с опубликованием ссылки еще на один драйвер sapi 5 предлагаю ниже
небольшой обзор.
драйвер называется SAPI5.jls, и, на мой взгляд, является не
альтернативой, а скорее хорошим дополнением к уже имевшимся драйверам
SAPI5x.jls и Switcher.jls. тестирование их с участием джавс 8.0.2173, с
синтезаторами фирмы ScanSoft и с майкрософтовским Сэмом показало следующее.
драйвер SAPI5x.jls автоматически устанавливается вместе с джавс. это
единственный из перечисленных драйверов, который позволяет выбирать между
языками sapi 5 движка. допустим, у вас установлены и русский, и английский
голос от ScanSoft. в jfw.ini вы можете прописать синтезатор с указанием
драйвера SAPI5x. при выборе его из списка синтезаторов, первым появится
русский голос Катерины, а английский голос можно найти с помощью команды
Control+Windows+L.
сложнее обстоит дело, когда у вас устанолвлен еще один английский голос.
один из них может подавлять другой при их выборе из списка языков. например,
когда в системе есть два голоса с американским английским - майкрософтовский
Сэм и скансофтовский Том, тогда первый подавляет второго при выборе
английского (США) для данного синтезатора. в свою очередь, британец Даниэль
может подавлять американца Тома. скажу сразу, что этот недостаток
преодолевается при использовании только что размещенного драйвера, а именно
SAPI5.jls.
все sapi 5 синтезаторы могут быть прописаны в jfw.ini с указанием драйвера
SAPI5. главное условие состоит в том, чтобы для каждого из них было записано
свое уникальное короткое и длинное имя. по умолчанию идущий третьим в
jfw.ini синт имеет короткое имя "SAPI 5x". его можно так и оставить. потом
вместо драйвера SAPI5x указать просто SAPI5, а потом записать новое длинное
имя. например, прописать Катерину можно таким образом:
Synth3Name=SAPI 5X
Synth3LongName=ScanSoft Katerina
Synth3Driver=sapi5
обычно при выборе sapi 5 из списка синтезаторов Катерина активируется
автоматически. поэтому ее не требуется потом выбирать в качестве диктора.
для работы с другим синтезатором ему надо вписать другое короткое и длинное
имя, а потом обязательно выбрать его как диктора в главном меню джавс.
в роли диктора может выступить не только русский, но и английский голос.
например, это будет британец Даниэль или американцы Том и Сэм по
отдельности. схема их прописки та же самая. но здесь следует быть
осторожными. работая в русском интерфейсе, будет непросто поменять
английский голос диктора на русский. дело в том, что иностранный диктор не
сможет читать русские пункты меню, и нужно будет предварительно
потренироваться, чтобы достичь искомого пункта, а там сменить одного диктора
на другого.
в дальнейшем переключение между несколькими SAPI 5 синтезаторами удобно
осуществлять по горячим клавишам на основе соответствующих скриптов. я уже
отмечал, что с этим драйвером нельзя выбирать языки синтезатора. поэтому в
скриптах для каждого из них необходимо записать свое приветственное
сообщение. универсального вывода сообщений, как с драйвером SAPI5x, здесь
не получится.
одновременно с указанными двумя драйверами работает SAPI 5 Switcher.
кстати, он тоже не поддерживает опцию выбора между языками. зато умеет в
процессе чтения автоматически сменять русский и английский голоса.
представляет интерес ситуация, когда в системе есть один русский и два
английских голоса от ScanSoft, а наряду с этим установлен свитчер. все они
прописываются в jfw.ini, и могут вызываться последовательно нажатием одних и
тех же горячих клавиш. у меня первым появляется свитчер. двойное нажатие
клавиш вызывает Катерину. по тройному вызывается Даниэль отдельно от
свитчера. наконец, для экзотики есть и
четверное нажатие для обращения к американцу Тому.
объединение sapi 5 синтезаторов в подобную, большую группу имеет смысл, если
все они идут от одного производителя. хотя горячими клавишами вполне можно
переключаться и между разнородными sapi 5 синтезаторами. например, между
русским и украинским.
С уважением, Ирбис.