22
Добавление источника контента в приложение Fulldive VR Виталий Вельямидов Руководитель: Алексей Суворов (Fulldive CTO) FULLDIVE 22 декабря 2016 г. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Приложение FullDive VR. Презентация участников

Embed Size (px)

Citation preview

Page 1: Приложение FullDive VR. Презентация участников

Добавление источника контента вприложение Fulldive VR

Виталий ВельямидовРуководитель: Алексей Суворов (Fulldive CTO)

FULLDIVE

22 декабря 2016 г.

. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .

Page 2: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Введение

Fulldive VR — платформа для просмотрамедиаконтента в виртуальной реальности наAndroid устройствах.

Основная функциональность:▶ просмотр сферического видео▶ просмотр 3D видео▶ социальное взаимодействие▶ запуск других VR приложений

1 /13

Page 3: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Введение

Fulldive VR — платформа для просмотрамедиаконтента в виртуальной реальности наAndroid устройствах.

Основная функциональность:▶ просмотр сферического видео▶ просмотр 3D видео▶ социальное взаимодействие▶ запуск других VR приложений

1 /13

Page 4: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Введение

Youku — аналог Youtube в Китае.

▶ самый популярный видеохостинг▶ имеет сферическое и 3D видео

2 /13

Page 5: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Цели и задачи

Цель: добавить сервис youku как источникконтента в приложение Fulldive VR.

Задачи:▶ Разобраться в основах разработкиприложений для Android OS

▶ Реализовать воспроизведение видео по id▶ Реализовать поиск видео по ключевомуслову

▶ Реализовать поиск по сферическим видео

3 /13

Page 6: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Цели и задачи

Цель: добавить сервис youku как источникконтента в приложение Fulldive VR.

Задачи:▶ Разобраться в основах разработкиприложений для Android OS

▶ Реализовать воспроизведение видео по id▶ Реализовать поиск видео по ключевомуслову

▶ Реализовать поиск по сферическим видео

3 /13

Page 7: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

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

▶ Все отрисовывается в одном окне (Activity)средствами OpenGL.

▶ Свой UI фреймворк (OpenGL + Google VRSDK)

▶ Основные компоненты:▶ базовые элементы управления ивзаимодействия

▶ композиции компонентов▶ управление сценами▶ управление ресурсами▶ управление анимациями▶ взаимодействие с сервером

4 /13

Page 8: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

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

Возможности, предоставляемые youku:▶ video_id → Youku REST API → ссылка навстраиваемый веб-плеер youku.

▶ Youku Player Android SDK со своим плеером

Проблема 1: не встроить в приложение с 3Dграфикой.

Решение: частично выполнять скриптывеб-сервиса, имитируя браузер в клиентскойчасти приложения.

5 /13

Page 9: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

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

Возможности, предоставляемые youku:▶ video_id → Youku REST API → ссылка навстраиваемый веб-плеер youku.

▶ Youku Player Android SDK со своим плеером

Проблема 1: не встроить в приложение с 3Dграфикой.

Решение: частично выполнять скриптывеб-сервиса, имитируя браузер в клиентскойчасти приложения.

5 /13

Page 10: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

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

Возможности, предоставляемые youku:▶ video_id → Youku REST API → ссылка навстраиваемый веб-плеер youku.

▶ Youku Player Android SDK со своим плеером

Проблема 1: не встроить в приложение с 3Dграфикой.

Решение: частично выполнять скриптывеб-сервиса, имитируя браузер в клиентскойчасти приложения.

5 /13

Page 11: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

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

Проблема 2: Большинство видео в формате flv.Используемый ExoPlayer не поддерживает seekпо flv видео.

Проблема 3: Видео отдается в виде m3u8плейлиста, поделенным на блоки. Необходимоуметь пребуферизировать следующий блок,когда заканчивается текущий, поддерживатьобщую для всех блоков строку прогресса иуметь перемещаться по ней.

Решение: HLS (HTTP Live Streaming) — протоколпотоковой передачи медиаконтента на основеHTTP.

6 /13

Page 12: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

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

Проблема 2: Большинство видео в формате flv.Используемый ExoPlayer не поддерживает seekпо flv видео.

Проблема 3: Видео отдается в виде m3u8плейлиста, поделенным на блоки. Необходимоуметь пребуферизировать следующий блок,когда заканчивается текущий, поддерживатьобщую для всех блоков строку прогресса иуметь перемещаться по ней.

Решение: HLS (HTTP Live Streaming) — протоколпотоковой передачи медиаконтента на основеHTTP.

6 /13

Page 13: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

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

Проблема 2: Большинство видео в формате flv.Используемый ExoPlayer не поддерживает seekпо flv видео.

Проблема 3: Видео отдается в виде m3u8плейлиста, поделенным на блоки. Необходимоуметь пребуферизировать следующий блок,когда заканчивается текущий, поддерживатьобщую для всех блоков строку прогресса иуметь перемещаться по ней.

Решение: HLS (HTTP Live Streaming) — протоколпотоковой передачи медиаконтента на основеHTTP.

6 /13

Page 14: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Поиск видео по ключевым словам

Youku REST API предоставляет такуювозможность.

Проблема: В Youku API нет фильтрации длясферического видео.

Решение: Декорирование запроса меткой全景视频 (panoramic) и фильтрация результатовна клиенте.

7 /13

Page 15: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Поиск видео по ключевым словам

Youku REST API предоставляет такуювозможность.

Проблема: В Youku API нет фильтрации длясферического видео.

Решение: Декорирование запроса меткой全景视频 (panoramic) и фильтрация результатовна клиенте.

7 /13

Page 16: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Поиск видео по ключевым словам

Youku REST API предоставляет такуювозможность.

Проблема: В Youku API нет фильтрации длясферического видео.

Решение: Декорирование запроса меткой全景视频 (panoramic) и фильтрация результатовна клиенте.

7 /13

Page 17: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Результат

8 /13

Page 18: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Результат

9 /13

Page 19: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Результат

10 /13

Page 20: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Результат

11 /13

Page 21: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Результат

12 /13

Page 22: Приложение FullDive VR. Презентация участников

...

.

...........................

.

...

.

...

.

Итоги

▶ Познакомился с основами разработки дляAndroid OS

▶ Познакомился с миром мобильного VR▶ Выполнил поставленные задачи

13 /13