VIAITEC - Home

ViAiSteady

Real-time video stabilization library

ViAiSteady is a high-performance, real-time video stabilization library written in C++ and optimized for a wide range of hardware platforms. It is designed to reduce camera shake and unwanted jitter in videos captured by smartphones, handheld cameras, airborne imaging systems, and other devices operating under challenging motion conditions.

The library supports both real-time stabilization during video capture and offline post-processing, delivering smoother and more stable video output.

By leveraging hardware-accelerated encoding to extract motion vectors, ViAiSteady reduces the computational overhead associated with traditional motion estimation techniques, making it particularly suitable for embedded systems and resource-constrained devices.

  • 3-axis stabilizationVertical · Horizontal · Rotational
  • Real-time + offlineLive capture and post-processing
  • Cross-platformWindows · Linux · Android

Smooth, stable video from moving cameras, on many platforms and with a light computational load

Multi-axis video stabilization

Reduces unwanted camera motion in multiple directions.

  • VerticalCorrects up-and-down camera movements.
  • HorizontalCorrects side-to-side camera movements.
  • RotationalCompensates for unwanted camera rotation.
  • Real-time and offline processing

    • Real-time stabilization during live video capture.
    • Offline stabilization during video post-processing.
  • Configurable stabilization parameters

    • Parameters can be adjusted dynamically to suit different recording conditions and application requirements.
  • Developer-friendly integration

    • Programming interfaces for integration into C++ applications and video processing pipelines.
  • Versatile applications

    • UAV and aerial imaging
    • Military surveillance
    • Sports recording
    • Handheld cameras
    • Everyday video capture

Supported platforms

Designed for cross-platform deployment on a wide range of operating systems and hardware architectures.

Operating systems
  • Linux
  • Windows
  • Android
  • Embedded Linux
Hardware architectures
  • x86 / x86-64
  • ARM / ARM64

Hardware acceleration

Hardware-specific optimizations improve computational efficiency and enable real-time stabilization on every platform.

  • Video encoder

    • Motion vectors are taken from the hardware-accelerated video encoder, instead of a separate motion estimation step.
  • CPU optimization

    • Efficient C++ implementation optimized for CPU processing.
    • Minimal computational overhead and memory usage.
  • SIMD acceleration

    • ARM NEON on ARM-based platforms.
    • SSE / AVX on x86 and x86-64.
  • GPU acceleration

    • GPU acceleration for computationally intensive video processing operations, where supported.

Real footage before and after stabilization by ViAiSteady

Integrate ViAiSteady into your C++ application and download the technical documentation.

1How ViAiSteady works

Camera motion is taken from the video encoder, smoothed, then compensated in every frame.

  1. 01
    Input video

    Frames from the camera during capture, or a recorded video file.

  2. 02
    Motion vectors

    The hardware-accelerated encoder provides the motion vectors of each frame - no separate motion estimation.

  3. 03
    Camera path smoothing

    The global camera motion is estimated from the vectors; shake and jitter are separated from the intended motion.

  4. 04
    Stabilized output

    Each frame is compensated for the unwanted motion, giving smoother and more stable video.

2Classes and data structures

This part is being updated.

3Integration into your application

This part is being updated.

Documents & software

Technical documents and trial software for ViAiSteady

Documents

    Software

      Downloads require a customer account. VIAITEC reviews each request and e-mails a download link that works once and is valid for 24 hours. Questions? Contact us.

      Download request:

      Tell us briefly how you will use this file. VIAITEC reviews every request and e-mails you a download link that works once and is valid for 24 hours.