dgatwood / ndi_camera_control

An NDI-based and VISCA-based pan-tilt-zoom controller for Raspberry Pi or Rock Pi (with limited support for debugging on macOS).
BSD 3-Clause "New" or "Revised" License
22 stars 3 forks source link

GUI #8

Closed ETE-Design closed 10 months ago

ETE-Design commented 10 months ago

Hi.

This project seems interesting, and would like to try it out to control some PTZ Camera we have at a Swim Club where I'm volunteer... Is it easy to set up, and can it all be done trough the GUI? Do you have any Screenshoot of the GUI you have made for it? Seems like you still develop a little on this Project? Also whas thinking to ask one of my friends to make a Case I can 3D Print, that way you can angle the screen for an even better look :-) Looking forward to hear from you.

dgatwood commented 10 months ago

Be aware that most PTZ cameras don't support NDI. It tends to be supported only on high-end PTZ gear designed for pro video use. The vast majority of PTZ cams use RTSP, which this software does not support, and cannot easily be made to support (because it would involve using entirely different libraries to fetch the video data from the cameras, entirely different libraries to decode the video, etc.). So unless you know that your cameras support NDI, you'll probably be better off starting with software designed for general-purpose IP cameras, such as Camplayer.

Also note that this software has no GUI whatsoever other than copying the incoming video data to the screen as quickly as it can, plus a little bit of very simple rectangular box drawing for users who don't want to fool with wiring up LEDs to show which camera position preset is selected.

This software provides no support for controlling anything in the UI at all, because it doesn't run in X11. It's a command-line app that literally copies video data straight to the framebuffer. The reason for doing it this way is because the CPU can just barely decode some 1080p NDI streams. They're kind of heavyweight compared with what comes from a typical IP camera.

So I suspect that this is probably not the right starting point for what you're doing unless you're certain that your cameras are NDI-based, but feel free to borrow code from it and integrate it into your own project if it helps.