OsmAnd - хотелки и предложения по улучшению

Возможно ли реализовать в OsmAnd произношение названий географических объектов (улиц, населённых пунктов) с учётом словесного ударения (улица Хахина́ или улица Ха́ хина)? Если возможно, то в каком формате технически было бы удобнее хранить информацию об ударении в OpenStreetMap?

Передаваемую текстовую информацию из навиагционной программы читает движок TTS (text-to-speech), а движки разные (Pico, Nuance (Vocalizer), SVOX, Samsung TTS, Google TTS, IVONA), а их много. И как передавать ударение, не совсем понятно. Например у подмножества движков Nuance прокатывает так: пано-РА-ма, аппер-кейсить полностью ударный слог, выделяя его дефисами. А в других как? Я не знаю.
Это был просто пример.
И кто будет суппортить всё подмножество движков?

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

Как избавиться в поиске от тире? При Ужасно настроенном поиске, ошибки навигации при дробях делают программу бесполезной, и некому ненужной.

vshcherb, Виктор, не найдёшь минутку рассказать, почему такой тормозной у нас рендер? Вообще, в любых режимах. Все другие навигационные программы показывают карту влёт, в трёхмере и всё такое прочее…
Вектор тормозит из-за CPU! Узкое место Skia. Вообщем-то посмотреть почему вектор “тормозной” можно включить отрисовку объектов. Кстати не согласен, что он тормозной, войдите в “Safe mode” и увидите, что тормозной.
Чтобы понять, что тормозит просто включите “Debug rendering time” и увидите что чтение <10%, поэтому RAM ну никак не поможет. Зато CPU очень даже (не GPU!)
Дальше по теме :

  • Стиль слишком "жорный " и OSM плодит слишком много маленьких объектов, борьба с этими физическими параметрами ведется издавна, но не совсем успешно. На самом деле на экране телефона вполне хватит 500-1000 объектов для хорошей карты (с головой). Но из-за дробления улиц и т.п. рисуется 5000-10000, что конечно линейно ухудшает время )
  • Рисует сразу всю карту, так что при движении экрана, никакого diff rendering не происходит.
  • Не использует GPU!! Это основная проблема, так как GPU говорит что может справиться с 100000 объектами в секунду , но эти объекты настолько примитивны, что все сложности стиля придется обрезать или решать в индивидуальном порядке. Но скоро, через 1-1.5 месяца, надеюсь она будет решена!

Еще раз по поводу тормознутости, замерьте сколько рендерит Mapnik на компьютере metatile 16-17 зума)
Summary : слишком много маленьких OSM объектов , неиспользование GPU (CPU arm проседает).

В ночном билде появилось глобальное изменение роутинга, с этого момента все маршруты должны быть точными, то есть находить минимальный routing time маршрут (routing time пишется в Toast после построение, не путать с временем самого маршрута) . Новое API routing.xml пока недоступно, но в процессе этой недели.
Так же должны быть доступны маршруты до 500км и более, правда могут быть медленными до 10 мин (на сложный 500км или простой 1500км)

Следующие моменты очень важны (особенно для баг репортов) :

  1. При маршруте >30км (и автомобиль), включается 2х фазное построение. 1-й маршрут строится только по дорогам свыше tertiary (если есть разрыв по середине primary - рассматривается как баг карты), 2-й маршрут по всем дорогам приближенный к результату 1-й фазы
  2. Маршруты между safe mode и не safe mode не должны отличаться, работа над внутренними различиями пока не завершена.
  3. Precise routing удален, так как он теперь default.

vshcherb, круто, чо! мы все очень рады обновкам. Грядущим обновкам (“Но скоро, через 1-1.5 месяца, надеюсь она будет решена!” – про гпу, или что там). Да и просто, что ты жив-здоров, и за отличное интервью (этот вот рассказ из двух сообщений) огромное спасибо!!
Это реально подогревает и радует группу поддержки активных пользователей программы. :slight_smile:

Вчера катался на вело. Поскольку был не штурманом, то телефон со включенным османдом был спрятан глубоко, и я османд не смотрел, я его слушал. Решил покататься по маршруту на слух. Так вот, когда стоит задача, двигаться точно по заданному маршруту, то хотелось бы отключать у османда способность умничать. Вместо пересчета маршрута нужно просто подать сигнал тревоги или голосовое предупреждение об уходе с маршрута. Маршрут при этом не менять. Сейчас на слух невозможно понять отклонился ты от маршрута или нет. Да и визуально, в общем то же, сложно понять. Можно ли сделать отключение пересчета маршрута и предупреждение, что ты вне маршрута? Это хотелка. :slight_smile:

