Skip to main content

Голосові підказки навігації

1. Деякі основи

  • OsmAnd підтримує як синтезовані підказки Text-to-Speech (TTS), так і попередньо записані голоси.
  • Використання голосу TTS є кращим, він більш гнучкий і може, наприклад, також вимовляти назви місць або вулиць.
  • Попередньо записані голоси рекомендуються лише як запасний варіант, якщо ваш пристрій взагалі не підтримує TTS обраною мовою.
  • Щоб використовувати TTS, на вашому пристрої має бути встановлений механізм TTS, який підтримує мову, яку ви хотіли б чути. Більшість пристроїв мають один або два механізми, які вже попередньо встановлені. Лише для менш поширених мов вам, можливо, доведеться знайти та встановити сторонній механізм TTS.
  • За те, для якої події пропонуються голосові підказки та їхній час, відповідає код голосового маршрутизатора OsmAnd.
  • Але словниковий запас і побудова речень для будь-якої мови вказуються у файлі конфігурації xx-yy_tts.js, де xx — код мови ISO 639-1, а yy — необов'язковий регіональний або подібний специфікатор. Лише для записаних голосів потрібна додаткова підпапка voice з усіма необхідними записаними виразами як файли .ogg.
  • Угода про папки/файли на пристрої: voice/xx[-yy]-tts/xx[-yy]_tts.js.

Файли конфігурації tts.js повинні містити заголовок, як показано нижче, який відстежує, які конкретні функції були реалізовані та перевірені для відповідного файлу:

// РЕАЛІЗОВАНІ (X) або ВІДСУТНІ ( ) ФУНКЦІЇ, (N/A), якщо не потрібні цією мовою:
//
// (X) Основні підказки навігації: маршрут (пере)розраховано (з підтримкою відстані та часу), повороти, кільцеві розв'язки, розвороти, прямо/слідувати, прибуття
// (X) Оголошення назв найближчих точок (призначення / проміжна / точка маршруту GPX / вибране / POI)
// (X) Підказки уваги: SPEED_CAMERA; SPEED_LIMIT; BORDER_CONTROL; RAILWAY; TRAFFIC_CALMING; TOLL_BOOTH; STOP; PEDESTRIAN; MAXIMUM; TUNNEL
// (X) Інші підказки: GPS втрачено, поза маршрутом, назад до маршруту
// (X) Підтримка назв вулиць та прийменників (на / по / до) та призначення вулиці (у напрямку)
// (X) Підтримка одиниць відстані (метри / фути / ярди)
// (N/A) Особлива граматика: (будь ласка, вкажіть, яка)
// (X) Підтримка оголошення з'їздів з автомагістралі

2. Мови та варіанти голосу

  • Деякі поширені пакети голосових підказок попередньо встановлені в OsmAnd, інші вимагають одноразового завантаження. (Зверніть увагу, що навіть попередньо встановлені виглядають так, ніби вони були завантажені.)
  • Для деяких мов ми пропонуємо різні регіональні варіанти. Відповідна регіональна вимова залежить від можливостей вашого пристрою.
  • Для деяких голосів ми також пропонуємо додаткові варіанти, наприклад, з коротшими ("неформальними") підказками або з вимкненими деякими підказками, щоб зменшити балакучість.

3. Тестування голосових підказок

Ви можете тимчасово увімкнути плагін розробки OsmAnd, потім перейти до його налаштувань і скористатися кнопкою Тестувати голосові підказки. Вона надає кілька прикладів оголошень для кожного типу підказок OsmAnd, використовуючи широкий діапазон чисел для тестування форматування часу/відстані та вимови. Напис на кнопці вказує основний вміст підказки, точне формулювання вказано у файлі tts.js, який ви тестуєте. Також є кнопка тестування, яка показує налаштування вашого пристрою та мовні можливості.

Під час навігації поточну голосову підказку завжди можна запустити, торкнувшись віджета стрілки повороту.

4. Створення нової мови/варіанту голосу TTS

Кілька підказок:

  • OsmAnd надає лише формулювання, порядок слів, граматику з точки зору відмінків, відмінків, однини/множини тощо, тоді як вимова виконується механізмом TTS, який ви використовуєте на пристрої (є вбудовані та сторонні)
  • Це робиться в одному файлі визначення голосу для кожної мови. На github файли розташовані тут, і, будь ласка, дивіться вище угоду про папки/файли на вашому пристрої локально.
  • Файл тепер у форматі js (перенесено з колишнього PROLOG, щоб зробити його більш поширеним).
  • Щоб створити новий файл конфігурації, будь ласка, почніть з клонування з en_tts.js, тобто використовуйте його як шаблон.
  • Потім може бути корисно подивитися на існуючі файли конфігурації для граматично складніших мов (наприклад, німецької, чеської або словацької), щоб подивитися на існуючі рішення для особливої граматики, порядку слів, утворення чисел тощо. Особливо подивіться на мови, схожі на вашу.
  • Ви можете протестувати свій власний файл tts (або свої покращення до існуючих) самостійно локально, перш ніж надсилати запит на витяг, просто розмістіть його на своєму пристрої з правильною угодою про файли/папки.