Velitask — версия 1.0.1026-beta

Установка

Velitask для Windows ставится из MSI-инсталлятора (рекомендуется) или запускается из ZIP-архива без установки.

Зачем это нужно

Velitask — настольное приложение под Windows. Дистрибутивы собраны вместе с Java Runtime (JRE 21), поэтому отдельно ставить Java не нужно. Двух форматов хватает, чтобы покрыть основные сценарии: системную установку с ярлыками — через MSI; «портативный» запуск с флешки или из любой папки — через ZIP.

Системные требования

ПараметрМинимумРекомендуется
ОСWindows 10 (64-bit)Windows 10 / 11 (64-bit)
Процессор4 ядра, 2 ГГц6+ ядер, 3 ГГц
Память (RAM)4 ГБ8 ГБ и больше
Видеопамятьне требуетсядискретная карта ускоряет рендер превью
Диск1 ГБ под программу + место под видео и кеш OSMSSD заметно ускоряет работу с большими видео

Для редактирования и экспорта видео полезен быстрый диск (NVMe) и достаточно RAM — Velitask держит в памяти кадры воспроизведения и кеши сенсоров.

Установка из MSI (рекомендуется)

  1. Скачайте файл Velitask-X.Y.Z.msi со страницы загрузок velitask.com.
  2. Запустите MSI двойным кликом. Установщик попросит права администратора.
  3. Выберите папку установки (по умолчанию — C:\Program Files\Velitask\) и нажмите «Установить».
  4. После завершения в меню «Пуск» появится ярлык Velitask, в Add or Remove Programs — пункт для удаления.

Запуск из ZIP-архива (портативный режим)

  1. Скачайте Velitask-X.Y.Z.zip со страницы загрузок.
  2. Распакуйте архив в любую папку (без пробелов и кириллицы в пути — это надёжнее).
  3. Зайдите в распакованную папку и запустите Velitask.exe.

При этом конфиг и кеши Velitask всё равно создаются в профиле пользователя — сама ZIP-папка остаётся «чистой».

Где Velitask хранит свои данные

ЧтоКуда
Лог приложения%USERPROFILE%\.velitask\logs\velitask.log
Кеш OSM-тайлов%USERPROFILE%\.velitask\osm-cache\
Глобальные настройки (тема, язык, последний проект)реестр + файлы профиля
Файлы проекта (БД, видео, треки)папка проекта, которую вы выбрали при создании

Папка .velitask в профиле создаётся при первом запуске. Удаление этой папки сбрасывает настройки приложения — но не трогает ваши проекты.

Удаление

  • Установка из MSI: «Параметры → Приложения → Velitask → Удалить» (или «Программы и компоненты»).
  • Запуск из ZIP: просто удалите распакованную папку. Чтобы стереть и настройки — удалите %USERPROFILE%\.velitask\.

Связанные разделы

Решение проблем

  • Двойной клик по Velitask.exe ничего не делает. Проверьте, что распаковали ZIP полностью, а не запускаете прямо из архива. Также Windows может блокировать запуск; в свойствах файла поставьте галку «Разблокировать».
  • Установка MSI требует прав администратора и они недоступны. Используйте ZIP-вариант — он не требует установки.
  • Антивирус ругается на установщик. Velitask не подписан корпоративной подписью. Добавьте папку программы в исключения антивируса.
  • Не запускается на Windows 7/8. Не поддерживается. Минимум — Windows 10 64-bit.

Знакомство с интерфейсом

Главное окно Velitask разделено на меню, левую панель с инструментами, центральный плеер Mixel'а и статусную строку. Этого достаточно, чтобы открыть проект, добавить источник, собрать композицию и экспортировать результат.

Зачем это нужно

Velitask собирает много разных активностей в одном окне: импорт видео и треков, расстановку индикаторов, синхронизацию времени, просмотр сенсорных таблиц, экспорт. Чтобы не теряться, важно сразу понять, где что лежит и в каком порядке к этому возвращаться.

Главное меню

МенюЧто внутри
FileСоздать проект, открыть проект, сохранить, экспорт (видео, изображение), настройки проекта, выход.
ViewПоказать/скрыть левые панели (источники, слои, задачи, индикаторы, устройства, время).
ToolsДополнительные инструменты — редактор БД.
HelpО программе, документация, версия.

Левая панель (вкладки-инструменты)

Слева — переключаемые панели. Каждая закрывается крестиком и возвращается через View.

  • Project (Источники) — дерево проекта: видео, GPX-треки, изображения, OSM, сенсоры.
  • Layers (Слои) — список слоёв текущего Mixel'а: видео, карта, графики, индикаторы.
  • Indicators (Индикаторы) — каталог установленных индикаторов (плагинов), которые можно положить в Mixel.
  • Devices (Устройства) — список Профилей устройств с настройкой временной зоны и смещения часов.
  • Time (Время) — синхронизация: какому времени соответствует тот или иной кадр.
  • Tasks (Задачи) — очередь фоновых операций: импорт GPX, генерация превью, экспорт. Здесь видно прогресс и ошибки.

Центральная область: плеер Mixel'а

В центре — холст композиции (Mixel) с привычными элементами видеоплеера:

  • Кнопки ▶ Play / ⏸ Pause, ⏮ Start / ⏭ End, ⬅ Prev frame / ➡ Next frame.
  • Таймлайн с курсором текущей позиции.
  • Превью видео и наложенных индикаторов в текущий момент времени.

Поверх плеера показывается то, что вы видите в финальном экспортированном видео.

Статусная строка

Внизу окна — небольшая полоска с короткой информацией: текущая фоновая задача с прогрессом, сообщения о сохранении, ошибки.

Стартовое окно

При первом запуске может показаться приветственное окно с кнопкой «Начать работу» и галкой «Показывать при запуске». Снимите галку, если хотите сразу видеть рабочее окно.

Что делать дальше

  1. Создайте проект — File → New Project… и выберите папку.
  2. Перетащите в окно (или добавьте через меню) видео и GPX-трек.
  3. Настройте Профиль устройства, чтобы кадры и треки совпали по времени.
  4. Откройте Mixel и добавьте нужные индикаторы.
  5. Экспортируйте видео.

Подробный сценарий — в разделе Первый проект.

Связанные разделы

Первый проект

15-минутный сценарий: новый проект → добавить видео и GPX-трек → синхронизировать время → положить пару индикаторов в Mixel → экспортировать видео.

Зачем это нужно

Чтобы вы быстро увидели «полный цикл» Velitask. Все шаги ниже работают на одной паре «видео с экшен-камеры + GPX-трек с того же заезда» — это самый частый сценарий.

Понадобится:

  • одно видео (например, MP4 с GoPro);
  • один GPX-трек, записанный примерно в то же время (с велокомпьютера, часов или смартфона);
  • пустая папка, в которой Velitask создаст проект.

Шаги

1. Создайте проект

  1. Откройте Velitask.
  2. File → New Project… (или сочетание Ctrl+N).
  3. В диалоге выберите пустую папку — например, D:\Velitask\my-first-trip\. Velitask создаст в ней файлы проекта (БД, метаданные).
  4. Имя проекта Velitask берёт из имени папки.

После создания вы увидите пустой Mixel в центре и пустое дерево источников слева.

2. Добавьте видео

  1. Перетащите файл .mp4 (или .mov, .mkv, .avi) прямо в окно Velitask. Альтернатива — File → Import… или контекстное меню в дереве источников.
  2. Velitask добавит в дерево узел вида Video → my-clip.mp4 и автоматически прочитает метаданные (длительность, разрешение, fps, дату съёмки).
  3. В фоновых задачах (вкладка Tasks) появится прогресс анализа кадров.

3. Добавьте GPX-трек

  1. Перетащите .gpx в окно. Velitask распознаёт GPX автоматически.
  2. В дереве появится узел GPX → my-track.gpx. Внутри него — наборы сенсоров: Geo (координаты), Distance (дистанция от старта), Elevation (высота), Speed (скорость), Slope (уклон) — в зависимости от того, что есть в исходном файле.
  3. На вкладке Tasks вы увидите импорт. Дождитесь, пока он закончится — в крупных GPX это занимает заметное время.

4. Сверьте время видео и трека

Видео и GPX почти никогда не «совпадают» сами собой: камера может стоять на другом часовом поясе, GPX — в UTC, и т.п. Это решается через Профиль устройства.

  1. Откройте вкладку Devices.
  2. Velitask автоматически создаёт по одному Профилю для каждого источника. Откройте профиль камеры:
    • Часовой пояс — поставьте тот, в котором были выставлены часы камеры (например, Europe/Moscow).
    • Смещение, сек. — оставьте 0, если часы не врали. Если врали (камера спешила на минуту) — введите сюда смещение.
  3. Сделайте то же для профиля GPX-источника. У большинства GPS-устройств трек уже в UTC: оставьте часовой пояс UTC и смещение 0.

Подробнее — в разделе Синхронизация времени.

5. Положите индикаторы в Mixel

  1. На вкладке Indicators виден список доступных индикаторов: спидометр, текст скорости, текст времени, карта, дистанция и т.д.
  2. Перетащите нужный индикатор на холст плеера в центре. Например, «Speed text» (текст скорости).
  3. В правой панели отобразятся свойства слоя: положение, размер, привязка к источнику. Свяжите индикатор с GPX-сенсором скорости.
  4. Аналогично положите «Time text» (часы) и «GeoMap» (мини-карту) — типичный набор для велозаезда.

Подробнее — в разделе Редактор Mixel'а.

6. Просмотрите результат

  1. Нажмите Play (▶) — Velitask воспроизведёт видео с наложенными индикаторами.
  2. Перемотайте курсор таймлайна, проверьте, что цифры скорости/дистанции/времени соответствуют видео.
  3. Если что-то не сходится — возвращайтесь к шагу 4 и уточняйте Профиль устройства.

7. Экспортируйте видео

  1. File → Export → Video….
  2. Выберите диапазон (по умолчанию — весь Mixel), пресет качества, кодек (H.264 — самый совместимый), fps, аудио.
  3. Укажите путь к выходному файлу (например, D:\Velitask\my-first-trip\export.mp4).
  4. Нажмите Start. Прогресс отображается на вкладке Tasks.
  5. По завершении в указанной папке появится готовый файл.

Подробнее — в разделе Экспорт видео.

Что попробовать дальше

  • Добавить больше видео в один проект и собрать из них последовательность.
  • Добавить дополнительные сенсоры (каденс, мощность) — Velitask читает их из GPX/FIT, если они там есть.
  • Покрутить настройки индикаторов: размер, цвет, положение.
  • Сохранить пресет экспорта, чтобы быстро применять те же настройки кодирования к следующим проектам.

Связанные разделы

Модель времени

Внутри проекта всё время хранится в UTC. Каждое исходное устройство (камера, GPS-логгер, велокомпьютер) приводится к UTC через Профиль устройства — пара «часовой пояс + смещение часов».

Зачем это нужно

Видео, GPX-треки и сенсорные записи сами по себе несут разное время. У одной камеры часы стоят в Europe/Moscow, у другого устройства — в UTC, у третьего часы спешат на минуту, а GPX-приёмник вообще пишет UTC всегда. Если просто склеить всё «как есть», цифры скорости и дистанции будут показываться не в тот момент.

Velitask решает это так:

  1. Все исходные «сырые» отметки времени (raw) — то, что записало устройство.
  2. Через Профиль устройства они пересчитываются в UTC.
  3. В UTC живёт вся внутренняя шкала проекта — таймлайн Mixel'а, индикаторы, экспорт.

Пользователь нигде вручную UTC не вводит — он только говорит «у этой камеры часовой пояс такой, и она спешит на столько-то секунд».

Профиль устройства

Профиль устройства — это запись в проекте, которая связывает источник с правилами интерпретации его времени.

ПолеЧто значит
Названиепроизвольное, для поиска: «GoPro Hero 11», «Garmin Edge», «Phone».
Тип источникавидео, GPS, и т.п. — нужен для группировки.
Часовой пояс (Time zone)tz из стандартной базы IANA: Europe/Moscow, UTC, America/Los_Angeles и т.д.
Смещение, сек.если часы устройства врали (камера спешила на 47 секунд), здесь записывается поправка.

Velitask сам создаёт по умолчанию по одному Профилю на каждый источник. Профили перечислены на вкладке Devices и редактируются там же.

Наследование Профиля

Чтобы не задавать Профиль каждому источнику отдельно, действуют правила наследования:

  1. У каждого источника есть свой Профиль — приоритет 1.
  2. Если у источника Профиль не задан — берётся Профиль папки, в которой он лежит.
  3. Если и там не задан — Профиль корня проекта.
  4. Если ничего нигде не задано — UTC, смещение 0.

То есть удобно один раз настроить «Профиль для GoPro» в корне проекта и не возвращаться к нему для каждого ролика.

Как часовой пояс и смещение превращаются в UTC

Формула простая:

UTC = raw − tz_offset(raw) + correction
  • raw — то, что записало устройство.
  • tz_offset(raw) — смещение часового пояса от UTC в этот момент (учитывает летнее/зимнее время).
  • correction — пользовательская поправка часов в секундах.

Velitask умеет в обе стороны: и записывать в UTC, и показывать локальное время устройства — например, в индикаторе «часы».

Что важно понимать

  • Один час разницы — это «забытый» часовой пояс. Если индикаторы съезжают ровно на час, обычно дело не в смещении, а в неверной tz Профиля.
  • Несколько секунд разницы — это смещение часов. Камеры обычно врут на 5–60 секунд относительно «эталона». Эти секунды задаются через смещение Профиля.
  • GPX почти всегда в UTC. Если в GPX-файле прямо указан UTC (типичный случай) — Профилю достаточно UTC и нулевого смещения.

Связанные разделы

Mixel и слои

Mixel — основной формат композиции в Velitask: прямоугольный холст с набором слоёв, каждый из которых отображает что-то своё (видео, карту, индикатор, фигуру). Это и то, что вы видите в плеере, и то, что в итоге попадает в экспорт.

Зачем это нужно

В типичном телеметрическом видео нужно показать сразу несколько вещей: само видео с камеры, текущие цифры скорости и дистанции, мини-карту с треком, может быть график уклона. Все это — слои одной композиции. Mixel — это контейнер, который их хранит и проигрывает.

Mixel у проекта обычно один — главная композиция. Но Mixel не привязан жёстко: позже у вас могут появиться отдельные Mixel'и для разных частей маршрута или разных вариантов экспорта.

Из чего состоит Mixel

ПонятиеЧто значит
Холстпрямоугольная область с заданным разрешением и соотношением сторон (16:9, 4:3, 1:1, вертикаль).
Слой (Layer)один объект на холсте: видео, карта, индикатор, фигура, группа.
Группа (Group)вложенный набор слоёв, который двигается и масштабируется как одно целое.
Layoutправила размещения слоёв относительно холста (якоря, проценты, абсолютные пиксели).

Слои упорядочены: тот, что выше в списке — ближе к зрителю (поверх остальных).

Какие бывают слои

Из коробки Velitask умеет создавать такие слои:

СлойЧто делает
Videoпоказывает кадр исходного видеоисточника.
GeoMapмини-карта OSM с треком и маркером текущей позиции.
Speed (текст)текущая скорость крупным текстом.
Speedometerстрелочный спидометр.
Distance (текст)пройденная дистанция.
Slope (текст)текущий уклон (%).
Slope (график)график уклона по таймлайну.
Wattmeterмощность в Вт.
Time (текст)часы, дата.
Compassкомпас по направлению движения.
SVG / Rectangle / Ellipse / Lineпользовательские фигуры.
Groupконтейнер для других слоёв.

Большинство слоёв — это индикаторы из плагина (см. Индикаторы и плагины). Это значит, что список слоёв расширяется — установив новый плагин, вы добавите в Mixel новые типы.

Привязка слоя к источнику

Слои с данными (Speed, Distance, GeoMap, …) показывают цифры из конкретного сенсора конкретного источника. Это связь явная:

  • В свойствах слоя в правой панели есть поле «Источник» (или несколько полей, если индикатор использует несколько каналов).
  • Velitask не угадывает источник за вас. Вы выбираете «эту скорость брать с GPX-трека morning-ride.gpx» — и слой работает только с этими данными.
  • Если источник не задан, слой будет показывать пусто или «—».

Слои и время

Все слои живут на одной общей шкале — таймлайне Mixel'а в UTC. На любом моменте таймлайна Velitask:

  1. Берёт текущее UTC-время курсора.
  2. Каждому слою подсовывает значение его сенсора в этот момент.
  3. Рисует получившуюся картинку — это и есть кадр Mixel'а.

Шкала — общая, поэтому видео с камеры и цифры с GPX автоматически синхронизированы (если правильно настроены Профили устройств).

Mixel как JSON и шаблон

Mixel можно сохранить не только внутри проекта, но и как отдельный .vttp-шаблон. Такой файл хранит JSON-композицию: слои, порядок, размещение и свойства индикаторов.

Шаблон полезен, когда вы хотите переиспользовать одну раскладку в разных проектах: например, всегда открывать видео с видеослоем, спидометром и картой, а GPX-трек — с картой на весь холст.

Velitask умеет применять такие шаблоны вручную и автоматически:

  • вручную — через Tools → Apply Template...;
  • экспортировать текущую композицию — через File → Export → Template...;
  • автоматически — когда у нового источника ещё нет сохранённого Mixel'а;
  • отдельно для миниатюр — через thumbnail-video.vttp и thumbnail-gpx.vttp.

Подробно: Mixel JSON и шаблоны. Отдельно про размещение слоёв в шаблоне: Макеты Mixel в JSON.

Связанные разделы

Mixel JSON и шаблоны

Кратко: Mixel можно сохранить как .vttp-шаблон, положить в папку проекта или пользовательскую папку шаблонов и применять к новым источникам. Внутри .vttp — JSON с описанием слоёв, размещения и свойств.

Зачем это нужно

Обычно Mixel удобнее собирать мышью: добавить видео, карту, спидометр, тексты и настроить их в панели свойств. Но иногда полезно иметь шаблон:

  • вы часто собираете одинаковую раскладку для разных заездов;
  • хотите хранить удачную композицию как отдельный файл;
  • готовите несколько проектов с одинаковыми цветами, размерами и позициями;
  • хотите быстро поменять базовые параметры в текстовом JSON;
  • собираете шаблон один раз и применяете его к новым видео или GPX-трекам.

JSON — это продвинутый способ работы. Если вы не хотите редактировать файлы вручную, можно просто настроить Mixel в интерфейсе и экспортировать его как шаблон.

Как пользоваться

Создать шаблон из текущего Mixel'а

  1. Откройте источник с уже настроенным Mixel'ом.
  2. Проверьте слои, порядок, размеры, цвета и привязки к данным.
  3. Выберите File → Export → Template...
  4. Сохраните файл с расширением .vttp.
  5. Положите файл в папку проекта или в пользовательскую папку шаблонов.

Пользовательская папка шаблонов по умолчанию:

%USERPROFILE%\.velitask\templates

Её можно изменить в Tools → Settings → Templates.

Применить шаблон вручную

  1. Откройте источник или Mixel, к которому хотите применить шаблон.
  2. Выберите Tools → Apply Template...
  3. Выберите Базовый шаблон или конкретный .vttp из проекта.
  4. Проверьте список слоёв и привязки к источникам.
  5. Сохраните проект, если результат подходит.

Применение шаблона заменяет текущую композицию Mixel'а. Перед экспериментами лучше сохранить проект или экспортировать текущий Mixel в отдельный .vttp.

Что такое .vttp

.vttp — это файл шаблона Mixel'а. Внутри находится JSON-композиция:

  • список слоёв;
  • порядок слоёв;
  • размещение каждого слоя;
  • свойства индикаторов;
  • настройки, которые помогают Velitask применить слой к новому источнику.

Обычный Mixel хранится внутри проекта. .vttp лежит отдельным файлом и нужен для переиспользования.

Что сравниваемОбычный MixelШаблон Mixel'а .vttp
Где хранитсявнутри проектаотдельный файл
Для чего нужентекущая композиция проектапереиспользуемая раскладка
Как создаётсяавтоматически при работе в редакторечерез экспорт шаблона или вручную
Как применяетсяоткрывается вместе с проектомвручную или автоматически при создании нового Mixel'а

Где Velitask ищет шаблоны

Когда у источника ещё нет сохранённого Mixel'а, Velitask пытается подобрать default-шаблон автоматически.

Сначала приложение подбирает имя файла:

Имя шаблонаКогда подходит
ride.vttpдля источника ride.mp4, ride.mov, ride.gpx с таким именем
mp4.vttpдля MP4-видео, если нет шаблона по имени источника
mov.vttpдля MOV-видео, если нет более точного шаблона
gpx.vttpдля GPX-треков
video.vttpдля видеоисточников, если нет шаблона по имени или расширению
image.vttpдля изображений
telemiger.vttpдля источников Telemiger

Для каждого имени проверяются уровни:

УровеньГде лежитКогда использовать
Проектныйрядом с источником или выше по папкам до корня проекташаблон нужен только в одном проекте
Пользовательский%USERPROFILE%\.velitask\templates или папка из настроекшаблон нужен во всех проектах
Системныйпапка шаблонов установки Velitaskвстроенные шаблоны приложения

Приоритет такой:

  1. Сначала более конкретное имя: ride.vttp важнее mp4.vttp, а mp4.vttp важнее video.vttp.
  2. Внутри одного имени проектный шаблон важнее пользовательского.
  3. Пользовательский шаблон важнее системного.
  4. Регистр имени файла не важен: Video.vttp и video.vttp считаются одним вариантом.

Пользовательская и системная папки для default-шаблонов проверяются только на верхнем уровне. Если вы положите video.vttp во вложенную подпапку пользовательских шаблонов, автоматический поиск его не увидит.

Проектные, пользовательские и системные шаблоны

Проектный шаблон удобен, когда один проект должен иметь собственный стиль. Например, положите video.vttp в папку проекта, и новые видео в этом проекте будут получать эту раскладку, если для них ещё нет сохранённого Mixel'а.

Пользовательский шаблон удобен для личного стиля. Например, положите gpx.vttp в %USERPROFILE%\.velitask\templates, и новые GPX-треки в разных проектах будут начинаться с вашей карты или набора индикаторов.

Системные шаблоны поставляются вместе с Velitask. Их лучше не редактировать напрямую: скопируйте нужный .vttp в пользовательскую папку и меняйте копию.

Thumbnail-шаблоны

Thumbnail-шаблоны используются для миниатюр и preview в интерфейсе. Они не заменяют основной Mixel источника.

Сейчас используются такие имена:

ИмяДля чего
thumbnail-video.vttpминиатюра видеоисточника
thumbnail-gpx.vttpминиатюра GPX-трека

Thumbnail-шаблоны ищутся только в пользовательской и системной папке шаблонов. Проектная иерархия для них не используется.

Как устроен JSON Mixel'а

Верхний уровень обычно содержит список layers. Каждый элемент списка — один слой на холсте.

Пример встроенного шаблона для видео:

{
  "layers": [
    {
      "name": "com.velitask.plagin.official.video",
      "data": {
        "maket": { "preset": "fill" }
      }
    },
    {
      "name": "com.velitask.plagin.official.speedometer",
      "data": {
        "maket": { "preset": "auto" }
      }
    },
    {
      "name": "com.velitask.plagin.official.geoMap",
      "data": {
        "maket": { "preset": "auto" }
      }
    }
  ]
}

Что здесь важно:

  • layers — порядок слоёв;
  • name — техническое имя слоя или индикатора;
  • data — настройки этого слоя;
  • maket — размещение слоя на холсте;
  • preset: fill — слой заполняет доступную область;
  • preset: auto — Velitask выбирает подходящее место автоматически.

Подробно про maket, его типы и поля: Макеты Mixel в JSON.

Пример шаблона для GPX-карты:

{
  "layers": [
    {
      "name": "com.velitask.plagin.official.geoMap",
      "data": {
        "maket": { "preset": "fill" },
        "properties": {
          "fitTrack": { "value": true }
        }
      }
    }
  ]
}

Здесь properties содержит свойства конкретного индикатора. В примере fitTrack включает подгонку карты под трек.

Что можно менять вручную

Самые безопасные изменения:

  • поменять preset размещения, если вы понимаете разницу между fill и auto;
  • изменить простые свойства с понятным значением, например true / false, число или цвет;
  • удалить лишний слой из списка layers;
  • изменить порядок слоёв в списке;
  • скопировать готовый слой из другого шаблона, если нужный индикатор установлен в Velitask.

После каждого изменения проверяйте шаблон в копии проекта. Лучше менять по одному небольшому фрагменту за раз.

Что лучше не трогать

Осторожно относитесь к таким полям:

  • name — если такого индикатора нет в вашей установке, слой не появится;
  • привязки к источникам и сенсорам, если они есть в шаблоне;
  • неизвестные вложенные поля в properties;
  • JSON, экспортированный более новой версией Velitask, если вы открываете его в старой версии приложения.

Не копируйте sourceId, sensorId и похожие id из одного проекта в другой вслепую. В новом проекте эти id могут означать другие данные или не существовать.

Проверка шаблона

  1. Сделайте копию проекта или используйте тестовый проект.
  2. Положите .vttp в папку проекта или пользовательскую папку шаблонов.
  3. Откройте источник, для которого у Velitask ещё нет сохранённого Mixel'а.
  4. Проверьте, какие слои появились.
  5. Проверьте свойства слоёв и привязки к источникам.
  6. Пролистайте таймлайн.
  7. Сделайте короткий тестовый экспорт или экспорт одного кадра.

Если шаблон применился не так, как ожидалось, временно уберите файл из папки шаблонов и откройте источник снова.

Решение проблем

СимптомВозможная причинаЧто сделать
Новый источник открылся без слоёвшаблон не найден или повреждёнпроверьте имя файла, папку и JSON-синтаксис
Применился не тот шаблонболее конкретный шаблон перекрыл общийпроверьте ride.vttp, шаблоны по расширению и video.vttp / gpx.vttp
Карта или индикатор пустыене подобралась привязка к даннымоткройте свойства слоя и выберите нужный источник или сенсор
Миниатюра не измениласьизменён обычный шаблон, а не thumbnail-шаблониспользуйте thumbnail-video.vttp или thumbnail-gpx.vttp
После применения шаблона пропала текущая композицияшаблон заменяет Mixelвосстановите из сохранённого проекта или заранее экспортированного .vttp

Связанные разделы

Макеты Mixel в JSON

Кратко: maket управляет тем, где слой появится в Mixel'е при применении .vttp-шаблона. В шаблонах Velitask поддерживает три preset: auto, fill и proportional.

Зачем это нужно

Шаблон Mixel'а должен работать не только в одном проекте и одном разрешении. Если вы сохраните слой в точных пикселях, он может выглядеть хорошо в 1920x1080, но съехать или стать слишком маленьким в вертикальном видео, квадратном кадре или 4K.

maket решает эту задачу. Он хранит не просто текущие координаты, а правило размещения слоя:

  • заполнить родителя полностью;
  • попросить индикатор выбрать своё стандартное место;
  • поставить слой в процентах от размера родителя.

Для ручной настройки .vttp чаще всего нужен proportional: он понятный, переносимый и хорошо переживает смену разрешения.

Как пользоваться

  1. Откройте .vttp-файл в текстовом редакторе.
  2. Найдите нужный слой внутри layers.
  3. Внутри data добавьте или измените объект maket.
  4. Выберите preset: auto, fill или proportional.
  5. Для proportional задайте x, y, w, h.
  6. Примените шаблон в Velitask и проверьте результат.

Пример слоя со спидометром в правом верхнем углу:

{
  "name": "com.velitask.plagin.official.speedometer",
  "data": {
    "maket": {
      "preset": "proportional",
      "x": 0.73,
      "y": 0.05,
      "w": 0.22,
      "h": 0.30
    }
  }
}

На холсте 1920x1080 это даст примерно:

ПолеРасчётРезультат
x1920 * 0.731402 px от левого края
y1080 * 0.0554 px от верхнего края
w1920 * 0.22422 px ширины
h1080 * 0.30324 px высоты

Где находится maket

maket находится внутри data конкретного слоя:

{
  "layers": [
    {
      "name": "com.velitask.plagin.official.video",
      "data": {
        "maket": { "preset": "fill" }
      }
    }
  ]
}

Для верхнего слоя родитель - весь холст Mixel'а. Для вложенного слоя родитель - слой или группа, внутри которой он находится.

Что происходит при применении шаблона

Когда Velitask применяет .vttp, он читает JSON в режиме шаблона. Для каждого слоя работает такой порядок:

  1. Если есть maket, Velitask применяет его и рассчитывает positionInParent и size.
  2. Если maket нет, но есть size и positionInParent, используются точные значения из JSON.
  3. Если это шаблон и нет ни maket, ни точных размеров и позиции, применяется auto.

Практический вывод: в .vttp лучше явно задавать maket. Тогда шаблон будет понятнее и устойчивее.

Если в одном слое одновременно есть maket, size и positionInParent, главным будет maket. Точные пиксельные поля останутся в файле, но при загрузке слоя будут проигнорированы.

Типы макетов

presetДополнительные поляЧто делаетКогда использовать
autoнетприменяет стандартное размещение самого индикаторабыстрый старт, встроенные шаблоны
fillнетставит слой в x=0, y=0 и растягивает на весь размер родителявидеофон, карта на весь холст, полноэкранная подложка
proportionalx, y, w, hзадаёт позицию и размер долями от родителяточная переносимая раскладка для шаблонов

Если preset не указан внутри maket, Velitask считает его auto.

Если указан неизвестный preset, Velitask не сможет применить такой maket. Если рядом есть size и positionInParent, будут использованы они. Если это шаблон без точных размеров и позиции, слой в итоге получит auto.

auto

auto выглядит так:

{
  "maket": { "preset": "auto" }
}

auto не хранит координаты, размер, якорь или отступы в .vttp. Вместо этого слой вызывает своё стандартное размещение.

Для official-индикаторов стандартное размещение задано в самом индикаторе:

ИндикаторСтандартное место autoБазовый размер
Videoсправа снизу480x270
Speedometerсправа сверху400x400
GeoMapслева снизу700x400
Distance textслева снизу750x100
Slope chartслева сверху600x300
Slope textслева сверху600x300
Time textслева сверху600x300
Compassсправа сверху200x200
Rectangleслева сверху400x200
Ellipseслева сверху200x200
Lineслева сверху400x20

Эти значения нужны как стартовая раскладка. Пользователь может потом двигать и менять слой в редакторе.

Когда выбирать auto:

  • вы хотите получить стандартное размещение индикатора;
  • вам не важна точная позиция;
  • вы делаете очень короткий шаблон, как встроенный video.vttp;
  • вы доверяете индикатору подобрать удобное место.

Когда не выбирать auto:

  • нужно точно контролировать композицию;
  • несколько слоёв должны стоять симметрично;
  • шаблон должен одинаково выглядеть на разных проектах;
  • вы хотите задать конкретный процент ширины и высоты.

Важно: через .vttp нельзя настроить внутренние отступы auto. В шаблоне можно только выбрать preset: "auto". Если нужны свои координаты, используйте proportional.

fill

fill выглядит так:

{
  "maket": { "preset": "fill" }
}

Он делает простую вещь:

  • x = 0;
  • y = 0;
  • ширина равна ширине родителя;
  • высота равна высоте родителя.

Для верхнего слоя это значит: слой займёт весь холст Mixel'а. Для слоя внутри группы это значит: слой займёт всю группу.

Хорошие сценарии:

  • основное видео на весь Mixel;
  • карта на весь Mixel для GPX-only проекта;
  • фоновый прямоугольник внутри группы;
  • thumbnail-шаблон, где нужен один слой на всю миниатюру.

Пример:

{
  "name": "com.velitask.plagin.official.video",
  "data": {
    "maket": { "preset": "fill" }
  }
}

Если вы хотите оставить поля по краям, fill не подойдёт. Используйте proportional, например x=0.03, y=0.03, w=0.94, h=0.94.

proportional

proportional выглядит так:

{
  "maket": {
    "preset": "proportional",
    "x": 0.10,
    "y": 0.20,
    "w": 0.30,
    "h": 0.40
  }
}

Поля означают:

ПолеЗначениеФормула
xотступ слева как доля ширины родителяparentWidth * x
yотступ сверху как доля высоты родителяparentHeight * y
wширина слоя как доля ширины родителяparentWidth * w
hвысота слоя как доля высоты родителяparentHeight * h

Значения обычно задаются от 0.0 до 1.0.

ЗначениеЧто значит
0.00%
0.055%
0.2525%
0.550%
1.0100%

Velitask не ограничивает эти числа жёстко. Отрицательные значения или значения больше 1.0 могут вынести слой за пределы родителя. Иногда это полезно для художественного выхода за край, но чаще это ошибка.

Если поля пропущены, применяются значения по умолчанию:

ПолеЗначение по умолчанию
x0.0
y0.0
w1.0
h1.0

То есть такой JSON:

{
  "maket": { "preset": "proportional" }
}

эквивалентен слою на весь родитель:

{
  "maket": {
    "preset": "proportional",
    "x": 0.0,
    "y": 0.0,
    "w": 1.0,
    "h": 1.0
  }
}

Для полного заполнения всё равно лучше использовать fill: так шаблон короче и понятнее.

Готовые формулы

Правый верхний угол

Слой занимает 22% ширины, 30% высоты и имеет отступ 5% сверху и 5% справа:

{
  "maket": {
    "preset": "proportional",
    "x": 0.73,
    "y": 0.05,
    "w": 0.22,
    "h": 0.30
  }
}

Почему x = 0.73: 1.0 - 0.05 - 0.22 = 0.73.

Левый нижний угол

Слой занимает 34% ширины, 32% высоты и имеет отступ 4% слева и 5% снизу:

{
  "maket": {
    "preset": "proportional",
    "x": 0.04,
    "y": 0.63,
    "w": 0.34,
    "h": 0.32
  }
}

Почему y = 0.63: 1.0 - 0.05 - 0.32 = 0.63.

Центр

Слой занимает 40% ширины и 25% высоты, стоит по центру:

{
  "maket": {
    "preset": "proportional",
    "x": 0.30,
    "y": 0.375,
    "w": 0.40,
    "h": 0.25
  }
}

Формулы:

  • x = (1.0 - w) / 2;
  • y = (1.0 - h) / 2.

Нижняя плашка на всю ширину

{
  "maket": {
    "preset": "proportional",
    "x": 0.0,
    "y": 0.88,
    "w": 1.0,
    "h": 0.12
  }
}

Так удобно делать нижнюю информационную панель.

Карта с полями

{
  "maket": {
    "preset": "proportional",
    "x": 0.03,
    "y": 0.56,
    "w": 0.34,
    "h": 0.39
  }
}

Подходит для карты в левом нижнем углу с небольшим отступом от краёв.

Небольшой выход за край

{
  "maket": {
    "preset": "proportional",
    "x": -0.02,
    "y": -0.02,
    "w": 1.04,
    "h": 1.04
  }
}

Так можно слегка увеличить фон или карту, чтобы избежать тонкой пустой полосы по краю. Используйте осторожно: часть слоя окажется за пределами холста.

maket, size и positionInParent

В обычном сохранении Mixel может хранить точные пиксельные поля:

{
  "size": { "...": "..." },
  "positionInParent": { "...": "..." }
}

Для шаблонов это менее удобно: пиксели зависят от конкретного разрешения.

В .vttp лучше использовать:

