Zwift, Strava и размышления на тему

Сегодня настраивал компик для Zwift’а в веломастерской у знакомого; в процессе немного покрутил педали. Дома импортировал GPX-файлы заездов в свой аккаунт на Strava, что привело к некоторым размышлениям.

Ехал 2 участка — один возле вулкана (где на реальной карте вода), второй — на острове рядом.

На острове — полкилометра набора высоты. При этом в GPX-файле изменения значения elevation вполне умеренные, да и затрачиваемая на «подъемы» мощность и получаемая скорость явно говорит об отсутствии там реальных перепадов высот.

Вулкан — напротив: несмотря на наличие перепадов высот (примерно того же уровня, что и на первом участке), в заезде набор высоты значится как «0».

Общий вывод для этого один: Страва плевать хотела на данные высоты в GPX-файле. В реальном мире там нет вулкана, а вода — вот и берется уровень моря, т.е., 0 метров. Ну и справедливо обратное — даже при отсутствии реальных усилий по набору высоты у тех, кто активно катался на велостанке со Zwift’ом — вполне могут быть «нарисованы» нереальные цифры высоты в профиле Стравы, если в реальном мире на месте заезда находится гора.

Если пойти чуть дальше — то это же справедливо и для трекеров с альтиметрами.  Страве ведь все равно, откуда она получила GPX (или аналогичный) файл — со Zwift’а, со смартфона или с Garmin’a c альтиметром. И если дефолтное поведение — игнорировать готовые координаты высоты из файла — то пусть в Garmin’е будет хоть 10 альтиметров — Страва нарисует свои значения. Что и подтверждается тредами в стиле этого на сайте саппорта Стравы.

Дальнейший поиск показывает, что в API Strava есть специальный флаг, показывающий, что устройство имеет альтиметр:

  <Creator>
    <Name>My Awesome App with barometer</Name>
  </Creator>

для TCX-файлов и

  <gpx version="1.1" creator="Best app ever with Barometer">

для GPX. Т.е., вроде как надо попросту дописать в creator’e «with barometer».

На деле все оказалось чуть иначе.

При экспорте тренировки со Стравы creator’ом значится «StravaGPX».  И все — Страва, видя это в импортируемом в дальнейшем файле, не реагирует ни на какие «with barometer». Такой вот у нее парсер GPX’а. Высота в любом случае тогда берется с базы высот.

Наугад попробовал написать «Zwift» и «Zwift with barometer». Тут обратная ситуация — в любом случае высота берется уже с GPX-файла. Кроме того, слева внизу появляется логотип Zwift’а, а тип заезда ставится как «виртуальный».

Ну и попробовал вписать в строку creator любой мусор — вот тут поведение уже корректно: «lalala» взяло высоту с базы высот, а «lalala with barometer» — из файла.

Еще один тест — экспорт GPX со Strava, который был импортирован как Zwift. В creator’e — StravaGPX и, соответственно, потеря данных высоты при повторном импорте. Что мешает Страве при экспорте смотреть на свои же флаги и корректно прописывать их в GPX-файл — не ясно…

Глянул гонку знакомого, в которой значился совместный заезд — у него флага Zwift нет; у тех, кто с ним ехал — есть. Выходит, на баги Стравы — потери флагов — накладываются баги Zwift’а — точнее, различие в поведении у разных версий.

С учетом отношения Zwift’а к своему софту — остается только быть внимательнее при импорте/экспорте тренировок и дописывать недостающее руками, чтобы все было корректно.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *