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’а к своему софту – остается только быть внимательнее при импорте/экспорте тренировок и дописывать недостающее руками, чтобы все было корректно.

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