Skip to content

dutchdronesquad/panevo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Panevo

Live production control for PTZ cameras and race broadcast operators.

Linting License

Docs · Roadmap · Hardware notes

Panevo is a desktop control surface for livestream operators who need fast, reliable PTZ camera control during live events.

Panevo showcase

What you can do

  • 🎥 Control PTZ cameras live - use operator-focused controls for pan, tilt, zoom, focus, stop, and emergency stop
  • 🎛️ Manage camera profiles - configure and switch between multiple cameras from one desktop app
  • 📍 Recall and store presets - keep a local named preset list mapped to camera preset numbers
  • 🔎 Probe cameras with ONVIF - discover camera metadata, media profiles, RTSP stream URIs, and numeric presets where supported
  • Use VISCA for responsive movement - keep VISCA as the default live control route for the tested Tenveo workflow
  • 🎬 Switch OBS scenes - connect to OBS websocket, show the active scene, and switch scenes from the Control view
  • 🏁 Monitor RotorHazard race state - connect to RotorHazard over Socket.IO, show active heat and race status, and keep race-aware automation paused when timing data is stale
  • ⌨️ Configure operator shortcuts - use foreground PTZ/zoom shortcuts in Control and global preset shortcuts while Panevo runs in the background
  • 🎮 Map control devices - select a standard gamepad/joystick-style input device, map axes and buttons, and gate live camera movement behind a deadman input

Tested hardware

Panevo has been validated with a Tenveo PTZ camera.

  • VISCA over IP using UDP
  • VISCA port 52381
  • ONVIF port 8080
  • Pan speed range 1-24
  • Tilt speed range 1-24
  • Zoom speed range 1-8

Hardware validation notes live in docs/hardware/tenveo-hardware.md.

Control device support currently targets devices exposed through the standard browser Gamepad API. Radio-style controllers are treated as standard input devices first, not as hardware-specific integrations.

How it works

  1. Add a camera profile with the camera IP address and protocol settings.
  2. Probe ONVIF when available to discover metadata, stream URIs, media profiles, and numeric presets.
  3. Select the active camera before moving or recalling shots.
  4. Operate the camera live with PTZ, zoom, focus, stop, and preset controls.
  5. Configure integrations, shortcuts, and control devices when you want OBS scene switching, RotorHazard race-state monitoring, keyboard-based controls, or mapped gamepad/joystick-style input.
  6. Keep preview external through OBS, NDI Studio Monitor, camera-native tools, or another confidence monitor.

Useful links

Sponsors

If Panevo helps your club, event, or race-day workflow, you can help fund continued development and maintenance.

Contributing

You are welcome to contribute to Panevo. You can find a guide on how to contribute in CONTRIBUTING.md.

Contributors

License

Distributed under the MIT License - see LICENSE for details.

About

Live production control for PTZ cameras and race broadcast operators

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Sponsor this project

  •  

Packages

 
 
 

Contributors