Съемка видео и описание коллбэка on_capture_complete

В этом разделе вы узнаете, как снимать видео и отправлять его Oz API через ваш бэкенд.

1. Обзор

Режим capture работает следующим образом:

1. Oz Web SDK снимает видео и передает его вашему web-приложению в виде последовательности кадров.

2. Web-приложение вызывает ваш бэкэнд и передает в него архив с кадрами.

3. После обработки видео ваш бэкэнд вызывает Oz API для выполнения анализов, после чего получает их результаты.

4. Ваш бэкэнд передает результаты обратно в web-приложение (опционально).

2. Реализация

На стороне сервера необходимо сконфигурировать Web SDK для работы в режиме capture: установить параметру architecture в файле app_config.json значение capture.

В вашем web-приложении добавьте callback-функцию для обработки кадров при открытии плагина Web SDK:

Структура получаемого объекта зависит от того, была ли обнаружена виртуальная камера.

Виртуальная камера не обнаружена

Виртуальная камера обнаружена

Список переменных с их значениями приведен ниже.

Переменная

Тип

Описание

best_frame

String

Лучший кадр, JPEG в формате data URL

best_frame_png

String

Лучший кадр, PNG в формате data URL, необходим для защиты от подмены видеопотока с помощью виртуальной камеры

best_frame_bounding_box

Array[Named_parameter: Int]

Координаты прямоугольника, в который вписано лицо на лучшем кадре

best_frame_landmarks

Array[Named_parameter: Array[Int, Int]]

Координаты "ориентиров" лица (левый глаз, правый глаз, нос, рот, левое ухо, правое ухо) на лучшем кадре

frame_list

Array[String]

Все кадры в формате data URL

frame_bounding_box_list

Array[Array[Named_parameter: Int]]

Координаты прямоугольников, в которые вписано лицо на кадрах из frame_list в соответствующем порядке

frame_landmarks

Array[Named_parameter: Array[Int, Int]]

Координаты "ориентиров" лица (левый глаз, правый глаз, нос, рот, левое ухо, правое ухо) на кадрах из frame_list в соответствующем порядке

action

String

Код действия

additional_info

String

Информация о среде клиента

Обратите внимание:

  • Видео, полученное через Oz Web SDK, – это последовательность кадров. Чтобы отправить его Oz API, поместите кадры в ZIP-архив, затем используйте метод POST {{host}}/api/folders (пройдите по ссылке для ознакомления с коллекцией Postman).

  • Вы можете получить из папки видео в формате MP4 video: вызовите метод /api/folders/{{folder_id}}, указав идентификатор папки. В JSON-ответе найдите preview_url в source_media. В preview_url содержится ссылка на видео. Из плагина получить MP4-видео нельзя (только в виде последовательности кадров).

  • При использовании архитектуры capture также необходимо добавить в запрос POST {{host}}/api/folders дополнительное поле additional_info. Оно нужно для сбора информации о среде клиента. Пример заполнения тела запроса:

  • Для передачи в Oz API используйте данные без кодирования в base64.

Last updated

Was this helpful?