1
NSkogstad-AUS/urt gui app

Rust eframe/egui desktop app with label and buttons to view Mac camera, play RTP H.264 stream, and update label from UDP notifs.

Rust RTP Video GUI

2024 Systems Engineer NSkogstad-AUS/urt_gui_app
rusteguigstreamerrtpsocketscommunication

Rust RTP Video GUI

Built for the Unimelb Rover Team to quickly view RTP H.264 camera feeds and monitor stream health. I wanted a single binary that ops teammates could run without wrestling with CLI flags.

Used eframe/egui for a native-feeling panel, wired gstreamer pipeline controls, and added small UDP listeners to surface stream events. Everything ships as one Rust binary so setup is painless.

Key Features

  • Wrapped gstreamer pipeline start/stop in a safe UI so teammates could restart streams quickly.:
  • Built a tiny UDP listener to surface stream events directly in the panel.:
  • Bundled everything into a single binary for macOS so no one had to juggle dependencies.:

Learnings

  • GStreamer pipelines are brittle without guardrails—reset paths and surface errors fast.
  • Rust's type system kept the UI and pipeline state in sync, preventing awkward edge cases.
  • Small ergonomics (auto-reconnect, inline status) matter a ton for robotics operators.
© 2026 Nicolai Skogstad