@Fareny

Как синтезировать текст в речь и обработать ответ?

const cfg = {
        headers: {
            'Content-type': 'multipart/form-data',
            'Authorization': `Api-Key ${config.yandex_api_key}`
        }
    };

    const data = {
        text: 'Привет, мир!',
        lang: 'ru-RU',
        voice: 'madirus',
        speed: 1.0,
        format: 'oggopus'
    };

    axios.post('https://tts.api.cloud.yandex.net/speech/v1/tts:synthesize', data, cfg)
        .then(response => {
            console.log(response.data);
        })
        .catch(error => {
            console.log(error);
        });

Я передаю текст в yandex.cloud, чтобы обратно получить аудио файл и отправить его через бота в тг, но пока что получаю только что-то типа такого в (response.data):
�r♠�♫�§PL[�K�~:�↕☼♣g���¶�Ⱥ��♫�▲<�8����♂S�3�`↨���¶K∟Hl�♀M�|�9'�AY►���~8�Kc�L�D����⌂5=N��b→<��Y�,�����8�Ecc�t�E◄���↓�☻→�↔VO���q��;{=��AV"▼☻/Jf♫�D▼��$i'8�C|☻�1-X�B����������e/��M7�◄!5���&%S̩s�}��o�KF�\�K�Q�M�Sס��],Ʒp�h�Sd/� ����º�☼m�w{�o���⌂gE�ڹ'&3g�w�D☼�<2+��0;v�L\]<5▲�q�\����ʡI��8ԝRN►n↑��⌂Y�⌂̇�∟����-9t�'5/��F�^��r2�C�Q��5���ww↔�    ♦
P��U�O�-S→��↕.‼�'Q��^B:�8c��؇w;♠���b§�E`�n&#^?/]↔Y��1<�u0���☺0�m�♀�X����♀9.d♠��♣�|�♥�̟^]��s�\c�J�(��∟.Y�F禉�♦����       �(,��V� v‼�o�W3↕e�M<|�►↨�^�BWx
 ��-w�z��^�♀�f���G����T�Դ��iq���+�L�[����☼�&GԨ��\�~�♀P�B�☺-����u(↑e:inte☻>һ���ܙ�p�z�H�js�]ω�▬�:\����rߏ3O^���y��N�U�g[�  sx�CӖW�_        ��;t♥�C♀�
�♀♠�(a��▼[.����§����.�:ʅ

Как можно было бы это декодировать и отправить через бота в тг с помощью sendVoice()
  • Вопрос задан
  • 218 просмотров
Решения вопроса 1
@Fareny Автор вопроса
Если для кого-то это тоже будет актуально, я в cfg под headers засунул responseType: 'stream' и отправлял поток в бота bot.sendVoice(id, response.data). Это и стал вариант ответа без создания файла)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg
надо записать responce в file pipisya.ogg
курите мануалы : https://cloud.yandex.com/en/docs/speechkit/tts/api...
затем сохранить file, сделать доступным через интернет и скормить ссылку на него боту через sendVoice()
курите мануалы2 : https://telegram-bot-sdk.readme.io/reference/sendvoice
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы