umbot - v2.0.8
    Preparing search index...

    Class AlisaSound

    AlisaSound Класс для работы со звуками в платформе Алиса

    Предоставляет функциональность для:

    • Воспроизведения стандартных звуков Алисы
    • Применения звуковых эффектов к тексту
    • Преобразования текста в речь (TTS)
    • Управления паузами в речи

    Основные возможности:

    • Поддержка стандартных звуков Алисы (игры, природа, предметы, животные)
    • Применение звуковых эффектов (стена, хомяк, мегафон и др.)
    • Управление паузами в речи
    • Замена звуковых токенов в тексте
    • Поддержка пользовательских звуков
    const alisaSound = new AlisaSound();

    // Воспроизведение стандартного звука
    const result = await alisaSound.getSounds([
    {
    key: '#game_win#',
    sounds: [
    '<speaker audio="alice-sounds-game-win-1.opus">',
    '<speaker audio="alice-sounds-game-win-2.opus">',
    '<speaker audio="alice-sounds-game-win-3.opus">'
    ]
    }
    ], 'Поздравляем с победой!');
    // result: '<speaker audio="alice-sounds-game-win-1.opus">Поздравляем с победой!</speaker>'

    // Применение звукового эффекта
    const effectText = `${alisaSound.S_EFFECT_MEGAPHONE}Внимание!${alisaSound.S_EFFECT_END}`;
    // effectText: '<speaker effect="megaphone">Внимание!</speaker>'

    // Добавление паузы
    const textWithPause = 'Привет' + AlisaSound.getPause(1000) + 'мир!';
    // textWithPause: 'Привет sil <[1000]>`мир!</speaker>'

    // Комбинирование эффектов и пауз
    const complexText = `${alisaSound.S_EFFECT_MEGAPHONE}Внимание!${alisaSound.S_EFFECT_END}` +
    AlisaSound.getPause(1000) +
    `${alisaSound.S_EFFECT_PITCH_DOWN}Важное сообщение${alisaSound.S_EFFECT_END}`;
    // complexText: '<speaker effect="megaphone">Внимание!</speaker>sil <[1000]>`<speaker effect="pitch_down">Важное сообщение</speaker>'

    Implements

    Index

    Constructors

    Properties

    S_AUDIO_GAME_BOOT: "#game_boot#" = '#game_boot#'

    Воспроизвести звук загрузки

    S_AUDIO_GAME_8_BIT_COIN: "#game_coin#" = '#game_coin#'

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

    S_AUDIO_GAME_LOSS: "#game_loss#" = '#game_loss#'

    Воспроизвести звук поражения

    S_AUDIO_GAME_PING: "#game_ping#" = '#game_ping#'

    Воспроизвести звук ping

    S_AUDIO_GAME_WIN: "#game_win#" = '#game_win#'

    Воспроизвести звук победы

    S_AUDIO_GAME_8_BIT_FLYBY: "#game_fly#" = '#game_fly#'

    Воспроизвести звук полета

    S_AUDIO_GAME_8_BIT_MACHINE_GUN: "#game_gun#" = '#game_gun#'

    Воспроизвести звук выстрела

    S_AUDIO_GAME_8_BIT_PHONE: "#games_phone#" = '#games_phone#'

    Воспроизвести звук звока телефона

    S_AUDIO_GAME_POWERUP: "#games_powerup#" = '#games_powerup#'

    Воспроизвести звук powerup

    S_AUDIO_NATURE_WIND: "#nature_wind#" = '#nature_wind#'

    Воспроизвести звук ветра

    S_AUDIO_NATURE_THUNDER: "#nature_thunder#" = '#nature_thunder#'

    Воспроизвести звук молнии

    S_AUDIO_NATURE_JUNGLE: "#nature_jungle#" = '#nature_jungle#'

    Воспроизвести звук jungle

    S_AUDIO_NATURE_RAIN: "#nature_rain#" = '#nature_rain#'

    Воспроизвести звук дождя

    S_AUDIO_NATURE_FOREST: "#nature_forest#" = '#nature_forest#'

    Воспроизвести звук леса

    S_AUDIO_NATURE_SEA: "#nature_sea#" = '#nature_sea#'

    Воспроизвести звук моря

    S_AUDIO_NATURE_FIRE: "#nature_fire#" = '#nature_fire#'

    Воспроизвести звук огня

    S_AUDIO_NATURE_STREAM: "#nature_stream#" = '#nature_stream#'

    Воспроизвести звук потока

    isUsedStandardSound: boolean = true

    Флаг использования стандартных звуков Алисы

    При значении true используются стандартные звуки Алисы, при false - только пользовательские звуки

    true
    
    const alisaSound = new AlisaSound();
    alisaSound.isUsedStandardSound = false; // Отключение стандартных звуков
    S_EFFECT_BEHIND_THE_WALL: "<speaker effect=\"behind_the_wall\">" = '<speaker effect="behind_the_wall">'

    Эффект "за стеной" для текста

    Применяет эффект звучания из-за стены к тексту

    const text = `${alisaSound.S_EFFECT_BEHIND_THE_WALL}Текст за стеной${alisaSound.S_EFFECT_END}`;
    // text: '<speaker effect="behind_the_wall">Текст за стеной</speaker>'
    S_EFFECT_HAMSTER: "<speaker effect=\"hamster\">" = '<speaker effect="hamster">'

    Эффект "хомяк" для текста

    Применяет эффект голоса хомяка к тексту

    const text = `${alisaSound.S_EFFECT_HAMSTER}Пи-пи-пи${alisaSound.S_EFFECT_END}`;
    // text: '<speaker effect="hamster">Пи-пи-пи</speaker>'
    S_EFFECT_MEGAPHONE: "<speaker effect=\"megaphone\">" = '<speaker effect="megaphone">'

    Эффект "мегафон" для текста

    Применяет эффект звучания через мегафон к тексту

    const text = `${alisaSound.S_EFFECT_MEGAPHONE}Внимание!${alisaSound.S_EFFECT_END}`;
    // text: '<speaker effect="megaphone">Внимание!</speaker>'
    S_EFFECT_PITCH_DOWN: "<speaker effect=\"pitch_down\">" = '<speaker effect="pitch_down">'

    Эффект "низкий тон" для текста

    Применяет эффект пониженного тона к тексту

    const text = `${alisaSound.S_EFFECT_PITCH_DOWN}Глубокий голос${alisaSound.S_EFFECT_END}`;
    // text: '<speaker effect="pitch_down">Глубокий голос</speaker>'
    S_EFFECT_PSYCHODELIC: "<speaker effect=\"psychodelic\">" = '<speaker effect="psychodelic">'

    Эффект "психоделический" для текста

    Применяет психоделический эффект к тексту

    const text = `${alisaSound.S_EFFECT_PSYCHODELIC}Трип${alisaSound.S_EFFECT_END}`;
    // text: '<speaker effect="psychodelic">Трип</speaker>'
    S_EFFECT_PULSE: "<speaker effect=\"pulse\">" = '<speaker effect="pulse">'

    Эффект "пульс" для текста

    Применяет эффект пульсации к тексту

    const text = `${alisaSound.S_EFFECT_PULSE}Пульсирующий текст${alisaSound.S_EFFECT_END}`;
    // text: '<speaker effect="pulse">Пульсирующий текст</speaker>'
    S_EFFECT_TRAIN_ANNOUNCE: "<speaker effect=\"train_announce\">" = '<speaker effect="train_announce">'

    Эффект "вокзал" для текста

    Применяет эффект объявления на вокзале к тексту

    const text = `${alisaSound.S_EFFECT_TRAIN_ANNOUNCE}Поезд отправляется${alisaSound.S_EFFECT_END}`;
    // text: '<speaker effect="train_announce">Поезд отправляется</speaker>'
    S_EFFECT_END: "<speaker effect=\"-\">" = '<speaker effect="-">'

    Маркер окончания эффекта

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

    const text = `${alisaSound.S_EFFECT_MEGAPHONE}Текст с эффектом${alisaSound.S_EFFECT_END}`;
    // text: '<speaker effect="megaphone">Текст с эффектом</speaker>'

    Methods

    • Создает паузу в речи указанной длительности

      Parameters

      • milliseconds: number

        Длительность паузы в миллисекундах

      Returns string

      • Строка с паузой в формате Алисы
      // Создание паузы в 1 секунду
      const text = 'Привет' + AlisaSound.getPause(1000) + 'мир!';

      // Создание паузы в 2.5 секунды
      const text = 'Первый' + AlisaSound.getPause(2500) + 'второй';
    • Заменяет звуковой токен в тексте на соответствующий звук

      Parameters

      • key: string

        Ключ звука для замены

      • value: string | string[]

        Значение или массив значений для замены

      • text: string

        Исходный текст

      Returns string

      • Текст с замененными звуками
      // Замена одиночного звука
      const text = AlisaSound.replaceSound(
      '#game_win#',
      '<speaker audio="alice-sounds-game-win-1.opus">',
      'Поздравляем #game_win# с победой!'
      );

      // Замена на массив звуков
      const text = AlisaSound.replaceSound(
      '#nature_rain#',
      [
      '<speaker audio="alice-sounds-nature-rain-1.opus">',
      '<speaker audio="alice-sounds-nature-rain-2.opus">'
      ],
      'На улице #nature_rain# идет дождь'
      );
    • Удаляет все звуковые токены из текста

      Parameters

      • text: string

        Исходный текст

      Returns string

      • Текст без звуковых токенов
      // Удаление звуковых токенов
      const text = AlisaSound.removeSound('Текст #game_win# без #nature_rain# звуков');
      // Результат: 'Текст без звуков'
    • Обрабатывает звуки и текст для воспроизведения в Алисе

      Parameters

      • sounds: ISound[]

        Массив звуков для обработки

      • text: string

        Исходный текст для TTS

      Returns Promise<string>

      • Обработанный текст со звуками

      Правила обработки:

      • Если передан текст, он имеет приоритет над звуками
      • Если звуки не найдены, возвращается исходный текст
      • Стандартные звуки добавляются только если isUsedStandardSound = true
      const alisaSound = new AlisaSound();

      // Воспроизведение стандартного звука с текстом
      const result = await alisaSound.getSounds([
      { key: AlisaSound.S_AUDIO_GAME_WIN, sounds: [] }
      ], 'Поздравляем с победой!');

      // Воспроизведение пользовательского звука
      const result = await alisaSound.getSounds([
      { key: 'custom', sounds: ['path/to/sound.opus'] }
      ], 'Текст с пользовательским звуком');