HLFX.Ru Forum
профиль •  правила •  регистрация •  календарь •  народ •  FAQ •  поиск •  новое •  сутки •  главная •  выход  
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Half Life и SAPI
реализация работы SAPI в движке Half Life
Страницы (3): [1] 2 3 »   Предыдущая тема   Следующая тема
Автор
Тема Новая тема    Ответить
fire64
Житель форума

Дата регистрации: Apr 2007
Проживает: Москва
Сообщений: 2362
Возраст: 34

Рейтинг



Half Life и SAPI

Вот решил я добавить в Half Life поддержку SAPI
что бы сообщения в чате мультиплеера произносились
ну и еще смного для чего, согласитесь вещь интересная и для многих модов нужная

но я столкнулся с одной проблемой

если точнее я не знаю как передать компьютерный голос на клиенты

при условии что на стороне клиента ничего менять нельзя

тоесть реализация передачи голоса, должна быть чисто серверной

__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей

Сообщить модератору | IP: Записан
Сообщение: 43415

Старое сообщение 16-03-2009 08:05
- За что?
Scrama
СССР с интернетом и олигархами!

Дата регистрации: May 2006
Проживает: Прииртышье
Сообщений: 3737

Рейтинг



Награды
 
[1 награда]


Пишешь поток на диск, тут же потоком проигрываешь для всех клиентов (в ХЛ потоковое воспроизведение уже реализовано). Я только так вижу.
Совсем, правда, не уверен, что получится. Но ты вообще посмотри как там реализовано проигрывание, если путь к звуку начинается с '*'.

__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran

Сообщить модератору | IP: Записан
Сообщение: 43416

Старое сообщение 16-03-2009 08:16
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 33022
Нанёс повреждений: 392 ед.

Рейтинг



fire64 почему это? как раз таки сервер менять нельзя, а клиент можно. Все элементарно - есть команда "say", ловим её на клиенте - там где вывод текста на экран. И отправляем этот текст в синтезатор.
А есть сейчас достойные бесплатные синтезаторы? ну чтобы не булькало, как у мелкософта, а наоборот читало приятно.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | IP: Записан
Сообщение: 43417

Старое сообщение 16-03-2009 09:20
-
Scrama
СССР с интернетом и олигархами!

Дата регистрации: May 2006
Проживает: Прииртышье
Сообщений: 3737

Рейтинг



Награды
 
[1 награда]


Не, нету. Есть получше, но все равно звучит это как сам понимаешь что.

Я, видимо, не так понял. Если речь идет именно о синтезе, то достаточно ограничиться каким-то набором распознаваемых слов и словосочетаний (типа 'camping at RL' или 'need back up'), то проще сделать как говорит Д.Миша - парсить say на клиенте и проигрывать нужные звуки из набора.
Только кому это реально нужно?

Кстати, войсчат, если я не путаю, в стимовской версии есть.

__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran

Сообщить модератору | IP: Записан
Сообщение: 43422

Старое сообщение 16-03-2009 10:56
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 33022
Нанёс повреждений: 392 ед.

Рейтинг



Войсчат есть, начиная с версии 1.1.0.8.
Хочется приятного голоса - запишите кучу стандартных фраз, как в Unreal Tournament'99
К этому делу можно прилепить простенький анализатор текста, который будет выбирать наиболее подходящую фразу, в зависимости от текста.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | IP: Записан
Сообщение: 43423

Старое сообщение 16-03-2009 11:09
-
fire64
Житель форума

Дата регистрации: Apr 2007
Проживает: Москва
Сообщений: 2362
Возраст: 34

Рейтинг



Войсчат, на стороне движка, с сервера до него не добраться

Scrama, ткни меня носом в то место где используется потоковое воспроизведение



клиент менять нельзя, так как я делаю модифицированный сервер для Half Life

и мне нужно что бы обычные клиенты могли на него заходить

__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей

Сообщить модератору | IP: Записан
Сообщение: 43427

Старое сообщение 16-03-2009 14:31
- За что?
 Дядя Миша
racing for fish

Дата регистрации: Oct 2005
Проживает: Кубань
Сообщений: 33022
Нанёс повреждений: 392 ед.

Рейтинг



fire64 голос играется на клиентской стороне В ЛЮБОМ случае.
Если передавать синтезированный по голос по сети, взамен живого, то в чем смысл новшества?

Добавлено 16-03-2009 в 19:20:

Да и потом - ты умеешь сжимать конечный результат, дабы он пролез в стрим-канал? Халфа с микрофона сжимает.

__________________
My Projects: download page

F.A.Q по XashNT
Блог разработчика в телеграме

Цитата:

C:\DOCUME~1\C4C5~1\LOCALS~1\Temp\a33328if(72) : see declaration of 'size_t'

Сообщить модератору | IP: Записан
Сообщение: 43430

Старое сообщение 16-03-2009 16:20
-
Scrama
СССР с интернетом и олигархами!

Дата регистрации: May 2006
Проживает: Прииртышье
Сообщений: 3737

Рейтинг



Награды
 
[1 награда]


Цитата:
From WorldCraft 2.1 Help: "To play a wav through the streaming code (for very large, one-shot wavs) use * in front of the name. For instance, ambience/*speak2.wav would stream speak2.wav. Streaming sounds are loaded in segments from the disk, played, and flushed from memory."

TWHL, ambient_generic


Вообще, мне кажется, что ты не просто пытаешься изобрести велосипед, но велосипед с треугольными колесами и педалью на руле.

__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran

Сообщить модератору | IP: Записан
Сообщение: 43438

Старое сообщение 17-03-2009 05:18
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 35011
Нанёс повреждений: 514 ед.
Возраст: 38

Рейтинг



Награды
 
[1 награда]


