Video File Processing

Last updated
July 3, 2025

Introduction

Saphere Scan also allows physiological measurement computation from pre-recorded video files. This is especially useful for offline analysis or mobile app integrations.

Video Preparation Guidelines

To ensure proper results, submitted video files must meet the following requirements:

Technical Requirements

  • File format: .avi, .mp4, .mov, .webp
  • Maximum file size: 100 MB
  • Minimum duration: 25 seconds (to allow sufficient data for processing)
  • Maximum duration processed: Only the first 30 seconds are used

Environmental and Subject Conditions

  • Stand upright facing the camera
  • Camera aligned at face height
  • Keep 40–60 cm distance from the camera
  • Torso must be visible (required for respiratory rate computation)
  • Ensure even and adequate lighting (avoid extreme brightness or dim light)
  • Avoid movement during recording
Ideal face framing

How to Perform a Video Measurement Using the API

You can extract physiological variables from a video using either a one-step or two-step API call.

Single-Call Video Endpoint

Submit both measurement options and the video file in a single request:

POST /measures/video
Authorization: Bearer <your-api-key>
Content-Type: multipart/form-data

- video: <your_video.mp4>
- userData: { age, sex, ... }
- desiredVariables: ["hr", "br"]

This endpoint returns the results after processing the video.

Two-Step API Method

To extract physiological variables from a video, use the following two-step process:

Step 1: Create a Measurement Request

POST /measures
Authorization: Bearer <your-api-key>
Content-Type: application/json

{
  "userData": { "age": 32, "sex": "M" },
  "desiredVariables": ["hr", "br"]
}

β†’ Response will include a measureId

Step 2: Upload the Video File

POST /measures/{measureId}/video
Authorization: Bearer <your-api-key>
Content-Type: multipart/form-data; boundary=boundary
Accept: application/json

--boundary
Content-Disposition: form-data; name="video"; filename="video.mp4"
Content-Type: video/mp4

< ./relative/path/to/video.mp4
--boundary--

Once processed, results are returned asynchronously or can be queried.

For complete technical details and validation schemas, see:

Close Modal