SmartSpectra SDK

SmartSpectra SDK

Vital signs from
any camera

Turn any smartphone or webcam into a real-time vitals sensor. No wearables, no contact sensors — just a camera and a platform SDK.

Get started

Go from zero to streaming vitals in minutes.

  1. 1

    Get your API key

    Register at the Developer Portal to get your API key.

    Create an account
  2. 2

    Follow your platform quickstart

    Install the SDK, set your API key, and connect metrics in your app.

    Open a quickstart

Choose your platform

SDK metrics are offered for general wellness and informational purposes only.
SDK metrics have not been cleared by the FDA and may not be used for medical diagnosis or treatment.

SDK metric capabilities

The SDK exposes one language-agnostic metrics payload across platforms. When platform pages lag the underlying SDK, this overview uses the highest currently documented capability and calls out validation gaps directly. See the payload schema for field names and wire types.

Relative Arterial Pressure Waveform

Waveform of relative arterial pressure (amplitude in arbitrary units vs. time). Represents waveform shape only (e.g., heartbeat timing, shape and relative changes). Not a blood pressure measurement and cannot be used to estimate systolic or diastolic pressure.

See model card for confidence to error mapping.

Range
Valid when pulse rate is 40-110 BPM.
Works when
  • Subject is stationary.
  • Camera is relatively stable; handheld is acceptable.
  • Face and upper chest are visible, unobstructed, and well illuminated.
Does not work when

These conditions may produce inaccurate measurements with high confidence and should be avoided.

  • Large head, body, or camera motion.
  • Chewing gum.
  • Flickering illumination, such as TV screens.
Model card

Heart Rate Variability

60-second beat-to-beat (NN interval) statistics with confidence. Confidence is 0 until the full 60-second window is reached.

See model card for confidence to error mapping.

Metrics

  • Mean NN: Average NN interval in milliseconds.
  • RMSSD: Root mean square of successive NN differences in milliseconds.
  • SDNN: Standard deviation of NN intervals in milliseconds.
  • Baevsky Stress Index: Measure of autonomic balance in arbitrary units.
Range
Valid when pulse rate is 40-110 BPM.
Works when
  • Subject is stationary.
  • Camera is relatively stable; handheld is acceptable.
  • Face and upper chest are visible, unobstructed, and well illuminated.
Does not work when

These conditions may produce inaccurate measurements with high confidence and should be avoided.

  • Large head, body, or camera motion.
  • Chewing gum.
  • Flickering illumination, such as TV screens.
Model card

Pulse Rate

12-second average pulse rate in beats per minute (BPM) with confidence.

See model card for confidence to error mapping.

Range
40-110 BPM.
Works when
  • Subject is stationary.
  • Camera is relatively stable; handheld is acceptable.
  • Face and upper chest are visible, unobstructed, and well illuminated.
Does not work when

These conditions may produce inaccurate measurements with high confidence and should be avoided.

  • Large head, body, or camera motion.
  • Chewing gum.
  • Flickering illumination, such as TV screens.
Model card

Face Analysis

Includes:

  • 478 facial landmark coordinates as x/y pixel locations.
  • Eye blink detection (binary).
  • Talking detection (binary).
  • Facial expression classification with probabilities across anger, contempt, disgust, fear, happiness, sadness, surprise, and neutral.
Works when
  • Face is visible, unobstructed, and well illuminated.
Does not work when
  • Face is significantly rotated and not approximately orthogonal to the camera.

Breathing Rate

30-second average breathing rate in breaths per minute with confidence. Confidence is 0 until the full 30-second window is reached.

See model card for confidence to error mapping.

Range
5-40 breaths per minute.
Works when
  • Subject is stationary.
  • Camera is stable and not handheld.
  • Face and chest are visible and well illuminated.
Does not work when
  • Talking.
  • Large body motion.
  • Unstable camera, including handheld capture.
  • Dark clothing.
  • Tightly striped patterns on clothing causing image aliasing.
Model card

Upper and Lower Breathing Waveforms

Upper chest and lower abdominal breathing waveforms (amplitude in arbitrary units vs. time) with confidence. Confidence is derived from breathing rate confidence and remains 0 until 30 seconds is reached.

See model card for confidence to error mapping.

Range
Valid for breathing rates of 5-40 breaths per minute.
Works when
  • Subject is stationary.
  • Camera is stable.
  • Face and chest are visible and well illuminated.
  • Lower abdominal waveform requires waistline visibility.
Does not work when
  • Talking.
  • Large body motion.
  • Unstable camera, including handheld capture.
  • Dark clothing.
  • Tightly striped patterns on clothing causing image aliasing.
Model card

Ready to build?

Sign up at the Developer Portal to get started.