В халфе есть стриминг звуков???
Это случайно не первоапрельская шутка?
Ни в одной кваке, по крайней мере, этого нет (не считая стриминга бг-музыки в ку3)

__________________

Сообщить модератору | IP: Записан
Сообщение: 43439

Старое сообщение 17-03-2009 07:00
-
fire64
Житель форума

Дата регистрации: Apr 2007
Проживает: Москва
Сообщений: 2362
Возраст: 34

Рейтинг



Scrama, спасибо


теперь бы хорошо если бы мне напомнили какие парметры должны быть у звука что бы half life его понимала

я имею ввиду частоту и битрейт

__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей

Сообщить модератору | IP: Записан
Сообщение: 43440

Старое сообщение 17-03-2009 07:29
- За что?
Scrama
СССР с интернетом и олигархами!

Дата регистрации: May 2006
Проживает: Прииртышье
Сообщений: 3737

Рейтинг



Награды
 
[1 награда]


Цитата:
XaeroX писал:
В халфе есть стриминг звуков???

А вот и нет... Попробовал сделать - ничего не вышло. Выходит, TWHL на пару с гайдом хаммера гонит, а я раньше считал его надежным источником информации по ХЛ. Облажался, да.

__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran

Сообщить модератору | IP: Записан
Сообщение: 43441

Старое сообщение 17-03-2009 07:32
- За что?
fire64
Житель форума

Дата регистрации: Apr 2007
Проживает: Москва
Сообщений: 2362
Возраст: 34

Рейтинг



To play a wav through Half-Life's streaming code, you can put an asterisk in front of the wav name (e.g. path/*filename.wav) or select 'stream' from the 'Channel to use' box.

__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей

Сообщить модератору | IP: Записан
Сообщение: 43442

Старое сообщение 17-03-2009 07:36
- За что?
 XaeroX
Crystice Softworks

Дата регистрации: Oct 2005
Проживает: Торонто
Сообщений: 35011
Нанёс повреждений: 514 ед.
Возраст: 38

Рейтинг



Награды
 
[1 награда]


Информация к размышлению.
1) В сорсе эта фича задокументирована в нескольких источниках, включая вальвовскую дев-вики.
2) В сорцах бетки это есть (правда я не смотрел, работает ли)
3) В сорцах хл1 есть дефайн CHAN_STREAM:

C++ Source Code:
#define CHAN_STREAM	5 // allocate stream channel from the static or dynamic area

И больше ничего. Т.е. это нигде не юзается. Может быть, недоделка?

__________________

Сообщить модератору | IP: Записан
Сообщение: 43443

Старое сообщение 17-03-2009 07:46
-
Scrama
СССР с интернетом и олигархами!

Дата регистрации: May 2006
Проживает: Прииртышье
Сообщений: 3737

Рейтинг



Награды
 
[1 награда]


С астериском точно не работает - ругается на ненайденный файл.

__________________
"Злобным гениям не нужна харизма." © Shooter__Andy
"Making stuff for an "old ugly game" can be ten times more fun than grinding on a map for a dull, next-gen title." © Lunaran

Сообщить модератору | IP: Записан
Сообщение: 43444

Старое сообщение 17-03-2009 08:20
- За что?
fire64
Житель форума

Дата регистрации: Apr 2007
Проживает: Москва
Сообщений: 2362
Возраст: 34

Рейтинг



CHAN_STREAM активно юзается в amx плагинах

и еще вот

//Sound Channels
CHAN_STREAM 5 - not exactly sure, check hlsdk for more
CHAN_STATIC 6 - not exactly sure, check hlsdk for more
CHAN_NETWORKVOICE_BASE 7 - no-touchy
CHAN_NETWORKVOICE_END 500 - no-touchy

но опять же как это заюзать

дело в том что pfnEmitSound без предварительного кеширования звуковых файлов работать не будет

а если их кешировать то опять же они зальются на клиент и толку от этого не будет

__________________
Вся сила лысого кощея,
Сокрыта в башне из костей
Воздвигнутой, под небесами
На месте похорон людей

Отредактировано fire64 17-03-2009 в 08:38

Сообщить модератору | IP: Записан
Сообщение: 43445

Старое сообщение 17-03-2009 08:25
- За что?
Тема: (Опционально)
Ваш ответ:



Переводчик транслита


[проверить длину сообщения]
Опции: Автоматическое формирование ссылок: автоматически добавлять [url] и [/url] вокруг интернет адресов.
Уведомление по E-Mail: отправить вам уведомление, если кто-то ответил в тему (только для зарегистрированных пользователей).
Отключить смайлики в сообщении: не преобразовывать текстовые смайлики в картинки.
Показать подпись: добавить вашу подпись в конец сообщения (только зарегистрированные пользователи могут иметь подписи).

Временная зона GMT. Текущее время 08:48. Новая тема    Ответить
Страницы (3): [1] 2 3 »   Предыдущая тема   Следующая тема
HLFX.Ru Forum HLFX.Ru Forum > Теория и практика > Half-Life SDK > Half Life и SAPI
реализация работы SAPI в движке Half Life
Версия для печати | Отправить тему по E-Mail | Подписаться на эту тему

Быстрый переход:
Оцените эту тему:

Правила Форума:
Вы not можете создавать новые темы
Вы not можете отвечать в темы
Вы not можете прикреплять вложения
Вы not можете редактировать ваши сообщения
HTML Код ВЫКЛ
vB Код ВКЛ
Смайлики ВКЛ
[IMG] Код ВКЛ
 

< Обратная связь - HLFX.ru >

На основе vBulletin
Авторское право © 2000 - 2002, Jelsoft Enterprises Limited.
Дизайн и программирование: Crystice Softworks © 2005 - 2024