🦄
Bubbaloop
  • 🦄Bubbaloop
  • 🚀Quickstart
  • 💊Stats API
  • 🍰Pipeline API
  • Examples
    • 🌈Hello World
    • 📷Camera Recording
  • 🍄Model Inference (experimental)
  • Tutorials
    • Home Security App
Powered by GitBook
On this page
  • What You'll Need
  • Your Phone or Any Camera
  • Hardware
  • Software & Tools
  • Set Up Camera Streaming First
  • Step-by-Step Setup
  • Clone the Repo
  • Configure Your Camera
  • Install bubbaloop
  • Start a Camera Pipeline
  • Start a recording
  • Visualize with Rerun
  • Running Paligemma for Object Detection (Experimental)
  • Customise the prompt
  • Request the inference result
  • Contribute / Feedback
  1. Tutorials

Home Security App

Bubbaloop 101: Turn Your Phone into a Smart Security Camera in 10 Minutes

PreviousModel Inference (experimental)

Last updated 1 month ago

Why should you care?

  • You already own the hardware. An old iPhone or Android device on your windowsill is now your first smart security feed.

  • Privacy‑first. Everything stays local on a $249 Jetson Orin Nano or your laptop – no cloud fees, no vendor lock‑in.

  • Instant insight. Live multi‑camera visualization and local video recording with spatial intelligence built in.

This guide walks you through setting up Bubbaloop, an open-source camera pipeline built with Rust and , to:

  • Ingest real-time video from your phone or IP cameras

  • Do high level vision tasks like question answering, object detection etc on frames

  • Visualize and interact with the results in real-time

  • All with high performance on low-cost edge hardware

⏱️ You’ll go from "unopened box" to live feed + local recording in 10–15 minutes.


What You'll Need

Your Phone or Any Camera

  • iPhone – use or Larix Broadcaster

  • Android – use

  • Optional: IP Cam (RTSP compatible) – e.g. TP-Link Tapo TC65 (~£29)

Hardware

  • Or your Linux laptop / PC

Software & Tools


Set Up Camera Streaming First

  • Start a stream and take note of the RTSP URL (e.g. rtsp://your-ip:8554/live)

  • Enable RTSP streaming

  • Get your stream URL (e.g. rtsp://192.168.1.x:8554/live)


Step-by-Step Setup

Clone the Repo

git clone https://github.com/kornia/bubbaloop.git
cd bubbaloop

Configure Your Camera

Edit src/cu29/pipelines/cameras_1.ron:

(
    tasks: [
        (
            id: "cam0",
            type: "crate::cu29::tasks::VideoCapture",
            config: {
                "source_type": "rtsp",
                // URL of the RTSP camera
                // rtsp://<username>:<password>@<ip>:<port>/<stream>
                "source_uri": "rtsp://tapo_entrance:123456789@192.168.1.141:554/stream2",
                "channel_id": 0,
            }
        ),
    ],
)

Install bubbaloop

sudo ./scripts/install_linux.sh

This will install all the necessary dependencies including Rust (if not installed on your computer) and start the system process. You can check the status via

systemctl status bubbaloop

for real time logs

sudo journalctl -u bubbaloop.service -f

Start a Camera Pipeline

bubbaloop pipeline start --name cameras

To stop:

bubbaloop pipeline stop --name cameras

List all pipelines:

bubbaloop pipeline list

Start a recording

bubbaloop recording start

To stop:

bubbaloop recording stop

Visualize with Rerun

python examples/python-streaming/client.py   --host 0.0.0.0 --port 3000 --cameras 0

Or view a recorded .rrd file:

scp your-device:/tmp/1735941642.rrd ./
rerun 1735941642.rrd

Running Paligemma for Object Detection (Experimental)

For now the pipelines are mutually exclusive. This means that before starting the inference you need to stop any running pipeline.

Now you can start safely the inference engine

bubbaloop pipeline start --name inference

Customise the prompt

You can change the prompt online with the following command

bubbaloop inference settings --prompt "Is there any human?"

Request the inference result

The inference result can be obtained using the following command

bubbaloop inference result

Client

Result: {
  "Success": {
    "channel_id": 0,
    "prompt": "Is there any human?",
    "response": "no",
    "stamp_ns": 141281452950
  }
}

Contribute / Feedback

Jetson Orin Nano (8GB) – (~$249)

Rust + Cargo —

Kornia-rs: high-performance vision tools in Rust —

Just: command runner —

for real-time visualization (optional but recommended)

Download

Install

Join our or open issues on .

kornia-rs
RTSP Stream
WebCamPro
Buy here from Seeed Studio
https://www.rust-lang.org/
https://github.com/kornia/kornia-rs
https://just.systems/
Rerun.io
RTSP Stream
WebCamPro
Discord server
GitHub
Page cover image