Google Assistant для голосового ввода игры - PullRequest
0 голосов
/ 03 марта 2020

Я бы хотел разработать игру / навык в Google Assistant, который требует следующего, как только пользователь войдет в игру / сессию («эй, Google, запусти игру123»)

  • воспроизведение аудиофайла продолжительностью несколько минут

  • воспроизведение второго аудиофайла во время воспроизведения первого клипа

  • всегда прослушивание. Во время воспроизведения файлов игра должна прослушивать и отвечать на определенные c голосовые фразы без ключевого слова «Привет, Google».

Поддерживаются ли эти возможности? Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 03 марта 2020

"Может быть." Многое зависит от того, какие устройства на платформе Actions на Google вы хотите поддерживать, и насколько необходимы некоторые требования. В зависимости от ваших потребностей, вы можете воспроизводить некоторые трюки.

Воспроизведение аудиофайла длиной «несколько минут».

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

Для более длинных файлов вы можете использовать Media Response . Это имеет интересную особенность, заключающуюся в том, что когда аудио закончится, на ваш сервер будет отправлено событие, так что у вас есть ограниченный способ обработки синхронизированных ответов и зацикливания. С другой стороны - пользователи должны сказать «Эй, Google», чтобы прервать его. (И в настоящее время есть некоторые ошибки при его использовании.)

Поскольку вы делаете игру, вы можете воспользоваться Interactive Canvas . Это позволит вам использовать такие вещи, как тег HTML <audio> и Web Audio API . Большим недостатком является то, что это доступно только на интеллектуальных дисплеях и Android устройствах - вы не можете использовать его на интеллектуальных колонках.

Воспроизведение нескольких звуковых дорожек

У Google есть расширение SSML, которое позволяет параллельных звуковых дорожек для множественного разговорного и звукового вывода. Но вы не можете наложить их поверх Media Response.

Если вы используете Web Audio API с Interactive Canvas, я считаю, что он поддерживает несколько одновременных входов.

Могу ли я оставить микрофон открытым, чтобы им не приходилось каждый раз говорить «Привет, Google».

Возможно, нет, но в некоторых случаях это может быть не очень хорошей идеей.

Для умных динамиков вы не можете этого сделать. Люди привыкли к чему-то разговорному, поэтому они ждут молчания, чтобы узнать, когда им следует что-то сказать. Если вы постоянно предоставляете аудио, они не обязательно знают, когда наступает их «поворот».

С устройствами Interactive Canvas у нас есть дисплей, с которым мы можем работать, и он им подсказывает. И мы можем держать микрофон открытым в течение этого времени ... по крайней мере, до определенного момента. Недостатком является то, что мы не знаем, когда микрофон открыт и закрыт, поэтому мы не можем приглушить звук в это время. (По крайней мере, пока.)

Могу ли я делать то, что хочу?

Вы единственный судья этого. Похоже, что интерактивный холст может хорошо работать для ваших нужд, но не будет работать везде. В некоторых случаях вы можете определить возможности устройства, с которым пользователь играет , и представить несколько разные игры в зависимости от имеющихся у вас функций. Google делает это, например, с помощью своей игры «Lucky Trivia».

0 голосов
/ 03 марта 2020

У меня нет большого опыта в этом, но я предлагаю использовать некоторые API для этой работы. Попробуйте найти их, есть много учебных пособий.

...