Использование Google для преобразования текста в речь в Hyperstack - PullRequest
1 голос
/ 09 апреля 2019

Я хотел бы использовать текстовый API Google, чтобы позволить моему пользователю вводить текст в текстовый элемент управления, а затем нажать кнопку, которая отправит текст на мой сервер Rails, где он будет использовать API Google TextToSpeach для созданияmp3-файл этой речи.

API Google выглядит очень простым в использовании: https://cloud.google.com/text-to-speech/docs/create-audio

В традиционном приложении на Rails я написал бы API для передачи текста, который должен быть транскрибирован, иможно ожидать, что вызов API вернет путь к файлу MP3, созданному для загрузки пользователем.

Кажется, что Hyperstack Isomorphic Operations будет правильным подходом для этого, но как это сделать?Я гарантирую, что операция выполняется только на сервере, а не на клиенте, и как мне получить выходное значение операции (т. Е. Созданный файл), чтобы я мог отобразить его в браузере для загрузки пользователем?

Я должен подчеркнуть, что мне нужен только API Google для создания аудио файла на сервере (не воспроизводить его).Затем пользователь загрузит созданный файл для собственного использования.

1 Ответ

0 голосов
/ 10 апреля 2019

Операция вам здесь не поможет. Почему?

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

Это очень легко сделать с помощью стандартного метода контроллера rails, который декодирует строку из параметров URL и возвращает файл mp3 в теле ответа.

Например, /utils/text2speech.mp3?text=Hello%020. Здесь можно просто вернуть файл MP3.

Однако, чтобы полностью ответить на ваш вопрос, класс Hyperstack::ServerOp является подклассом Operation, который выполняется только на сервере, но может вызываться из клиента.

Жаль, что здесь нет никакой помощи: -)

...