How jola7898/terraform works
RTVIO is a self-hosted video-to-georeferenced-3D reconstruction product, with Studio, Android phone capture, and drone ingestion. Its main flow is session capture or video upload, reconstruction, then viewing and export; live reconstruction is an additional path. The graph preserves the documented pipeline and major product branches. Some links rely on the README’s system diagrams and code tour; unsampled modules are represented only where the tree and README support them.
Main entry points: vggt_reconstruct.py VGGT reconstruction · server.py Studio server · live_pipeline.py Live reconstruction · StreamingSession.kt Streaming session
Components 29
Capture and ingest
- Drone link
rtvio/src/rtvio/studio/drone_link.py - MAVLink telemetry
rtvio/src/rtvio/studio/mavlink.py - Phone receiver
rtvio/src/rtvio/studio/phone_link.py - Stream source
rtvio/src/rtvio/stream/source.py - Stream protocol
rtvio/src/rtvio/stream/protocol.py
Studio and control
- Studio web UI
rtvio/src/rtvio/studio/web/app.js - Studio server
rtvio/src/rtvio/studio/server.py - Reconstruction jobs
rtvio/src/rtvio/studio/jobs.py - Session data
rtvio/src/rtvio/studio/server.py
Reconstruction
- Live reconstruction
rtvio/src/rtvio/live_pipeline.py - VGGT worker
rtvio/src/rtvio/vggt_worker.py - VGGT reconstruction
rtvio/src/rtvio/vggt_reconstruct.py
Geometry and output
- Camera model
rtvio/src/rtvio/camera_model.py - Point fusion
rtvio/src/rtvio/fusion.py - Georeferencing
rtvio/src/rtvio/georeference.py - Geodesy
rtvio/src/rtvio/stream/geodesy.py - Surface and mesh
rtvio/src/rtvio/surface.py - Model export
rtvio/src/rtvio/export.py - 3D outputs
rtvio/src/rtvio/export.py
Android app
- Camera capture
rtvioapk/app/src/main/java/com/rtvio/mapper/capture/CameraCapture.kt - Streaming session
rtvioapk/app/src/main/java/com/rtvio/mapper/service/StreamingSession.kt - Offline recorder
rtvioapk/app/src/main/java/com/rtvio/mapper/capture/LocalSessionRecorder.kt - Phone stream client
rtvioapk/app/src/main/java/com/rtvio/mapper/net/StreamClient.kt - Session transfer
rtvioapk/app/src/main/java/com/rtvio/mapper/net/SessionTransferClient.kt - Phone settings
rtvioapk/app/src/main/java/com/rtvio/mapper/data/SettingsManager.kt
Other components
- Phone operator
- Drone
- Browser user
- Video or frames
Connections 32
- Phone operator → Camera capture: records
- Camera capture → Streaming session: supplies frames
rtvioapk/app/src/main/java/com/rtvio/mapper/service/StreamingSession.kt - Streaming session → Offline recorder: records offline
rtvioapk/app/src/main/java/com/rtvio/mapper/service/StreamingSession.kt - Streaming session → Phone stream client: streams frames
rtvioapk/app/src/main/java/com/rtvio/mapper/service/StreamingSession.kt - Streaming session → Phone settings: reads settings
rtvioapk/app/src/main/java/com/rtvio/mapper/service/StreamingSession.kt - Phone operator → Session transfer: transfers recording
- Phone stream client → Phone receiver: sends packets
- Phone receiver → Stream source: receives stream
rtvio/src/rtvio/studio/phone_link.py - Stream source → Stream protocol: decodes packets
rtvio/src/rtvio/stream/source.py - Drone → Drone link: provides video
- Drone link → MAVLink telemetry: reads telemetry
rtvio/src/rtvio/studio/drone_link.py - Video or frames → Studio server: uploads footage
- Browser user → Studio web UI: uses
- Studio web UI → Studio server: calls API
- Studio server → Session data: manages sessions
rtvio/src/rtvio/studio/server.py - Studio server → Phone receiver: starts receiver
rtvio/src/rtvio/studio/server.py - Studio server → Drone link: controls drone
rtvio/src/rtvio/studio/server.py - Studio server → Reconstruction jobs: queues jobs
rtvio/src/rtvio/studio/server.py - Reconstruction jobs → VGGT worker: dispatches work
- VGGT worker → VGGT reconstruction: runs model
rtvio/src/rtvio/vggt_worker.py - Stream source → Live reconstruction: fans out packets
rtvio/src/rtvio/live_pipeline.py - Live reconstruction → Camera model: uses intrinsics
rtvio/src/rtvio/live_pipeline.py - Live reconstruction → Geodesy: uses GPS conversion
rtvio/src/rtvio/live_pipeline.py - Live reconstruction → Session data: records session
- VGGT reconstruction → Camera model: rectifies lenses
rtvio/src/rtvio/vggt_reconstruct.py - VGGT reconstruction → Point fusion: fuses points
rtvio/src/rtvio/vggt_reconstruct.py - VGGT reconstruction → Surface and mesh: builds mesh
rtvio/src/rtvio/vggt_reconstruct.py - VGGT reconstruction → Georeferencing: anchors model
rtvio/src/rtvio/vggt_reconstruct.py - Georeferencing → Geodesy: converts coordinates
rtvio/src/rtvio/vggt_reconstruct.py - VGGT reconstruction → Model export: exports models
rtvio/src/rtvio/vggt_reconstruct.py - Model export → 3D outputs: writes
- Browser user → 3D outputs: views results