Developer Home

Add Real-Time Human Vitals to Any App

Turn any smartphone or camera into a real-time vitals sensor - no hardware, no wearables. Anytime. Anywhere
Try our SmartSpectra™ SDK for free.

 

SDK Documentation

Develop your first prototype with less than 10 lines of code

Android Icon
Android SDK
Complete documentation and integration guide for Android applications. Includes sample code, API reference, and best practices.
Frame 10
Swift SDK
Native iOS development resources with Swift. Comprehensive API documentation, integration examples, and implementation guides.
C++ Icon
C++ SDK
High-performance C++ library documentation. Cross-platform development guide with API reference and integration examples.
 

Available Measurements

CheckCircle
Cardiac Waveform
Real time pulse pleth modulated relative blood pressure wave form supporting calculation of pulse rate, heart rate variability, and relative blood pressure.
CheckCircle
Breathing Waveform
Real time breathing waveform supporting biofeedback, breathing rate, inhale/exhale ratio, breathing amplitude, apnea detection, and respiratory line length.
CheckCircle
Myofacial Analysis
Supporting face-point analysis, expression analysis, blinking detection, and talking detection.
CheckCircle
Integrated Quality Control
Confidence and stability metrics providing insight into the confidence in the signal. User feedback on imaging conditions to support successful use.
CheckCircle
Camera Selection
Front or rear facing camera selection on iOS or Android and specification of camera input for applications using the C++ SDK.
CheckCircle
Continuous or Spot Measurement
Options for continuous measurements or variable time window spot measurements to support varied use cases.
 

Hello World

Our SDK is lightweight, fast, and comes with full documentation and sample projects. Pick your platform and start experimenting today.

Fast code to fast results

Four fast steps to "Hello World":

  • Chose your platform. - Grab the code that matches to your chosen platform.
  • Paste in the code. - Copy and paste into your developer environment.
  • Install the SDK - Follow the comments to reference in the Presage special software and to activate your camera.
  • Get your API key - Get your API key from our Developer site.

... and Go.

// Check for the latest versions at
 https://github.com/Presage-Security/SmartSpectra/tree/main/android

// Requires adding the SmartSpectra SDK via Gradle. In settings.gradle: // dependencyResolutionManagement { // repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS) // repositories { // google() // mavenCentral() // // Required for MPAndroidChart dependency // maven { url "https://jitpack.io" } // } // } // Then add the dependency in app/build.gradle: // implementation("com.presagetech:smartspectra:1.0.25") // The SDK handles camera permissions automatically. To customize the // permission rationale shown to users, add a <string name="camera_permission_hint">...</string> // in res/values/strings.xml (docs) import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import com.presagetech.smartspectra.SmartSpectraView import com.presagetech.smartspectra.SmartSpectraSdk class MainActivity : AppCompatActivity() { private lateinit var smartSpectraView: SmartSpectraView override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) // Set your SmartSpectra API key. // You can obtain an API key at: https://physiology.presagetech.com/auth/register SmartSpectraSdk.getInstance().setApiKey("YOUR_API_KEY_HERE") // Reference the SmartSpectraView from your layout. smartSpectraView = findViewById(R.id.smart_spectra_view) } }
/// Add the SmartSpectra package via Swift Package Manager:
 https://github.com/Presage-Security/SmartSpectra/tree/main/swift

/// Add a Camera usage description (NSCameraUsageDescription) to your target's Info.plist. import SwiftUI import SmartSpectraSwiftSDK struct ContentView: View { @ObservedObject var sdk = SmartSpectraSwiftSDK.shared init() { // Set your SmartSpectra API key. // You can obtain an API key at: https://physiology.presagetech.com/auth/register let apiKey = "YOUR_API_KEY_HERE" sdk.setApiKey(apiKey) } var body: some View { SmartSpectraView() } }
// Reference the latest C++ versions at
 https://github.com/Presage-Security/SmartSpectra/tree/main/cpp

