- Гарантия плавного воспроизведения видео даже при плохом интернет-соединении. Для этого мы разделили видеоконтент на множество микрофайлов (чанки) и перенесли эти файлы на сервера в разном качестве, вместо того чтобы хранить их на пользовательских устройствах. Благодаря этому наша команда разработчиков ТВ-приложений минимизировала возможные задержки видео.
- Дополнительно мы разработали два продвинутых алгоритма: один для учета задержки видео, второй для его перемотки при увеличении задержки через определенный интервал. Также мы разработали логику, при которой качество воспроизведения видео в настройках (авто, 360p, 480p, 720p, 1080p, HD и т. д.) автоматически переключается на более низкий уровень при плохом интернет-соединении. В результате видео продолжает воспроизводиться даже во время перебоев с Интернетом.
- Обеспечение безупречного пользовательского опыта на всех устройствах: телевизорах, ПК и планшетах. Разработав типичные сценарии использования ТВ-приложения, мы учитывали возможность перехода пользователя между устройствами с возможностью продолжения работы того же места, где он остановился. После анализа предпочтений целевой аудитории мы определили, что кэширование самых популярных видео и их загрузка из оперативной памяти улучшит скорость загрузки контента.
- Поскольку платформа была нацелена на страны СНГ, возникла проблема с отправкой телевизионного приложения в Samsung Galaxy Store. Чтобы получить одобрение, продукт нужно было протестировать на серверах. Однако рядом с необходимым местом для тестирования потоковой передачи VoD за пределами этих регионов не было серверов CDN. В этом контексте качество потоковой передачи во время тестирования может быть значительно ниже.Чтобы протестировать потоковую передачу VoD в ТВ-приложении, наша команда загрузила видео на японские сервера, расположенные рядом с Samsung Galaxy Store. В результате нам удалось успешно провести тестирование и получить одобрение на публикацию ТВ-приложения.
- Команда A-Code также внедрила функцию родительского контроля: если неавторизованный пользователь пытается просмотреть видео с возрастным ограничением, платформа запрашивает ввод кода.
Для контроля качества мы проводили код-ревью и несколько видов тестирования (мануальное, функциональное и тп.), уделяя особое внимание требованиям клиента. Для быстрой коммуникации с заказчиком мы использовали Slack и Jira для управления задачами, что обеспечило эффективное и прозрачное сотрудничество.