Microsoft Agent. Часть II
03.12.2007 от Иван Ширко begin
if (sec>10) then buf := secs[1] + '0 '
else buf := '';
secs := buf + 'одна';
end
else
begin
if (secs[length(secs)]='2') and(sec<>12) then
begin
if (sec>10) then buf := secs[1] + '0 '
else buf:='';
secs := buf + 'две';
end;
end;
//составляем строку, которую должен произнести Джин
str := hours + ' час' + hs+ ', ' + mins + ' минут' + ms + ', ' + secs + ' секунд' + ss;
//Джин произносит строку str, а над ним отображается текущее время (рис.1)
Request := Character.Speak('\Pit=18400\\Spd=100\\Map="'+str+'"="'+timetostr(DT)+'"\',EmptyParam);
end;

Напоследок рассмотрим некоторые параметры голосового движка. На один компьютер можно установить поддержку нескольких языков. Чтобы переключаться между ними, нужно изменять параметр персонажа LanguageID. В таблице приведены идентификаторы к некоторым языкам. Символ «$» означает, что число представлено в шестнадцатеричной системе счисления.

Пример: Character.LanguageID := $409; – переключаемся на английский язык.
Ещё можно изменять сам голос. Для этого есть свойство TTSModeID. Ниже приведён список голосов для русского и английского языков.

Пример:
Сharacter.TTSModeID:='{06377F80-D48E-11d1-B17B-0020AFED142E}'; –
устанавливает женский голос для русского языка. Так что можете поиздеваться над Джином, заставляя его разговаривать женским голосом.
На сегодня всё, в следующей части мы научимся управлять Джином при помощи голосовых команд.
Иван Ширко
ishyrko@gmail.com
05.06.2008 в 05:31
Просто превосходно!
17.07.2008 в 17:36
Конкретно и понятно.