// Install the SmartSpectra C++ SDK and dependencies on Ubuntu/Mint.
// This sets up the Presage repository and installs the SDK package (docs):
//   curl -s "https://presage-security.github.io/PPA/KEY.gpg" | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/presage-technologies.gpg >/dev/null
//   sudo curl -s --compressed -o /etc/apt/sources.list.d/presage-technologies.list \
//       "https://presage-security.github.io/PPA/presage-technologies.list"
//   sudo apt update
//   sudo apt install libsmartspectra-dev libopencv-dev libglog-dev
//
// Build and run (CMake example):
//   mkdir build && cd build
//   # CMakeLists.txt should call find_package(SmartSpectra REQUIRED) and link against SmartSpectra::Container.
//   cmake .. && make
//   ./hello_vitals YOUR_API_KEY
//
// The code below performs a spot measurement and prints pulse and breathing rate.

#include <smartspectra/container/foreground_container.hpp>
#include <smartspectra/container/settings.hpp>
#include <physiology/modules/messages/metrics.h>
#include <glog/logging.h>
#include <iostream>

using namespace presage::smartspectra;

int main(int argc, char** argv) {
  google::InitGoogleLogging(argv[0]); // required logging setup
  FLAGS_alsologtostderr = true;

  // Set your SmartSpectra API key (register at https://physiology.presagetech.com/auth/register)
  std::string apiKey = "YOUR_API_KEY_HERE";

  // Create settings for a spot measurement using the default camera.
  container::settings::Settings<
      container::settings::OperationMode::Spot,
      container::settings::IntegrationMode::Rest> settings;
  settings.video_source.device_index = 0;         // use default webcam
  settings.integration.api_key = apiKey;          // assign API key
  settings.headless = true;                       // disable built-in GUI (optional)

  // Instantiate the container for CPU + spot mode (foreground).
  auto container = std::make_unique<container::CpuSpotRestForegroundContainer>(settings);

  // Register a callback to print pulse and breathing BPM.
  container->SetOnCoreMetricsOutput([](const presage::physiology::MetricsBuffer& metrics, int64_t) {
    int pulse = static_cast<int>(metrics.pulse().strict().value());
    int breathing = static_cast<int>(metrics.breathing().strict().value());
    std::cout << "Pulse: " << pulse << " BPM, Breathing: " << breathing << " BPM\n";
    return absl::OkStatus();
  });

  // Initialize the camera and start the measurement.
  container->Initialize();
  container->Run();
  return 0;
}

Get a Jump Start with this Fully Integrated Example

This GitHub repo provides an end-to-end example with:

  • A fully embedded version of the SDK
  • Full connection to the iPhone camera
  • Integration points for the UI to access the user sensing data feeds
  • A simple user interface that can start/stop a session, provide live feedback and flag activity while the session is running, and provide a useful summary at the end.

SixthSense 1.2

Want us to host your app?

If you meet our Guidelines, we can host your app on Sixth Sense -- our industry leading hub supporting health experiences of all kinds:

  • Hosting - We are already on the App Store and you can be too with the snap of your finger.
  • Customized User Experience - Let us match in your logo, your terms, your color scheme and your splash.
  • Billing - We can take care of all usage billing and send you the total every week or month.
  • User Management Portals - Need to manage your users, change settings and see how they are doing?
We can make it easy for you, all in one place.

SixthSense - DownLoad on the App Store.med
 
 

FAQs

I want the tech, but I don't have a developer

We can likely host you and your users in our Sixth Sense app. No coding and instant presence for your new digital experience. Contact us.

How do I get involved?

I am a STUDENT. Can I use this in a project? Sure you can. Grab our FREE Community Edition or just download Sixth Sense from the App Store.

I am a RESEARCHER. Can I use this for my new diagnostic? Sure, we run our own labs. Reach out and let us support you with great, real time tech, so that you can speed your new diagnostic out to help the people of the world.

What physiological signals and features can SmartSpectra measure?

The SDK measures pulse rate, apnea detection, inhale/exhale ratio, HRV, upper/lower breath trace, respiratory line length, facial landmarks, blink/talk detection, relative blood pressure, emotional responses and much more.

