Общение через микрофон
|
|
Savok32 | Дата: Четверг, 12 Ноября 2015, 11:18 | Сообщение # 1 |
был не раз
Сейчас нет на сайте
| Добрый день, подскажите можно ли реализовать в игре общение, между игроками, по микрофону?
|
|
| |
maker-rus | Дата: Четверг, 12 Ноября 2015, 13:53 | Сообщение # 2 |
Гений
Сейчас нет на сайте
| Цитата Savok32 ( ) Добрый день, подскажите можно ли реализовать в игре общение, между игроками, по микрофону? Стандартными средствами - нет. Только написав свою библиотеку (расширение) или найти готовую.
|
|
| |
YellowAfterlife | Дата: Четверг, 12 Ноября 2015, 14:08 | Сообщение # 3 |
Сейчас нет на сайте
| Цитата maker-rus ( ) Стандартными средствами - нет. Не совсем точное утверждение - в GameMaker: Studio были добавлены функции и события для записи звука. Конечно, это всё равно подразумевает кучу работы для стабилизации качества передаваемого звука в случае нестабильной работы сети, но всё же.
Сообщение отредактировал YellowAfterlife - Четверг, 12 Ноября 2015, 14:17 |
|
| |
maker-rus | Дата: Четверг, 12 Ноября 2015, 14:16 | Сообщение # 4 |
Гений
Сейчас нет на сайте
| Цитата YellowAfterlife ( ) Не совсем точное утверждение - в GameMaker: Studio были добавлены функции и события для записи звука. Конечно, это всё равно подразумевает кучу работы для стабилизации качества передаваемого звука в случае нестабильной работы сети, но всё же. На сколько я понимаю запись звука на диск(если верить документации) и реализация канала для передачи аудио-сигнала всем игрокам - разные вещи. На сколько я понял из документации, там написано про потоковую ЗАПИСЬ звука на локальный диск, но не слова о ее передаче через канал связи. Поэтому свое утверждение считаю более чем точным. Если я где-то не прав, поправьте.
|
|
| |
YellowAfterlife | Дата: Четверг, 12 Ноября 2015, 14:22 | Сообщение # 5 |
Сейчас нет на сайте
| Цитата maker-rus ( ) На сколько я понимаю запись звука на диск(если верить документации) и реализация канала для передачи аудио-сигнала всем игрокам - разные вещи. На сколько я понял из документации, там написано про потоковую ЗАПИСЬ звука на локальный диск, но не слова о ее передаче через канал связи. Поэтому свое утверждение считаю более чем точным. Если я где-то не прав, поправьте. Запись идет не на диск, а в буфер (от того одним из параметров события и является buffer_id). А знаешь, что можно делать с буфером? Верно, передавать по сети (или копировать частями в другие буферы). Даже, если бы шла запись на диск, никто бы не мешал выходящий файл постепенно считывать и пересылать.
|
|
| |
maker-rus | Дата: Четверг, 12 Ноября 2015, 14:27 | Сообщение # 6 |
Гений
Сейчас нет на сайте
| Цитата YellowAfterlife ( ) Запись идет не на диск, а в буфер (от того одним из параметров события и является buffer_id). А знаешь, что можно делать с буфером? Верно, передавать по сети (или копировать частями в другие буферы). Даже, если бы шла запись на диск, никто бы не мешал выходящий файл постепенно считывать и пересылать. Все верно, просто, не верно понял смысл предложения, быстро читая упустил из виду выделенную жирным часть предложения.
Цитата After that you can do what you want with the custom buffer - you could play it using the dedicated buffer audio functions, you could process it and send it over the network, you could save it to disk... ^_^
Сообщение отредактировал maker-rus - Четверг, 12 Ноября 2015, 14:30 |
|
| |
XDominator | Дата: Четверг, 12 Ноября 2015, 15:51 | Сообщение # 7 |
постоянный участник
Сейчас нет на сайте
| Т.е. правильно ли я понимаю алгоритм - пишем звук как набор битов, из этого буфера битов кусками вырезаем начиная с начала биты ровными кусочками, запихиваем в другой буфер и отправляем его, в конечном принимающем клиенте это преобразуем из байткода обратно в звук, который можно воспроизвести? Ну и конечно для этого придется использовать TCP и например воспроизводить только куски длиной например 1 секунду(Либо меньше, если вся запись целиком меньше 1 секунды), а не каждый пакет по отдельности.
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |