Член команды:
FREEBLOCK
в команде:
15 человек
Алексей Мелешко › alexmeleshko Паспорт верифицирован
Blockchain и Web3 под ключ, DApp, DeFi, GameFi и др.
Рейтинг
6 947
№ 174 в каталоге
Отзывы
0
Профессионализм
-/10
Коммуникация
- /10
Город
Минск
Опыт работы
13 лет
На сайте с
2022 года
Юридический статус
ИП

VR Sync — Android-платформа совместного просмотра VR-видео

Описание

VR Sync — система для организации совместных сеансов VR-видео на Android-устройствах. Ведущий выбирает ролик и управляет воспроизведением, а устройства участников получают команды по локальной сети. Приложение поддерживает панорамное видео 360° и просмотр через Cardboard-совместимые очки для смартфона.

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

Задача
Разработать систему, в которой один оператор может управлять общим просмотром на нескольких Android-устройствах. Требовалось связать обнаружение устройств, передачу команд воспроизведения и работу с локальными видеофайлами, чтобы не передавать видеопоток каждому участнику во время сеанса.

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

Решение

Мобильное приложение и управление сеансом. Разработали Android-приложение с ролями MASTER и CLIENT. Ведущий выбирает контент, запускает просмотр, ставит видео на паузу, продолжает воспроизведение и передаёт команду перемотки. Устройства участников обнаруживают ведущего в локальной сети и принимают команды управления. Для поиска используется UDP multicast, для обмена командами — TCP.
Просмотр 360° и VR-режим. Интегрировали воспроизведение видео на базе ExoPlayer и Cardboard SDK. Панорамный режим позволяет осматриваться внутри сцены, а режим VR-очков предназначен для смартфона в Cardboard-совместимом устройстве. Видео загружается и хранится локально: во время показа по сети передаются управляющие сообщения, а не общий видеопоток.
Контент и серверная часть. Реализовали backend на Node.js и Express с PostgreSQL. Сервер хранит сведения о клиентах, контенте и лицензиях. Администратор загружает видеоматериалы, задаёт название, формат и длительность, назначает контент клиенту и управляет его доступностью. В панели отображаются имя файла, размер и статус материала.
Лицензирование устройств. Добавили генерацию ключей, активацию, привязку к идентификатору устройства и контроль срока действия. Веб-панель позволяет искать ключи, фильтровать их по клиенту и активности, включать или отключать доступ. В мобильной части предусмотрена повторная проверка лицензии и ограниченный период работы без связи с сервером: до семи дней после последней успешной проверки, пока сама лицензия остаётся действительной.
Панель администратора. Создали интерфейс на React для управления клиентами, видео и лицензиями. Дашборд показывает общее количество клиентов, активные и просроченные лицензии, доступный контент и активность за последние сутки. Это связывает подготовку материалов и выдачу доступа с эксплуатацией мобильного приложения.


Стек: Kotlin, Android, Cardboard SDK, ExoPlayer, C++, React, Node.js, Express, PostgreSQL, REST API, TCP и UDP.

Результат

Объединили управление групповым VR-сеансом и административную часть в одной системе. Оператор управляет просмотром с ведущего Android-устройства, участники воспроизводят локальные видео, а администратор контролирует контент и лицензии через браузер.
Визуальные материалы кейса. На скриншотах показан реальный интерфейс веб-панели с демонстрационными данными. Главное изображение — иллюстрация сценария использования. Числа на экранах не являются показателями клиентского бизнеса.

Полный кейс: https://freeblock.dev/cases/mobile/vr-sync

Обсудить похожий проект: https://t.me/FreeBlockDev

Работа выполнена в соавторстве

Проект разработан командой FreeBlock: Android-приложение, серверная часть и веб-панель администратора.

Оценили проект:

Другие проекты

Все проекты →
Веб-разработка и IT Zoom Loupe — Telegram MiniApp игра
Zoom Loupe — Telegram MiniApp игра
230
Веб-разработка и IT SHINE Premium — Сайт для премиум детейлинг SHINE Premium
SHINE Premium — Сайт для премиум детейлинг SHINE Premium
290
Веб-разработка и IT AVO Staking — Смарт-контракт cтейкинга для токена AVO и Front-End
AVO Staking — Смарт-контракт cтейкинга для токена AVO и Front-End
216
Веб-разработка и IT Front-End для Telegram MiniApp игры
Front-End для Telegram MiniApp игры
235