How does Presage protect privacy and handle user data?

Presage's SDK does not access or require any personal data to operate, and it delivers its results on a purely anonymized basis. Presage uses anonymized metrics to improve algorithms. End-use applications will provide their own disclosures and required consents.

What environmental conditions are needed for accurate measurements?

Hold the phone 1–2 ft or mount 3–5 ft; rear camera works at 15–20 ft. Light ≥60 lux; moderate motion okay.

What is SmartSpectra and how does it work?

SmartSpectra™ is Presage’s contactless health‑sensing SDK that turns any camera into a real time biometric sensor. It tracks facial and chest movements, uses signal processing to extract anonymized heart, breathing, and expression and return measurement data in real time.

How accurate is the SmartSpectra SDK?

Presage publishes validation data from its clinical trials shows less than a 1.62 % RMSD for heart rate (across all camera typea) and 1.71 % RMSD for breathing rate difference from standard hospital measurement equipment. Accuracy depends on lighting and motion. Not a medical device.

Which platforms and programming languages does SmartSpectra support?

SmartSpectra supports iOS (Swift), Android (Kotlin) and cross‑platform C++. Repos, a full end-to-end example and documentation are on GitHub. Integration takes <10 lines of code.

Is SmartSpectra a medical device or FDA‑approved product?

No. While the SmartSpectra SDK has passed its clinical trials, it is not FDA‑approved as a medical device. It’s for wellness use and not for diagnosis or treatment.

How do I integrate SmartSpectra into my app?

Sign up for an API key, embed the SDK (under 10 lines), then connect the API and select biometrics. Data streams within 3–5 s.

Trusted by innovators worldwide

International Olympic Committee Logo.clr background
1st Place - 2025 Innovations in Human Performance
logo-nasa-insignia-desktop-wallpaper-vector-graphi-prototek-manufacturing-precision-fabrication-of-1713922651957
Flight qualified for astronauts
US Army Institute of Surgical Research
Selected for Cutting Edge Research on Compensatory Reserve measurement
Baylor College of Medicine
Completed Clinical Trials in May 2025
DIU - Defense Innovation Unit
Top choice from 27 Bay Area innovators
MIT - Lincoln Laboratory
Selected Validator - Leading Edge Contactless Human Sensing
University Hospital
Validated Presage Technology - Hospital Settings
Translational Institute for Space Health
Contactless sensing for space-based applications
Vital Chat
Remote Patient Monitoring - Hospital Settings
Mass General Hospital.2
Completed Clinical Trials in May 2025

Configurations to Make Your Application Sing

Whether you are creating an application for a single user at a time, connecting people, providing remote support or integrating right into your enterprise systems, Presage has the capabilities and interface options for you.

Mobile Local
Mobile Local
Mobile → Mobile
Frame 163
Mobile → Server/Cloud → Device
Frame 164
Camera → Server/Cloud → Device
Frame 165

157M+

Medical-grade measurements that underpin both our technology and our models

98.7%

Clinically validated accuracy of Presage vital signs measurements

3180+

Real time ways to Bring LifeSM to your next-generation digital experiences

 

Simple, transparent pricing

Flexible plans to fit your needs — from prototypes to enterprise scale.

No hidden fees, no surprises — just clear, predictable plans that give you full access to the power of human sensing. Start small, scale fast, and pay only for what you use.

Community Plan

Free for Developers / Non-commercial


Free

pass it on

Business plan

Pay only for what you need


$0.007

per measure*
$200/mo minimum

Enterprise plan

Integrate into your workflows


All Yours

Ready to match how you price

*Same pricing applies to all Basic Measures updated up to once per second. 

Contact us if you have a need for more Advanced Measures such as Absolute Blood Pressure, Compensatory Reserve and other research-related measures or updates faster than 1Hz.

Advanced Applications

For specialized measures like absolute blood pressure, electrodermal activity (EDA - sweat), shock/trauma/ compensatory reserve and more...

Contact advanced projects at support@presagetech.com