{
  "maket": {
    "preset": "proportional",
    "x": 0.70,
    "y": 0.06,
    "w": 0.25,
    "h": 0.30
  }
}

Если maket есть, он рассчитывает размер и позицию заново. Если maket нет, Velitask пробует использовать size и positionInParent.

Что происходит при смене размера Mixel'а

Когда размер холста Mixel'а меняется, Velitask заново применяет макеты верхних слоёв:

  • fill снова растягивается на весь холст;
  • proportional пересчитывается по новым ширине и высоте;
  • auto снова применяет стандартное размещение индикатора.

Поэтому proportional хорошо подходит для шаблонов, которые должны жить в 16:9, 1:1, 9:16 или 4K.

Как Velitask экспортирует maket

Когда вы экспортируете текущий Mixel как шаблон, Velitask сохраняет слой в template-режиме.

Если у слоя уже есть активный maket, сохраняется его preset:

  • auto сохранится как { "preset": "auto" };
  • fill сохранится как { "preset": "fill" };
  • proportional сохранится с рассчитанными x, y, w, h.

Если у слоя нет активного maket, Velitask по умолчанию сохраняет его как proportional: берёт текущие пиксельные координаты слоя и делит их на размер родителя.

Практический совет: если после экспорта шаблона вы хотите точно контролировать место слоя, откройте .vttp и проверьте, что у нужных слоёв стоит preset: "proportional" с понятными x, y, w, h.

Как выбрать подходящий preset

ЗадачаЛучше выбрать
Видео или карта на весь холстfill
Фоновый слой внутри группыfill
Быстро поставить индикатор в его стандартное местоauto
Сделать аккуратную переносимую раскладкуproportional
Сохранить отступ справа или снизу в процентахproportional
Сделать одинаковую композицию для 1080p и 4Kproportional
Повторить встроенный default-шаблон Velitaskauto и fill

Частые ошибки

ОшибкаЧто произойдётКак исправить
preset написан с ошибкоймакет не применится как ожидаетсяиспользуйте только auto, fill, proportional
Для proportional забыли w и hслой займёт 100% ширины и высотызадайте нужные w и h
x + w больше 1.0слой выйдет за правый крайуменьшите x или w
y + h больше 1.0слой выйдет за нижний крайуменьшите y или h
Использован auto, но нужен точный результатпозиция зависит от индикаторазамените на proportional
В .vttp оставлены только пиксельные size и positionInParentшаблон хуже переносится между разрешениямизамените на maket

Проверка макета

  1. Сделайте копию .vttp.
  2. Измените maket только у одного слоя.
  3. Примените шаблон к тестовому источнику.
  4. Проверьте слой на обычном размере Mixel'а.
  5. Измените размер Mixel'а или экспортное разрешение и проверьте ещё раз.
  6. Убедитесь, что слой не выходит за края и не перекрывает важные элементы.

Связанные разделы

Индикаторы и плагины

Индикатор — это «виджет» поверх видео: спидометр, текст скорости, мини-карта, график уклона. Все индикаторы поставляются плагинами; стандартный набор уже встроен, дополнительные можно установить отдельно.

Зачем это нужно

Велитаск-видео обычно состоит из самой картинки с камеры и набора накладок с цифрами и графикой: чтобы зритель видел скорость, уклон, дистанцию, текущую точку на карте. Эти накладки в Velitask называются индикаторами.

Индикаторы — расширяемая часть. Стандартный набор покрывает типичный велозаезд / трекинг, а дальше — плагины: индикаторы для парапланов, лодок, авто, кастомные графики и т.д.

Что такое плагин

Плагин — это модуль, который привозит с собой:

  • Индикаторы (новые типы слоёв в Mixel'е).
  • Иногда — фигуры, шрифты, иконки.
  • Свою локализацию.

Плагин не меняет ядро приложения, не лезет в БД проекта и не заменяет существующие индикаторы — он только добавляет новое в каталог.

Где видно индикаторы

МестоЧто вы там делаете
Вкладка Indicators (левая панель)Видите список всех доступных индикаторов и категории. Перетаскиваете нужный на холст Mixel'а.
Холст Mixel'а в плеереКаждый индикатор отображается как слой.
Список слоёв на вкладке LayersВсе индикаторы перечислены по порядку отрисовки.
Правая панель свойствКогда выбран слой-индикатор, видны его параметры (источник, размер, шрифт, цвет).

Стандартный набор (плагин Velitask)

ИндикаторЧто показывает
Videoкадр видео-источника.
GeoMapмини-карта OSM с треком и маркером.
Speed (текст / спидометр)скорость.
Distanceдистанция.
Slope (текст / график)уклон.
Wattmeterмощность в Вт.
Timeчасы и дата.
Compassнаправление.
Rectangle / Ellipse / Line / SVGпользовательские фигуры — фон, рамка, разделители, любые векторные элементы.

Список может расти от версии к версии — заглядывайте на вкладку Indicators после обновления.

Установка дополнительных плагинов

В текущей версии Velitask плагины поставляются как отдельные .jar-файлы. Установка:

  1. Закройте Velitask.
  2. Положите .jar в папку плагинов: %USERPROFILE%\.velitask\plugins\ (создайте папку, если её нет).
  3. Запустите Velitask. Новый индикатор появится во вкладке Indicators.

Если плагин не появился — проверьте лог приложения (%USERPROFILE%\.velitask\logs\velitask.log): там видно, удалось ли загрузить файл.

Скины индикаторов

Скин — это именованный набор настроек оформления индикатора (цвета, толщина обводки, прозрачность, шрифт, форма), который применяется одним кликом. Скин избавляет от необходимости каждый раз выкручивать десяток ползунков, чтобы индикатор «выглядел красиво».

Какие скины бывают

В Velitask три источника скинов для одного и того же индикатора:

ИсточникКто задаётГде видно
Встроенныеавтор индикатора (плагин)сразу при добавлении индикатора, в подменю «Скин».
Пользовательскиевы — сохраняете свой набор настроекв подменю «Скин», ниже встроенных.
Импортированныепривезены из .vtskin-файла (свой или поделились)там же, в подменю «Скин».

Например, у индикатора Video есть встроенные скины «framed» (с белой рамкой) и «rounded» (со скруглёнными углами без рамки). У спидометра — «Default», «Night», «Racing».

Скин по умолчанию — применяется автоматически

При добавлении нового слоя в Mixel Velitask автоматически применяет первый встроенный скин. То есть:

  • Когда вы перетаскиваете индикатор Video на холст — его параметры сразу настроены как в скине «framed»: opacity 100, белая рамка, без скругления.
  • Когда вы перетаскиваете Speedometer — параметры из скина «Default» (фирменные цвета).

Это нужно, чтобы индикатор сразу был похож на «нормальный», а не на сырую техническую заглушку. Дальше вы можете либо оставить как есть, либо переключиться на другой скин, либо начать руками подкручивать отдельные свойства.

При открытии существующего проекта выбранные ранее скины индикаторов сохраняются.

Как сменить скин

  1. Откройте Mixel.
  2. На вкладке Layers правой кнопкой щёлкните по слою-индикатору.
  3. В контекстном меню выберите подменю «Скин».
  4. Кликните по нужному варианту — его настройки сразу применятся к слою.

После применения скина все «визуальные» свойства индикатора (Цвет, Толщина обводки, Прозрачность и т.п.) обновляются. «Невизуальные» свойства не трогаются: если у вас был привязан конкретный сенсор-источник или включено фоновое аудио — это останется как было.

Сохранение собственного скина

Если вы накрутили хорошую комбинацию настроек и хотите её повторно использовать:

  1. Правый клик на слое → СкинСохранить в скин….
  2. Выберите файл .vtskin (новый или существующий — добавится в него) и подтвердите.
  3. Введите имя скина — например, «Мой ночной» или «Для зимних видео».

После этого ваш скин появляется в подменю «Скин» — и доступен ровно так же, как встроенные.

Файлы .vtskin

.vtskin — это маленький JSON-файл, в котором хранится один или несколько ваших скинов для разных индикаторов. Что в нём удобно:

  • Перенос между проектами. Скопируйте .vtskin в папку другого проекта — Velitask найдёт его и покажет в меню «Скин» соответствующих индикаторов.
  • Делиться с коллегами. Файл можно отправить, и у получателя в его проекте появятся ваши скины.
  • Один файл — много индикаторов. Один .vtskin может хранить, например, скины спидометра, компаса и графика уклона — целый «комплект» под один стиль видео.

Velitask ищет .vtskin в папке проекта (рекурсивно). Никаких глобальных мест — каждый проект использует свой набор файлов.

Что хранится в скине

Что попадает в скинЧто НЕ попадает
Цвета (заливка, обводка, текст)Источник данных (какой сенсор показывает индикатор)
ПрозрачностьРазмер и положение слоя
Толщина обводки, радиус скругленияПривязка к Профилю устройства
Шрифт и его размерАудио-настройки видеослоя
Шаблон отображения (форматы текста)
Параметры графика (масштаб, толщина линии)

Логика простая: скин — это про оформление, не про данные. Поэтому, переключив скин у спидометра, вы не потеряете привязку к GPX-источнику; перенеся .vtskin в новый проект, вы не утянете туда чужие источники.

Когда меню «Скин» не появляется

Подменю «Скин» в контекстном меню видно только у тех индикаторов, чей автор объявил для них скины (в плагине). У некоторых стандартных и пользовательских индикаторов скинов может не быть — тогда подменю просто скрыто. Это нормально.

Связанные разделы

Импорт видеофайлов

Velitask читает видео через FFmpeg, поэтому понимает практически любой формат с экшен-камер и смартфонов: MP4, MOV, AVI, MKV, WebM и другие. Импорт — перетаскивание файла в окно или меню File → Import.

Зачем это нужно

Видео — основа большинства проектов. Все индикаторы и графики накладываются именно на него. Velitask должен «увидеть» видео, прочитать длительность, разрешение, fps и (если есть) дату съёмки в метаданных.

Какие файлы понимает Velitask

Под капотом работает FFmpeg, поэтому список форматов очень широкий:

КонтейнерыКодеки видеоКодеки аудио
MP4, MOV, AVI, MKV, WebM, FLV, MPEG, TS, M4VH.264, H.265 (HEVC), VP8, VP9, ProRes, DNxHD, MJPEG, MPEG-2AAC, MP3, AC-3, Opus, Vorbis, PCM

Даже редкие форматы вроде .MTS (AVCHD) или .gp обычно открываются. Если что-то не открывается — это, как правило, повреждённый файл; запасной вариант — пересохранить через любой видеоредактор и попробовать снова.

Как добавить видео в проект

Способ 1. Перетаскивание (drag-and-drop)

  1. Откройте окно проводника с нужным файлом.
  2. Перетащите .mp4 (или другой видео-файл) прямо в окно Velitask — на дерево источников или на холст плеера.
  3. В дереве появится узел Video → имя-файла. Velitask начнёт фоновое чтение метаданных (вкладка Tasks).

Способ 2. Через меню

  1. File → Import…
  2. В диалоге выберите видео-файл.
  3. Velitask добавит его в проект так же, как при перетаскивании.

Способ 3. Несколько файлов сразу

Перетащите сразу несколько файлов — Velitask добавит каждый отдельным источником.

Что происходит после импорта

  1. Чтение метаданных. Длительность, разрешение, fps, кодек, дата съёмки (если в файле есть EXIF/метаданные).
  2. Создание Профиля устройства. Velitask добавляет в дерево Профилей новый или подвязывает к существующему по подсказкам в имени файла (например, серия камеры). Часовой пояс по умолчанию — Профиля родительской папки.
  3. Подготовка кадрового кеша. Превью кадров вычитываются по запросу при перемотке таймлайна. Долгое предварительное декодирование не запускается — это экономит время и место.

Сам файл при импорте не копируется в папку проекта: Velitask хранит ссылку на исходный путь. Поэтому не передвигайте/не удаляйте видео, пока работаете с проектом.

Где видео в Mixel'е

После импорта оно ещё не на холсте — вам нужно положить его как слой:

  1. Откройте вкладку Indicators, найдите индикатор Video.
  2. Перетащите его на холст.
  3. В свойствах слоя укажите ваш видеоисточник.

Подробнее — в разделе Редактор Mixel'а.

Звук

Аудио-дорожка читается, доступна в плеере (если включена) и попадает в экспорт. По умолчанию — копирование звука без перекодирования; в настройках экспорта можно перекодировать в AAC.

Связанные разделы

Решение проблем

  • Файл не открылся, в логе FFmpeg-ошибка. Скорее всего файл повреждён или это поток без заголовка. Пересохраните файл в любом видеоредакторе и попробуйте снова.
  • Velitask не видит дату съёмки. Не во всех файлах есть метаданные с датой. Если её нет, Velitask ставит дату изменения файла; вам нужно вручную задать корректное время через Профиль устройства.
  • «Длительность 0 сек». Файл импортирован, но плеер показывает пустой таймлайн. Это бывает с файлами без правильного индекса. Помогает пересохранение в любом видеоредакторе.

Импорт GPS-треков (GPX)

GPX-файлы Velitask читает напрямую: трек превращается в набор сенсоров — Geo (координаты), Distance, Elevation, Speed, Slope. Импорт — перетаскиванием или через меню. Большие треки импортируются в фоне.

Зачем это нужно

GPS-трек — главный источник «цифр» для типичного проекта: скорость, дистанция, координаты для мини-карты, высота, уклон. Все индикаторы поверх видео обычно работают именно от GPX.

Что Velitask делает с GPX

После импорта одного .gpx Velitask автоматически создаёт несколько сенсоров — отдельных каналов данных:

СенсорЧто внутриОткуда берётся
Geoширота, долготапрямо из точек GPX.
Distanceпройденное расстояние от стартавычисляется по координатам.
Elevationвысота над уровнем моряиз тегов <ele> GPX.
Speedскоростьвычисляется из дистанции и времени.
Slopeуклонвычисляется из высоты и дистанции.

Если в GPX есть дополнительные поля (мощность от велокомпьютера, каденс, частота пульса), они попадут в свои сенсоры — Watt, Cadence, Pulse, Meteo и т.п.

Импорт

Способ 1. Drag-and-drop

Перетащите .gpx в окно Velitask — на дерево источников или прямо в холст. Velitask распознаёт расширение и сразу запускает импорт.

Способ 2. Через меню

File → Import… → выберите .gpx.

Что происходит дальше

  1. В дереве появится узел GPX → ваш-трек.gpx. Внутри него — список сенсоров (Geo, Distance, Elevation, Speed, Slope, …).
  2. На вкладке Tasks виден прогресс. Очень крупные треки (десятки тысяч точек) импортируются заметно дольше.
  3. По завершении сенсоры доступны для привязки к индикаторам Mixel'а.

Время в GPX

Стандарт GPX рекомендует UTC. Большинство устройств так и пишут — Velitask ничего не меняет, кладёт время как есть.

При импорте Velitask создаёт Профиль устройства для GPX-источника. По умолчанию он наследует Профиль родительской папки, но в большинстве случаев правильный Профиль для GPX — UTC, смещение 0. Подробнее — Модель времени и Синхронизация времени.

Если GPX «не той длительности»

GPX — это последовательность точек с временными метками. Если первая точка имеет время T0, последняя — T1, то длительность сенсора будет T1 − T0. Это не привязано к длительности видео: один трек может покрывать несколько видеоклипов или, наоборот, быть короче ролика.

После импорта вы расставляете слои с этими сенсорами; Velitask автоматически показывает значения только в той части таймлайна, где трек существует.

Несколько треков в одном проекте

Можно импортировать несколько GPX в один проект: каждый станет своим источником. Это удобно, когда вы записываете трек на нескольких устройствах одновременно (часы + велокомпьютер) или хотите сравнить треки.

При создании слоя-индикатора вы выбираете, из какого именно GPX-источника брать данные.

Связанные разделы

Решение проблем

  • GPX импортировался, но Speed везде нули. Точки идут с одинаковым временем (или времени нет вовсе). Velitask ничего не может вычислить. Нужен другой источник трека.
  • Высоты нет, графика нет. Не во всех GPX пишут <ele>. Уклон тоже посчитать не из чего.
  • Импорт идёт очень долго. Это нормально для больших треков — точек могут быть десятки тысяч. Смотрите прогресс на вкладке Tasks.
  • Точки трека «съезжают» во времени. Это вопрос Профиля устройства, не самого импорта — см. Синхронизация времени.

Сенсорная телеметрия

Сенсор — это один канал измерений, привязанный к источнику: скорость, дистанция, мощность, координаты, температура. Сенсоры хранятся в БД проекта как последовательности «атомов» (точек с временной меткой).

Зачем это нужно

Любой индикатор на холсте Mixel'а работает с данными — берёт их из сенсора. Чтобы понять, какой индикатор что покажет и где взять цифры, полезно представлять, как устроены сенсоры.

Что такое сенсор и атом

ПонятиеЧто значит
Сенсородин канал данных у одного источника. Например, «скорость от GPX-трека morning-ride» или «мощность от велокомпьютера».
Атом сенсораодна точка измерения: метка времени + значение(я). Атомы упорядочены по времени и образуют сенсорную последовательность.
Тип сенсораопределяет, какие именно поля у атома. Например, у Geo-атома — lat, lon; у Watt-атома — voltage, amperage.

Один источник может содержать несколько сенсоров разных типов. Из одного GPX это типично: Geo + Distance + Elevation + Speed + Slope.

Откуда берутся сенсоры

ИсточникКакие сенсоры из него рождаются
GPX-трекGeo, Distance, Elevation, Speed, Slope; иногда Watt, Cadence, Pulse, Meteo (из дополнительных полей GPX).
Видеоспециальных сенсоров не создаёт — сами кадры это «сенсор» только условно.
Внешние логгеры (CSV, FIT — будущая поддержка)по типам полей в файле.

Подробнее про типы — в Каталог сенсоров.

Как сенсоры видны в проекте

  1. Откройте дерево источников (вкладка Project).
  2. Разверните любой источник — увидите список его сенсоров.
  3. Двойной клик по сенсору открывает Редактор БД для этого сенсора (см. Редактор БД).

Хранение

  • Все атомы сохраняются в базу проекта. Это локальный файл — никаких облаков, никаких сетевых обращений.
  • Большие треки могут давать десятки и сотни тысяч атомов. База справляется без проблем; для просмотра в Редакторе БД используется страничный показ.

«Сырое» и обработанное значение

Velitask не «причёсывает» сенсорные данные за вас. Что записано — то и хранится. Если в GPX-треке есть выбросы скорости (например, 200 км/ч на велосипеде из-за GPS-сбоя), они попадут в сенсор как есть, и индикатор тоже их покажет.

Что можно с этим сделать:

  • Отредактировать атомы вручную через Редактор БД — заменить, удалить пиковые значения.
  • Использовать Редактор атома сенсора, чтобы увидеть, как одна точка влияет на индикатор.

Сенсор и время

Каждый атом несёт своё «сырое» время устройства. Через Профиль устройства оно превращается в UTC и попадает на общий таймлайн Mixel'а. Поэтому правильный Профиль — это не «формальность», а основа корректной синхронизации.

Связанные разделы

OSM-тайлы

Velitask показывает мини-карту через OpenStreetMap (OSM). Тайлы (квадратные кусочки карты) скачиваются по мере необходимости и кешируются на диск, поэтому повторный просмотр того же региона работает оффлайн.

Зачем это нужно

Мини-карта с маркером текущей позиции и треком — один из главных индикаторов в видео велозаездов и поездок. Velitask берёт картинку карты с серверов OpenStreetMap. Чтобы это было быстро, не зависело от интернета на этапе экспорта и не било по серверам OSM при каждом кадре, тайлы кешируются локально.

Как это работает

  1. Когда индикатор GeoMap оказывается в Mixel'е, он определяет нужный регион и масштаб.
  2. Карта разрезается на квадратные тайлы (256×256 пикселей).
  3. Velitask проверяет, есть ли каждый тайл в локальном кеше:
    • Есть — берёт оттуда (мгновенно).
    • Нет — скачивает с сервера OSM в фоне и кладёт в кеш. Для уже отрисованного места используется заглушка / предыдущий уровень.

Где лежит кеш

%USERPROFILE%\.velitask\osm-cache\

Структура — стандартная для OSM (по уровню масштаба и координатам тайла). Кеш не очищается автоматически: со временем папка может разрастись до сотен мегабайт или гигабайт, если вы много путешествовали по разным регионам в проектах.

Удалить кеш безопасно — Velitask просто заново скачает нужные тайлы. На результаты в проектах это никак не повлияет.

Оффлайн-работа

Если вы один раз отрисовали карту нужного региона на нужных масштабах, дальше она доступна оффлайн. Полезный приём перед поездкой без интернета:

  1. Импортируйте GPX заранее.
  2. Поставьте индикатор GeoMap в Mixel.
  3. Прокрутите весь таймлайн на нужном масштабе — Velitask загрузит все тайлы по треку.
  4. Дальше можно работать без сети.

Лимиты OSM-серверов

Серверы OpenStreetMap.org — публичные и бесплатные, но имеют политику честного использования: десятки одновременных запросов с одного IP могут привести к временному блокированию. Velitask старается это уважать: ограничивает число параллельных загрузок, кеширует, не качает повторно.

Если вы планируете очень интенсивную работу с картами, источник тайлов можно сменить в настройках карты.

Что показывается на карте

Сама карта — это просто фон. Поверх неё индикатор GeoMap рисует:

  • Трек — линия по точкам Geo-сенсора.
  • Маркер текущей позиции — на месте, соответствующем UTC-времени курсора в Mixel'е.
  • (Опционально) направление, информацию о текущей точке — в зависимости от настроек индикатора.

Связанные разделы

Решение проблем

  • Карта серая, тайлы не грузятся. Проверьте интернет. Если за прокси — Velitask не имеет встроенной настройки прокси, придётся полагаться на системную.
  • Карта работает, но в одном месте «дырка». Пробит кеш для этих тайлов — удалите соответствующую подпапку в osm-cache или просто весь кеш.
  • Кеш занимает много места. Это нормально для активных пользователей. Удалите всю папку osm-cache — Velitask пересоздаст по мере надобности.
  • Тайлы выглядят размыто. Вы смотрите карту на масштабе, для которого не подгружен подходящий уровень тайлов. Прокрутите/поменяйте масштаб — Velitask догрузит нужные.

Панель источников

Левая вкладка Project — это дерево всех источников и сенсоров проекта. Здесь добавляют, удаляют, группируют, переименовывают данные. Двойной клик по узлу открывает соответствующий редактор.

Зачем это нужно

Все данные проекта (видео, GPX, картинки) Velitask хранит как источники в одном дереве. Из этого дерева вы:

  • видите всё, что есть в проекте, в одном месте;
  • группируете источники по папкам — например, по дням поездки;
  • быстро открываете данные для просмотра и редактирования;
  • перетаскиваете источники прямо в Mixel'е, чтобы создать слой.

Как устроено дерево

Узлы дерева:

Тип узлаЧто значит
Корень проектаНевидимая верхушка. Все остальные узлы — её дети.
Папка (Folder)Произвольный группирующий узел. Может содержать другие папки или источники.
Источник видеоОдин видео-файл и связанные с ним метаданные.
Источник GPXОдин GPX-файл, разворачивается в набор сенсоров.
Источник изображенияКартинка (PNG/JPG/...).
СенсорПодузел источника, развёрнутый список — Geo, Speed, Distance, …

У узлов есть собственная иконка по типу.

Что можно делать в дереве

ДействиеКак
Добавить источникПеретащите файл в окно или меню File → Import…
Создать папкуКонтекстное меню на узле → «Создать папку»
ПереименоватьF2 на выделенном узле или контекстное меню
ПереместитьПеретащите узел внутри дерева
УдалитьКонтекстное меню → «Удалить» (источник удаляется из проекта; исходный файл остаётся на диске)
Открыть в редактореДвойной клик
Положить в MixelПеретащите узел на холст плеера

Карточки и подсказки

Для источников показываются дополнительные индикаторы:

  • Галочка/иконка статуса импорта (есть ли уже сенсорные данные в БД).
  • Прогресс-индикатор для источников, которые сейчас импортируются.
  • Иконка Профиля устройства, привязанного к источнику.

Контекстное меню источника

Правый клик по источнику открывает меню с типичными действиями:

  • Открыть — двойной клик аналог.
  • Переименовать.
  • Привязать Профиль устройства… — выбрать или создать Профиль времени.
  • Создать слой в Mixel'е — быстро вставить как слой.
  • Показать в БД — открыть Редактор БД для сенсорных источников.
  • Удалить — убрать из проекта.

Связанные разделы

Синхронизация времени

Чтобы цифры в индикаторах совпадали с тем, что происходит на видео, у каждого источника должен быть правильный Профиль устройства. Этот раздел — практика: куда смотреть, как править, как проверять.

Зачем это нужно

Если индикатор скорости показывает «37 км/ч», а на видео человек стоит — значит сдвинуто время одного из источников. Velitask живёт в едином UTC, но «правильность» этого UTC зависит от того, насколько корректны Профили устройств, через которые сырое время приводится к UTC.

См. Модель времени для теории.

Где и что настраивать

Все Профили — на вкладке Devices в левой панели. Каждый Профиль — отдельная карточка.

ПолеЧто задавать
Названиечеловекочитаемое, чтобы отличать «GoPro» от «Garmin».
Тип источникав большинстве случаев не трогать, Velitask определяет автоматически.
Часовой пояс (Time zone)в каком часовом поясе шли часы устройства во время записи.
Смещение, сек.если часы спешили/отставали — на сколько (положительное = часы спешили).

Типичные конфигурации

Видео с экшен-камеры

Камеры пишут локальное время по своим внутренним часам. Спрашивайте себя:

  • На какой часовой пояс камера была настроена? — это значение в поле tz.
  • Били часы на сколько-то секунд? — это смещение.

Проверка: возьмите кадр с привязкой к чему-то объективному (старт по сигналу, проезд через известную точку), сравните с тем же моментом из GPX. Несовпадение в секундах → крутите смещение. Несовпадение в часах → крутите часовой пояс.

GPX-трек

В подавляющем большинстве — UTC, смещение 0. Не трогайте, если не уверены, что устройство пишет иначе.

Несколько источников от одного устройства

Если у вас три ролика с одной GoPro, удобно один Профиль «GoPro Hero 11» назначить всем трём — через папку родителя. Тогда правка Профиля в одной карточке коснётся всех роликов.

Сценарий синхронизации

  1. Импортируйте видео и GPX (см. Первый проект).
  2. Откройте Devices. Velitask автоматически создал по Профилю на каждый источник.
  3. Для GPX оставьте UTC, смещение 0.
  4. Для видео:
    • Поставьте часовой пояс камеры (тот, в котором стояли её часы при съёмке).
    • Смещение пока 0.
  5. Положите в Mixel слои Video и Speed (текст) (со скоростью из GPX-сенсора).
  6. Найдите момент, когда вы можете точно сравнить: на видео виден стоп, спидометр на GPX тоже падает в ноль.
  7. Если стоп на видео и ноль скорости в GPX расходятся на N секунд — впишите N в смещение Профиля видео. Знак: если видео «опаздывает» по сравнению с GPX, смещение положительное.
  8. Подтвердите изменение и проверьте ещё раз. При необходимости подправьте.

Групповая синхронизация

Когда настроен Профиль одной камеры — скопируйте его на остальные камеры этой же модели через привязку к общей папке.

Проверка после правки

  • Сместить курсор на разные участки таймлайна — убедиться, что цифры идут в ногу с видео.
  • На длинных треках обычно достаточно проверить начало и конец. Если в обеих точках совпадает, в середине почти всегда тоже.

Связанные разделы

Решение проблем

  • Сдвиг ровно час (или N часов). Это часовой пояс. Камера была на другом часовом поясе, чем вы выставили в Профиле. Поставьте правильный часовой пояс, смещение оставьте 0.
  • Сдвиг произвольное число секунд. Часы устройства неточные. Подгоняйте смещение.
  • Сдвиг разный в разных частях видео. Скорее всего, во время съёмки часы заметно «плыли» — типично для старых камер. Полностью устранить эту проблему через Профиль не получится; либо использовать только часть видео, либо принять погрешность.
  • GPX и видео идеально совпадают на старте, но в конце расходятся. Тот же случай — дрейф часов. Особенно у дешёвых GPS, где время не подтягивается к спутникам.

Редактор Mixel'а

Mixel — главный редактор композиции. Здесь вы добавляете слои, привязываете их к источникам, двигаете и масштабируете, проигрываете и проверяете результат.

Зачем это нужно

Все, что попадёт в финальное видео, проходит через Mixel: видеослой снизу, индикаторы поверх. Редактор Mixel'а — это не отдельное окно, а сам центральный плеер Velitask: то, что вы видите при запуске, и есть он.

Главные элементы

ЭлементЧто делает
Холст в центрепрямоугольник с заданным разрешением. На нём собирается итоговая картинка.
Таймлайн под холстомтекущая UTC-позиция. Перетаскивается мышью, прокручивается колесом.
Кнопки воспроизведения▶/⏸, ⏮/⏭ (старт/конец), ⬅/➡ (предыдущий/следующий кадр).
Список слоёв на вкладке Layersиерархия. Сверху списка — поверх в кадре.
Свойства слоя в правой панелипараметры выделенного слоя.
Каталог индикаторов на вкладке Indicatorsто, что можно положить в Mixel.

Добавление слоя

Из каталога индикаторов

  1. Откройте вкладку Indicators.
  2. Найдите нужный индикатор (например, Speed text).
  3. Перетащите его на холст или в список Layers.
  4. Velitask создаст слой и откроет его свойства справа.

Из дерева источников

  1. Откройте вкладку Project.
  2. Перетащите видео или сенсор прямо на холст.
  3. Velitask сам выберет подходящий тип индикатора (для видео — Video, для скорости — Speed text и т.д.) и сразу свяжет его с источником.

Через контекстное меню

Правый клик по холсту или по списку слоёв → «Добавить…» → выбрать индикатор.

Привязка к источнику

Слою-индикатору обычно нужен сенсор источника. Это поле показывается в свойствах. Для большинства типов:

  • Один индикатор — один сенсор. Например, Speed text связан с одним сенсором скорости.
  • Некоторые индикаторы могут принимать несколько сенсоров (например, GeoMap + трек + опционально маркер).

Если источник не задан, индикатор показывает заглушку или «—».

Перемещение и масштабирование

В свойствах слоя — координаты, ширина и высота. Способы:

  • Двигать прямо на холсте (drag-and-drop).
  • Менять размер за угловые / краевые маркеры.
  • Точно вводить значения в свойствах.
  • Включать привязку к якорям (ставить «к нижнему правому углу холста с отступом 24 px»).

Большинство величин задаётся либо в пикселях, либо в процентах от холста. Проценты удобны, если вы планируете экспортировать в разных разрешениях — слой автоматически масштабируется.

Группировка

Несколько слоёв можно объединить в Группу. Группа двигается и масштабируется как одно целое; внутри неё сохраняется относительное расположение. Полезно, чтобы держать вместе фон + текст + иконку — например, «карточку дистанции».

Скины слоя

Правый клик на слое-индикаторе → подменю «Скин» показывает встроенные и пользовательские варианты оформления. Один клик — и весь набор визуальных свойств (цвета, обводка, прозрачность) меняется одновременно. Подробнее — в Индикаторы и плагины → Скины индикаторов.

Слой видео

Видеослой особый: его кадр меняется в зависимости от текущего UTC-времени и Профиля устройства. На таймлайне вне диапазона видеоисточника слой показывает чёрный фон или пустоту (зависит от настройки).

Несколько видеослоёв можно положить рядом — например, картинка-в-картинке (PiP) или сравнение двух камер.

Сохранение

Mixel сохраняется как часть проекта. Все ваши перестановки, свойства слоёв, настройки индикаторов — пишутся в базу проекта. Отдельной кнопки «сохранить Mixel» нет: изменения сохраняются автоматически.

Если нужно переиспользовать композицию в других проектах, экспортируйте её как .vttp-шаблон через File → Export → Template.... Обычная работа в редакторе и JSON-шаблон описывают одну и ту же композицию: редактор меняет её визуально, а JSON — как структуру. Подробнее: Mixel JSON и шаблоны.

Связанные разделы

Редактор БД

Редактор БД — табличный просмотр сенсорных атомов проекта. Открывается на сенсоре, показывает строки с метками времени и значениями, позволяет навигироваться, фильтровать и редактировать.

Зачем это нужно

Большинство пользователей работают с сенсорами через индикаторы — не задумываются о том, что под капотом таблица. Но иногда нужно «заглянуть в данные»: проверить, что импорт не потерял точки; найти выброс скорости; убрать ошибочную запись; посмотреть, в какой момент времени GPX перешёл из движения в стоп.

Для всего этого есть Редактор БД — отдельный инструмент проекта.

Как открыть

  • Двойной клик по сенсору в дереве источников.
  • Контекстное меню сенсора → «Открыть в БД».
  • Меню Tools → Database Editor → выбрать сенсор.

Откроется окно/вкладка с таблицей.

Главные элементы окна

ЭлементЧто делает
Заголовокимя сенсора, его тип, общее число строк.
Таблица атомовстроки с колонками. У каждого типа сенсора — свой набор колонок.
Кнопки навигациив начало / в конец / следующая страница / предыдущая.
Фильтр (если применимо)по диапазону времени или диапазону значения.
Превью (в режиме редактора атома)мини-Mixel в текущей точке — см. Редактор атома сенсора.

Колонки таблицы

Колонки зависят от типа сенсора. Общие для всех:

КолонкаЧто показывает
IDвнутренний идентификатор атома (сквозная нумерация).
Indexпорядковый номер атома в сенсоре.
TimeUTC-время атома.
Durationсколько действует значение до следующего атома (если применимо).

Дополнительные — по типу:

Тип сенсораДополнительные колонки
Geolat, lon
Wattмощность (Вт)
Speedvalue (м/с или км/ч в зависимости от настройки)
Distancevalue (м)
Slopevalue (%)
Cadencerpm
Elevationvalue (м)
Meteotemperature, humidity

Подробнее — Каталог сенсоров.

Что можно делать

ДействиеКак
Перейти на нужное времяввести UTC-время в фильтре или прокрутить таблицу.
Найти максимум/минимумотсортировать таблицу по колонке.
Удалить выбросвыделить строку → контекстное меню → Удалить.
Подправить значениедвойной клик по ячейке (для редактируемых полей).
Открыть превью атомадвойной клик по строке → откроется Sensor Row Editor.

Сохранение изменений

Изменения, сделанные в Редакторе БД, сохраняются автоматически в базу проекта. Откатить можно общим Undo проекта (если поддерживается версией) или вручную через повторное редактирование.

Внимание: удалённые атомы можно восстановить только повторным импортом исходного файла. Важные изменения делайте на копии проекта.

Связанные разделы

Редактор атома сенсора

Редактор атома сенсора показывает одну точку сенсора (одну строку из БД) рядом с превью Mixel'а в этот момент. Удобно, когда нужно понять, как именно одна точка влияет на индикаторы и видео.

Зачем это нужно

Просмотр в Редакторе БД показывает данные «в таблице». Но иногда хочется увидеть, что именно в это мгновение покажет Mixel. Например:

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

Редактор атома сенсора — это маленький Mixel-плеер, привязанный к выбранному атому.

Как открыть

  • Двойной клик по строке в Редакторе БД.
  • Из контекстного меню в БД-редакторе.

Откроется окно с двумя половинами:

  • Слева: форма с полями атома (Time, value, и т.д.).
  • Справа: превью Mixel'а в момент времени этого атома.

Что внутри

Левая половина — форма атома

  • Поля по типу сенсора (например, lat/lon для координат, значение мощности для Watt).
  • Поле времени time — UTC-метка.
  • Кнопки навигации ← Prev / Next → — переходят к соседнему по времени атому того же сенсора.
  • Кнопка Сохранить активна, если есть несохранённые изменения. Можно включить чекбокс Автосохранение — тогда правки сохраняются с задержкой автоматически.

Правая половина — превью Mixel'а

  • Холст с теми же слоями, что и в основном Mixel'е проекта (или с упрощённым набором — это зависит от настроек превью).
  • Слайдер времени — позволяет поиграть с положением курсора в окрестности атома.

«Скопировать главный Mixel»

В правой половине есть кнопка Скопировать главный миксель. Она заменяет превью Mixel'а на копию главного — полезно, если вы хотите видеть атом в контексте полной композиции, а не упрощённой превью-схемы.

Типичный сценарий

  1. В Редакторе БД нашли подозрительный атом (например, скорость 200 км/ч).
  2. Двойной клик → открыли его в Редакторе атома сенсора.
  3. В правом превью видите соответствующий кадр и индикаторы.
  4. Видите: на видео велосипед стоит, в индикаторе всё равно 200 км/ч — выброс GPS.
  5. Правите в форме слева значение, нажимаете «Сохранить» (или ждёте автосохранения).
  6. Превью обновляется, индикатор показывает корректную цифру.
  7. Стрелками ←/→ переходите к соседним атомам, проверяете окружение.

Связанные разделы

Экспорт видео

Готовый Mixel сохраняется в видеофайл через File → Export → Video…. Поддерживаются H.264 (MP4), QTRLE и ProRes (MOV). Все кадры рендерятся через FFmpeg в фоновой задаче.

Зачем это нужно

Финальный смысл проекта — получить файл, который можно отправить друзьям, выложить в YouTube или показать на телевизоре. Velitask собирает видеофайл из Mixel'а: видеослой + все индикаторы поверх него, плюс звук исходного видео.

Запуск экспорта

  1. Откройте проект и собранный Mixel.
  2. File → Export → Video…
  3. Появится диалог с настройками.
  4. Заполните параметры (см. ниже) и нажмите Start.
  5. Прогресс отобразится на вкладке Tasks. По завершении — готовый файл в указанной папке.

Параллельно можно работать в Velitask: экспорт идёт в фоне.

Параметры диалога

Диапазон

ПараметрЧто значит
StartUTC-время начала экспорта. По умолчанию — старт Mixel'а.
EndUTC-время окончания. По умолчанию — конец Mixel'а.
LengthПроизводное: End − Start.

Можно экспортировать только часть Mixel'а — например, один заезд из всего проекта.

Кодек и контейнер

КодекКонтейнерКогда выбирать
H.264MP4Самый универсальный. Открывается везде, размер маленький, потери визуально минимальны. Рекомендация по умолчанию.
QTRLEMOVБез потерь, но огромный размер. Используется как «мастер» для последующего монтажа.
ProResMOVПрофессиональный мастер-кодек, особенно популярный в среде Final Cut и DaVinci Resolve. Размер большой, качество высокое.

Разрешение и FPS

  • Resolution — пресеты (low / medium / high) или произвольное разрешение. Должно делиться на 2 для большинства кодеков.
  • FPS — кадров в секунду. Стандартные: 25, 30, 50, 60. Максимум обычно ограничивается fps исходного видео.

Чем выше разрешение и fps, тем дольше экспорт и больше файл.

Аудио

ОпцияЧто значит
CopyСкопировать звуковую дорожку из исходного видео без перекодирования. Самый быстрый и без потерь вариант.
AACПерекодировать в AAC. Полезно, если исходный звук в формате, который не понимает H.264-MP4.
NoneБез звука.

Как работает экспорт

  1. Velitask проходит по таймлайну от Start до End с шагом 1/fps.
  2. Для каждого кадра собирает Mixel: видеоисточники, индикаторы, фигуры — всё рисуется в одно изображение.
  3. Изображение передаётся выбранному кодеку (через FFmpeg).
  4. Звук берётся из исходного видеоисточника, при необходимости — перекодируется.
  5. Готовые кадры и звук пакуются в контейнер (MP4 или MOV).

Скорость экспорта зависит от:

  • Разрешения и fps.
  • Количества и сложности слоёв (особенно карты и графики).
  • Производительности CPU (декодирование и кодирование — программные).
  • Скорости диска (много чтения исходного видео и записи итогового файла).

Связанные разделы

Решение проблем

  • Экспорт «застрял» на N%. Откройте логи (%USERPROFILE%\.velitask\logs\velitask.log). Иногда FFmpeg споткнулся на повреждённом фрагменте исходного видео.
  • В файле нет звука. Проверьте, не выбрана ли опция «None» в Audio. Если выбран Copy, но всё равно нет звука — кодек звука исходного видео несовместим с MP4. Поставьте AAC.
  • Размер файла очень большой. Скорее всего вы выбрали QTRLE или ProRes. Это нормально — это мастер-кодеки. Для отправки/публикации используйте H.264-MP4.
  • Экспорт идёт слишком долго. Уменьшите разрешение или fps. Карты и графики — самые «тяжёлые» индикаторы; временно отключите их, если нужно быстро.

Экспорт изображения

Один кадр Mixel'а сохраняется как PNG или JPG через File → Export → Image…. Полезно для постеров, превью к видео и социальных сетей.

Зачем это нужно

Иногда не нужен видеофайл — нужна одна красивая картинка с наложенными индикаторами:

  • постер к видео для YouTube;
  • иллюстрация для блога;
  • кадр для отчёта или презентации;
  • быстрый «снимок» интересного момента.

Экспорт изображения делает именно это: рендерит Mixel в один момент времени и сохраняет в файл.

Как сделать

  1. Установите курсор таймлайна на нужный кадр.
  2. File → Export → Image…
  3. В диалоге укажите:
    • Файл — путь и имя выходного файла. Расширение определяет формат (.png / .jpg).
    • Resolution — оставить как у Mixel'а или указать своё.
  4. Нажмите Сохранить.

Файл создаётся мгновенно; фоновая задача в Tasks обычно не запускается, потому что объём работы маленький.

Форматы

ФорматКогда выбирать
PNGБез потерь. Лучше для скриншотов с текстом и графикой. Размер больше.
JPGС потерями. Лучше для фотореалистичных кадров. Размер меньше. Текст может слегка размазываться.

Связанные разделы

Пресеты экспорта видео

Пресет экспорта видео — это сохранённый набор параметров диалога File → Export → Video: кодек, разрешение, fps, аудио. Один раз настроили — пользуетесь во всех проектах.

Зачем это нужно

Параметры экспорта обычно одни и те же для многих видео: «H.264, 1080p60, AAC». Заново заполнять диалог каждый раз — лишняя работа. Пресет сохраняет эти параметры под именем и применяется одной кнопкой.

Не путайте пресеты экспорта с шаблонами Mixel'а. Пресет экспорта отвечает за то, как кодировать видеофайл. Шаблон Mixel'а отвечает за то, какие слои и индикаторы находятся в композиции. Подробнее о шаблонах композиции: Mixel JSON и шаблоны.

Как пользоваться

Как создать пресет

  1. Откройте диалог File → Export → Video…
  2. Настройте все параметры так, как вам нужно.
  3. В диалоге найдите кнопку Save preset (или иконку дискеты).
  4. Введите имя пресета: «YouTube 1080p», «Master ProRes», «Instagram 1:1».
  5. Подтвердите.

Пресет сохраняется в настройках Velitask и доступен из любого проекта.

Как применить пресет

  1. Откройте диалог экспорта.
  2. В верхней части выберите нужное значение в списке Preset.
  3. Все поля заполнятся согласно сохранённым параметрам.
  4. При необходимости подправьте настройки под конкретный экспорт, например диапазон.
  5. Нажмите Start.

Что входит в пресет

ПолеВключено в пресет
Кодек / контейнерда
Разрешениеда
FPSда
Битрейт / качествода
Аудио (Copy / AAC / None)да
Диапазон Start/Endнет — это всегда задаётся для конкретного экспорта.
Путь к выходному файлунет.

То есть пресет — про «как кодировать», а не «что экспортировать и куда сохранить файл».

Когда полезно держать несколько пресетов

ПресетПараметры
YouTube 1080pH.264, 1920×1080, 60fps, AAC.
Instagram squareH.264, 1080×1080, 30fps, AAC.
MasterProRes / QTRLE, исходное разрешение, исходный fps, Copy.
Quick previewH.264, 1280×720, 30fps, AAC, низкое качество — для быстрого превью.

Связанные разделы

Поддерживаемые форматы

Velitask читает практически любое видео через FFmpeg, GPS-треки в GPX, изображения в основных растровых форматах. На выход — H.264 в MP4, QTRLE и ProRes в MOV, изображения в PNG/JPG.

Видео — на вход

Под капотом FFmpeg — поэтому список очень широкий. Реальные ограничения только по повреждённым / необычным файлам.

Контейнеры

РасширениеКомментарий
.mp4, .m4vосновной формат экшен-камер.
.movApple-формат, типичен для iPhone и профессиональных камер.
.aviстарый формат, иногда встречается.
.mkvуниверсальный контейнер.
.webmвеб-видео (VP8/VP9).
.flvFlash-видео, изредка.
.mpeg, .mpg, .ts, .m2ts, .mtsTV/AVCHD форматы.

Видео-кодеки

H.264 (AVC), H.265 (HEVC), VP8, VP9, AV1 (если поддержан вашей FFmpeg-сборкой), ProRes, DNxHD, MJPEG, MPEG-2 — и десятки менее распространённых.

Аудио-кодеки

AAC, MP3, AC-3, Opus, Vorbis, PCM, FLAC.

Видео — на выход

Velitask кодирует через FFmpeg. Доступны:

КодекКонтейнерПрименение
H.264 / AVC.mp4универсальный, рекомендуется по умолчанию.
QTRLE.movбез потерь, но огромный размер. Master-копия.
ProRes 422.movмастер для пост-продакшна.

Аудио на выходе:

  • Copy — без перекодирования (быстро, без потерь).
  • AAC — стандарт MP4.

GPS-треки

ФорматЧтениеЗапись
GPX 1.0 / 1.1 (XML)да
FIT (Flexible and Interoperable Data Transfer — формат файлов спортивных трекеров: Garmin, Wahoo)планируется
TCX, KMLне поддерживаются

Дополнительные поля GPX от Garmin (мощность, каденс, пульс) — читаются.

Изображения

ФорматЧтение (источник)Запись (экспорт)
PNGдада
JPG / JPEGдада
GIFда
WebPда
BMPда
TIFFчерез FFmpeg

Карты

OpenStreetMap (тайлы 256×256). Альтернативные тайл-серверы — конфигурируются, но в стандартной поставке выбран только OSM.

Шаблоны Mixel'а

ФорматЧтениеЗаписьДля чего
.vttpдадашаблон Mixel'а: слои, индикаторы, размещение и свойства

.vttp можно применить вручную или положить в папку шаблонов, чтобы Velitask использовал его как default-композицию для новых источников. Подробнее — Mixel JSON и шаблоны.

Связанные разделы

Каталог сенсоров

Сенсоры — это каналы данных в проекте. Под каждый тип Velitask хранит свой набор полей. В этом разделе — все поддерживаемые типы с единицами измерения и тем, откуда они берутся.

Зачем это нужно

Когда вы выбираете «источник данных» для индикатора Mixel'а или фильтруете строки в Редакторе БД, вы видите тип сенсора. Этот раздел — справочник: чего ждать от каждого типа.

Таблица типов

ТипЧто измеряетЕдиницыОткуда берётся
Geoгеографические координатыширота/долгота, °GPX точки.
Distanceпройденная дистанция от стартам (показывается км / мили в индикаторах)вычисляется из Geo.
Wheel (Wheel Sensor)расстояние по датчику колесамвнешний датчик (формат FIT — Flexible and Interoperable Data Transfer, файлы спортивных трекеров) или дополнительные поля GPX.
Speedскоростьм/с (показывается км/ч или mph)вычисляется из Distance / GPX-Speed.
Elevationвысота над уровнем морямGPX <ele>.
Slopeуклон%вычисляется из Elevation и Distance.
Cadence (Cadenc)каденс (педалирование)об/мин (rpm)велокомпьютер, дополнительные поля GPX.
WattмощностьВтвелокомпьютер, дополнительные поля GPX.
Pulse / Heart rateчастота сердечных сокращенийуд/мин (bpm)пульсометр.
Meteoтемпература и влажность°C, %внешний метео-датчик.
Ga (Acceleration)ускорением/с²акселерометр (если поддерживается).

Поля атома

Каждый атом — это запись с временной меткой и значениями полей этого типа. Общие поля у всех типов:

ПолеОписание
idвнутренний ID.
indexпорядковый номер атома.
timeUTC-время.
durationдлительность действия (если применимо).

Дополнительные поля по типам:

ТипПоля атома
Geolat, lon
Distancevalue
Speedvalue
Elevationvalue
Slopevalue
Cadencerpm
Wattмощность (Вт)
Pulsebpm
Meteotemperature, humidity
Gax, y, z

Связанные разделы

Горячие клавиши

Сводка основных сочетаний клавиш в Velitask. На macOS вместо Ctrl используется Cmd.

Файл и проект

СочетаниеДействие
Ctrl+NСоздать новый проект.
Ctrl+OОткрыть существующий проект.
Ctrl+SСохранить проект.
Ctrl+,Открыть настройки проекта.
Ctrl+QВыйти из приложения.

Импорт и экспорт

СочетаниеДействие
Ctrl+IИмпортировать файл (видео, GPX, изображение).
Ctrl+EЭкспорт видео.
Ctrl+Shift+EЭкспорт изображения.

Воспроизведение

СочетаниеДействие
SpaceВоспроизведение / Пауза.
HomeВ начало Mixel'а.
EndВ конец Mixel'а.
/ Предыдущий / следующий кадр.
Shift + ←/→Предыдущая / следующая секунда.

Слои Mixel'а

СочетаниеДействие
Ctrl+DДублировать выделенный слой.
DeleteУдалить выделенный слой.
Ctrl+GСгруппировать выделенные слои.
Ctrl+Shift+GРазгруппировать.

Общие

СочетаниеДействие
Ctrl+ZОтменить.
Ctrl+Y или Ctrl+Shift+ZПовторить.
F2Переименовать выделенный узел в дереве источников.
F1Открыть документацию.
EscЗакрыть текущий диалог / снять выделение.

Замечание

Точный набор сочетаний может незначительно отличаться от версии к версии. Если какое-то сочетание у вас не сработало — проверьте подсказку рядом с пунктом меню (Velitask показывает его в скобках) или посмотрите в View → Keymap (если в вашей версии есть такой пункт).

Связанные разделы

Частые вопросы (FAQ)

Короткие ответы на самые типичные вопросы. Если нужного нет здесь — заглядывайте в Решение проблем.

Velitask бесплатный?

Да. Это настольное приложение, скачиваемое со страницы velitask.com.

Какие данные Velitask отправляет в интернет?

Только запросы за OSM-тайлами (карта). Сами проекты, видео и треки никуда не уходят — они хранятся локально на вашем компьютере. Без интернета приложение работает, кроме скачивания новых фрагментов карты.

Где хранятся проекты?

В папке, которую вы выбрали при создании проекта. Внутри неё — база проекта с метаданными и сенсорами. Сами видео и GPX не копируются — Velitask хранит ссылки на исходные файлы.

Сколько проектов могут быть открыты одновременно?

В текущей версии — один. Чтобы переключиться на другой проект, закройте текущий и откройте новый.

Можно ли использовать Velitask для авто / лодки / парапланов / бега?

Да. Концептуально не привязано к велосипеду — любая активность с GPS-треком и видео работает. Часть индикаторов (типа каденс) специфична для велосипеда, но они опциональны.

Что такое Mixel?

В Velitask Mixel — конечная композиция: холст со слоями, который вы видите в плеере и получаете при экспорте. Пользователь работает с Mixel'ом, добавляет в него слои и настраивает их свойства.

Чем плагин отличается от индикатора?

Плагин — внешний модуль (.jar-файл), который привозит с собой набор индикаторов. Индикатор — конкретный «виджет», который вы кладёте слоем в Mixel. То есть плагин — это поставщик, индикатор — единица в каталоге.

Можно ли работать с проектами Velitask на macOS / Linux?

Сейчас Velitask официально поддерживается только на Windows. Версии для macOS и Linux в планах; готовых установщиков пока нет.

Что будет с проектом, если я переименую исходный видео-файл?

Velitask потеряет ссылку на этот файл. В дереве источников рядом с узлом появится индикатор «файл не найден». Восстановить связь можно, открыв свойства источника и указав новый путь.

Velitask умеет монтировать видео (вырезать, склеивать, эффекты)?

Нет. Velitask делает наложения — индикаторы поверх видео, а монтаж не его задача. Сначала склейте видеомонтажом, потом импортируйте готовый файл в Velitask.

Можно ли сохранить шаблон Mixel'а с индикаторами и применять к новым проектам?

Да. Настройте Mixel в редакторе, затем выберите File → Export → Template... и сохраните .vttp. Такой шаблон можно применить вручную через Tools → Apply Template... или положить в папку шаблонов, чтобы Velitask использовал его для новых источников автоматически. Подробнее — Mixel JSON и шаблоны.

Сколько времени занимает экспорт?

Сильно зависит от длины ролика, разрешения, fps и сложности слоёв. Грубо: экспорт 5-минутного 1080p60 видео с типовым набором индикаторов на современном CPU занимает 5–15 минут.

Можно ли продолжить экспорт после ошибки?

Нет, экспорт всегда начинается с начала указанного диапазона. Если упало на 99% — придётся запустить заново, но можно сократить диапазон.

Поддерживает ли Velitask работу с несколькими камерами одновременно (multicam)?

В одном Mixel'е можно положить несколько видеослоёв (например, картинка-в-картинке). Полноценный multicam-монтаж с переключением между камерами — нет.

Где взять помощь, если что-то не работает?

  • Решение проблем в этой документации.
  • Логи: %USERPROFILE%\.velitask\logs\velitask.log.
  • Сайт проекта velitask.com — там обычно есть контакты.

Решение проблем

Что делать, когда Velitask ведёт себя не так, как ожидалось. Список симптомов, причин и способов починки. Если ничего из перечисленного не помогает — соберите логи (см. в конце) и обратитесь за поддержкой.

Velitask не запускается

СимптомПричинаЧто делать
Двойной клик по .exe ничего не делаетWindows блокирует «непроверенный» бинарникСвойства файла → «Разблокировать». Или: правая кнопка → «Запуск от имени администратора».
Ошибка «JRE not found» при запуске из ZIPZIP распакован не полностьюРаспакуйте архив целиком в обычную папку, не запускайте из архивированного .zip.
Антивирус удаляет файлVelitask не подписан корпоративной подписьюДобавьте папку Velitask в исключения антивируса.
Ошибка «Access denied» при запускеНет прав на папкуУстановите Velitask в папку профиля или запустите от администратора.

Импорт

СимптомПричинаЧто делать
Видео не открываетсяповреждённый файл или редкий кодекпересохраните файл в любом видеоредакторе.
GPX импортирован, но Speed везде 0в треке нет временных меток или они одинаковыеиспользуйте другой источник трека.
Импорт GPX очень долгийбольшой файл (десятки тысяч точек)дождитесь завершения; прогресс на вкладке Tasks.
После импорта длительность видео = 0повреждён индекс контейнерапересохраните файл в любом видеоредакторе.
Drag-and-drop не работаетприложение запущено от имени администратораWindows блокирует перетаскивание файлов между процессами с разными правами. Запускайте Velitask без прав администратора.

Время и синхронизация

СимптомПричинаЧто делать
Индикаторы съезжают ровно на час (или N часов)неверный часовой пояс Профиляпоправьте часовой пояс в Профиле устройства.
Индикаторы съезжают на N секундчасы устройства спешили / отставаливпишите смещение в Профиль.
Сдвиг разный в разных местах роликадрейф часов устройстваустранить полностью нельзя; либо принять погрешность, либо использовать только часть ролика.
GPX и видео не пересекаются по времениразные часовые пояса или разные датысверьте Профили; убедитесь, что съёмка и трек — одного и того же дня.

Подробнее — Синхронизация времени.

Карта

СимптомПричинаЧто делать
Карта серая, тайлы не грузятсянет интернета или проксипроверьте сеть; для прокси используйте системные настройки.
В одном месте «дырка» в картеповреждён кеш для этих тайловудалите подпапку в osm-cache или весь кеш.
Карта размытаямасштаб, на котором тайлы ещё не загруженыпрокрутите/измените масштаб; Velitask догрузит.
OSM-кеш занимает много местанакопилось от разных проектовудалите всю папку %USERPROFILE%\.velitask\osm-cache\.

Mixel и индикаторы

СимптомПричинаЧто делать
Индикатор показывает «—» или 0не задан источник данныхв свойствах слоя выберите сенсор.
Слой не видно на холстеслой за пределами холста или ниже другихпроверьте координаты в свойствах; передвиньте в списке Layers.
Видео в Mixel'е не воспроизводитсяпотерян исходный файлв свойствах источника укажите новый путь.
Карта не показывает трекне подвязан Geo-сенсорв свойствах GeoMap выберите GPX-источник.
Новый источник открылся без ожидаемого шаблона.vttp не найден, назван не по правилам или лежит не в той папкепроверьте имя video.vttp, gpx.vttp, шаблон по имени источника и пользовательскую папку шаблонов.
После применения .vttp пропали старые слоишаблон заменяет текущую композициювосстановите проект из сохранённой версии или заранее экспортируйте текущий Mixel как .vttp.

Подробнее о правилах поиска и проверки шаблонов — Mixel JSON и шаблоны.

Экспорт

СимптомПричинаЧто делать
Экспорт упал на N%ошибка FFmpeg или повреждённый кадрпосмотрите логи; возможно, нужно сократить диапазон или упростить Mixel.
Нет звука в файлевыбран «None» или несовместимый кодекпоставьте AAC или Copy.
Размер файла очень большойвыбран QTRLE или ProResдля публикации используйте H.264-MP4.
Экспорт идёт слишком долгосложный Mixel или высокое разрешениевременно отключите тяжёлые слои (карта, графики); уменьшите разрешение или fps.
После экспорта видео без индикаторовиндикаторы вне диапазона экспортапроверьте, что Start/End действительно покрывают нужный фрагмент.

Производительность

СимптомПричинаЧто делать
Velitask тормозит при открытии большого проектамедленный диск или мало RAMпереместите проект на SSD; добавьте оперативной памяти.
Превью лагает при перемоткебольшое разрешение видеоуменьшите окно плеера или временно отключите часть слоёв.
Зависание на запускеVelitask проверяет исходные файлы проектадождитесь завершения; если не идёт — закройте, перенесите файлы на быстрый диск.

Логи

Если ничего из перечисленного не помогает, понадобится лог:

  • Файл лога: %USERPROFILE%\.velitask\logs\velitask.log.
  • Что в нём: хронология событий приложения и ошибки.
  • Что делать: перезапустите Velitask, повторите проблемное действие, скопируйте свежую часть лога в файл, отправьте в поддержку.

Сброс настроек приложения

Если приложение явно «сломалось» в плане настроек (тема, последний проект, кеш), можно их сбросить:

Remove-Item -Recurse "$env:USERPROFILE\.velitask"

После этого Velitask запустится с чистого листа. Это не трогает ваши проекты — они хранятся в выбранной вами папке проекта, не в .velitask.

Связанные разделы