Отправляет email-рассылки с помощью сервиса Sendsay

[TC] Re:скрипты переключения синтезаторов по горячим клавишам

Здравствуйте, Евгений Корнев

Вы писали:

От имени трудящихся и всего пролетариата хотелось бы уточнить пару
деталей:

1. если использовать данный вами скрипт с капиталистической разработкой
под названием Jaws версии 10, будет происходить переключение речевых
профилей или же просто переключение синтезаторов в пределах одного
профиля?

2. если последний вариант, то подскажите, можно ли настраивать в
пределах одного профиля более одного синтезатора и как это делается?

До сегодняшнего дня все мои немногочисленные попытки добиться переключения синтезаторов
в Jaws 10 с помощью горячих клавиш привели лишь к тому, что
синтезаторы переключаются в рамках одного профиля, а настроить более
одного из них в этих рамках не получается никак. Я имею в виду
выставить необходимую скорость, громкость и т.д. получается только
одному синтезатору.

Ответить   Anthony Mon, 19 Oct 2009 19:26:35 +0300 (#923541)

 

Ответы:

Приветствую, Anthony.

Чтобы переключать не синтезаторы а профили, необходимо использовать
функцию SetActiveVoiceProfileByIndex
В качестве параметров к которой указывать номер профиля и номер
синтезатора в списке одного профиля. Что за что отвечает я не
разобрался, посему цифры подставлял больше методом тыка, чем
закономерно, но результата добился довольно быстро.
Приведу скрипт, который по одиночному нажатию клавиши включает
профиль, в котором активен синтезатор elan speech cube, а по двойному
нажатию этой же клавиши включается другой профиль, в котором
активен синтезатор speaking mouse, разумеется на их месте у вас могут
быть свои синтезаторы, экспериментируйте с цифровыми параметрами:

Script SwitchSynths ()
SetActiveVoiceProfileByIndex (4, 4)
SayString ("Cubik")
IF IsSameScript () Then
SetActiveVoiceProfileByIndex (5, 4)
SayString ("Мышь")
EndIf

Ответить   Badjos Tue, 20 Oct 2009 09:54:28 +1100 (#923671)

 

У меня как раз тот самый капиталистический продукт - JAWS 10, и обсуждаемый
скрипт переключает все голоса как и задумано. Даже три разных голоса пакета
Sakrament 3.

я добился этого правкой секций для нужных голосов в файле Default.jcf,
поэтому чтобы вразумительно ответить на ваш вопрос нужно знать что написано
в вашем файле Default.jcf и файле jfw.ini. а это уже не для рассылки а для
личной переписки. В JAWS существует функция SetActiveVoiceProfileByIndex
можно воспользоваться в крайнем случае этой функцией. Но для многих русских
синтезаторов с несколькими голосами (например Sakrament) она бесполезна, и
может помочь только если вам нужно переключать абсолютно разные синтезаторы,
использующие разные jls-драйверы, или те SAPI 5 голоса, поддержка которых
уже прописана в JAWS. Пример такого скрипта вам уже написали.
--
Евгений Корнев.

Ответить   Tue, 20 Oct 2009 10:29:31 +0800 (#923713)