Хотелка 2. Редактирование маршрута. возможностей явно не хватает. Фактически можно только удалять точки. Или я не нашел как в маршрут добавлять промежуточные точки , как их двигать. Без этого как то сложно редактировать что либо.

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

а ночнушка от 1 числа реально быстрее карту показывает!

Импорт экспорт точек как в навителе чтобы было реализовано

качать отсюда: http://download.osmand.net/latest-night-build/ ?
Там куча всяких .apk, какой конкретно брать нужно?
Для чего их там столько? Где почитать в чем разница?

40°, отсюда.
все советуют (включая автора)) брать OsmAnd-default.apk, она самая стабильная типа из ночных.

(я всегда использую OsmAnd-nightly.apk, по привычке)

учти, ночная будет вставать поверх плюсовой версии. а поверх она не встанет, так что 1.6.5+ надо будет срыть. (а потом лучше перезагрузить тел, только потом поставить ночнушку – верный признак, что тебя покажет “в Африке”, то всё сделано ок). иначе могут остаться хвосты в хранилище от предыдущей. Ну и настраиваешь всё заново)) для многих это откровение)) (я, так, делаю за 5 минут).

Ошибка в интерфейсе поиска:

  1. Пишу в поиск улицу
  2. Выбираю из списка нужную улицу
  3. Открывается список домов (допустим, в этот момент понимаем, что улица всё-таки не та)
  4. Жму назад - ожидаю увидеть предыдущее окно (где были результаты поиска улиц), а меня выкидывает в главное окно поиска.
  5. Вынужден снова жать на выбор улицы, и начинать ввод сначала.

OsmAnd-default.apk - становится поверх OsmAnd free, поэтому можно иметь 2 параллельных версии (одна +, одна ночная или наоборот) и естественно настройки слетать не будут, так как подписи ночных не конфликтуют между собой

В ночной версии пропал пункт “Карты только дорог”.

Он уже пару месяцев как пропал

Очень очень плохо! Я пользовался этой штукой, подключая под нее подложку спутниковых снимков.
А что делать теперь?

Кажется такая проблема уже всплывала, но сейчас есть следующее, на примере Санкт-Петербурга:
В поиске улицы “Казанская” два результата, одна просто “Казанская”, а вторая “Казанская(Апраксин двор)”(не наш случай, нужно разбираться отдельно). Выбираем улица “Казанская”, и видим две записи с номером “4”. Одна запись вёдет в центр города, а вторая на востоке. :frowning:
Т.е. для улиц с одинаковым названием, но в разных районах города, в поиске по имени одна запись. И только по повторяющимся номерам домов можно догадаться, что улиц две. Но бывает что реально номера домов дублируются, например на производственных территориях.

Есть какие-нибудь способы это победить?

включаешь в “шестерёнке” галкой режим “Без полигонов” на основной векторной карте. Далее – так же))

  • Карты только дорог все еще работают, просто при наличии двух карт выбирается полная карта. В вашем случае пользуйтесь настройкой “без полигонов” или кастом стилем. Не думаю, что это правильное решение.

  • Про Ошибка в интерфейсе поиска. Я не совсем согласен, потому что стек регулируется Android и дойдя например до выбора дома и передумав вообще что-то выбирать придется нажимать “back” много раз чтобы вернуться на поиск или на карту. Конечно, в случае одного перехода это выглядит логично, но с точки зрения Android выглядит не правильно.

  • Импорт экспорт точек как в навителе чтобы было реализовано
    Как это?

Про звуковые файлы, они полностью кастомизируемые на клиенте и часто ru-tts отстает от собратьев en-tts по функциональности ( я не успеваю доделывать), но буду рад pull-request https://github.com/osmandapp/OsmAnd-resources/blob/master/voice/ru/ttsconfig.p. P.S. : Prolog полноценный язык программирования, но сложные вещи будут сложные

Строка “string(‘to.ogg’, 'по ').” У меня строгое ощущение, что там должно быть не “по”, а “до”. Сейчас звучит “Продолжайте движение по” и называет улицу, куда нужно повернуть. Если эта конструкция больше нигде не используется, то можно поменять.