Camera Control is a software "remote control" for conference cameras, e.g. Tenveo NV10U.

Camera Control

Camera Control is a software "remote control" for conference cameras, e.g. Tenveo NV10U.

Smart access to stored positions and zoom settings:

Setup of settings:

Detailed user description is available in help / help (browser).
There you will also find notes to requirements and installation.

Background

This software was written because the hardware remote control provided with our camera was not feasable during online services in our church (EMK). The presenter has to optimize audio and control songs in parallel to the online service. Therefore a smart solution was required for controlling the camera.

With this software a simple solution is provided without overstress the presenter. Therefore only important views and settings are available.

Building

The software is written in the programming languange "Go". A "Go" installation is required, Official Go Webpage.

"Go" supports many operating systems. Therefore a portable UI was used: "Astilectron UI".

Currently only Windows was tested but the application should be portable to other operating systems as well.

You need to install the tool for building the application bundle "Astilectron-Bundler".
The application is built by calling "astilectron-bundler.exe" in the camera_control base directory. Afterwards you have to deliver the result "Camera Control.exe" with the "ui" and the "licenses" folder.

Windows Binary for Download

There is a binary for download available in menu "Actions": select a workflow run. In the section "Artifacts" download the zip archive: Camera-Control-windows-amd64.zip.

USB Protocol

The software uses Pelco-D protocol to access the camera. If your camera supports other protocols or commands they can be extended (see folder "camera"). The "Camera" interface just needs to be implemented for new protocols. The source file TenveoNV10U.go can be used as example. There is an unmaintained example of a Visca protocol, too.

Unfortunately the Tenveo camera has some protocol and firmware issues. Therefore focus and other features as powering on/off are not working. The Pelco-D protocol was supported better than other protocols, therefore it was used as base.

Info: The support of Tenveo answered but was not able to support a fix or even deliver a better documentation for the camera.

"ui" folder

The "ui" folder is located outside of the application bundle to easily change pictures and extend profiles.

Improvements and Donation

You are welcome to improve and extend the application as well as suggest improvements. A donation is appreciated, too. See the "about" dialog in the software.

Similar Resources

IP Camera Alarm Server to MQTT

IP Camera Alarm Server Universal Alarm Server for all your IP cameras in one place! Integrates well with Home Assistant, Node-Red, etc. Runs great on

Dec 8, 2022

Stream Camera based on TCP

Stream Camera based on TCP

streamera Term Project of Computer Networking streamera is a Stream Camera based on TCP, which contains client mode and server mode. Features Client M

Nov 11, 2022

Command line tool to copy images from a camera SD card to your hard drive

Command line tool to copy images from a camera SD card to your hard drive

Nov 26, 2021

Vigia-go-nats - Program for processing camera metadata

VIGIA MIGRAR O HOUSEKEEPER PARA O PYTHON Programa para processamento de metadado

Jan 10, 2022

Capture the stream of Images for a Raspberry Pi Camera in GoLang

piCamera This package is a wrapper for the raspivid command on the Raspberry Pi. To make development easier on a PC, there is are different Start() me

Mar 5, 2022

Remote control for presentations

Remote control for presentations

Presento The simplest possible cross-platform remote control for the presentations Current version with prompter looks like this: Setup Precompiled bi

Dec 14, 2022

Command line interface to windows clipboard over KiTTY remote-control printing

kclip Command line interface to windows clipboard over KiTTY remote-control printing About This tool behaves like the cat command, it just tries to pa

Dec 12, 2021

Ground control - Ground station software for my rover project (Mk II)

Prototype rover ground station code About This is part of a second iteration of a rover vehicle (the first being https://github.com/DanCrank/tank-bot-

Jan 3, 2022

A faster RWLock primitive in Go, 2-3 times faster than RWMutex. A Go implementation of concurrency control algorithm in paper Left-Right - A Concurrency Control Technique with Wait-Free Population Oblivious Reads

Go Left Right Concurrency A Go implementation of the left-right concurrency control algorithm in paper Left-Right - A Concurrency Control Technique w

Jan 6, 2023

Go Http Proxy with Authentication, Schedule Control, and Portal Control

goproxy Go Http Proxy with Authentication, Schedule Control, and Portal Control Why this tool? You may need to restrict my kids's youtube watch time i

Mar 27, 2022

Conception was an experimental project, looking for ways to make software development more efficient.

Conception was an experimental project, looking for ways to make software development more efficient.

Conception Note: All future development is done in the Go version. Conception is an experimental research project, meant to become a modern IDE/Langua

Jul 21, 2022

Software Transactional Locks

Software Transactional Locks

Software Transactional Locks Package stl provides multiple atomic dynamic shared/exclusive locks, based on Software Transactional Memory (STM) concurr

Nov 5, 2022

Uniqush is a free and open source software system which provides a unified push service for server side notification to apps on mobile devices.

Homepage Download Blog/News @uniqush Introduction Uniqush (\ˈyü-nə-ku̇sh\ "uni" pronounced as in "unified", and "qush" pronounced as in "cushion") is

Jan 9, 2023

Secure software enclave for storage of sensitive information in memory.

MemGuard Software enclave for storage of sensitive information in memory. This package attempts to reduce the likelihood of sensitive data being expos

Dec 30, 2022

A codename generator meant for naming software releases.

codename-generator This library written in Golang generates a random code name meant for naming software releases if you run short of inspiration. Cur

Jun 26, 2022

Golang (Go) bindings for GNU's gettext (http://www.gnu.org/software/gettext/)

gosexy/gettext Go bindings for GNU gettext, an internationalization and localization library for writing multilingual systems. Requeriments GNU gettex

Nov 16, 2022

A client software for acme-dns with emphasis on usability and guidance through setup and additional security safeguard mechanisms

acme-dns-client A client software for acme-dns with emphasis on usability and guidance through setup and additional security safeguard mechanisms. It

Dec 2, 2022

oDrop, a fast efficient cross-platform file transfer software for server and home environments

oDrop is a cross-platform LAN file transfer software to efficiently transfer files between computers, oDrop is useful in environments where GUI is not available.

Jun 4, 2022

F' - A flight software and embedded systems framework

F´ (F Prime) is a component-driven framework that enables rapid development and deployment of spaceflight and other embedded software applications.

Jan 4, 2023
Secure software enclave for storage of sensitive information in memory.

MemGuard Software enclave for storage of sensitive information in memory. This package attempts to reduce the likelihood of sensitive data being expos

Dec 30, 2022
Ots - The Bhojpur OTS is a software-as-a-service product used as an Object Tracking System based on Bhojpur.NET Platform for application delivery.

Bhojpur OTS - Object Tracking System The Bhojpur OTS is a software-as-a-service product used as an Object Tracking System based on Bhojpur.NET Platfor

Sep 26, 2022
Pinki - Pinki helps developers ship software with authenticity

Pinki Pinki helps developers ship software with authenticity. Use it anywhere yo

Jan 7, 2022
An experiment in software that has sovereignty over itself.

Sovereign An experiment in software that has sovereignty over itself. Why I Did This If you actually read through all of this, please let me know. You

Feb 11, 2022
A binary to control the Z-Cam line of cameras via API

The Z-Cam flagship line has an API of sorts. This can be used to control the camera--via a StreamDeck, say. This seems like a good enough reason to me

Nov 12, 2022
Cameradar hacks its way into RTSP videosurveillance cameras
Cameradar hacks its way into RTSP videosurveillance cameras

Cameradar An RTSP stream access tool that comes with its library Cameradar allows you to Detect open RTSP hosts on any accessible target host Detect w

Jan 3, 2023
This repo contains my presentation as well as the codebase for 4Developers Conference.
This repo contains my presentation as well as the codebase for 4Developers Conference.

Software is (Still) Eating the world! This repo contains the code as well as presentation of my talk at 4Developers Conference, Poland 2021. Please se

Jun 7, 2022
GUI application for Raspberry PI which allows simultaneous manipulation of infrared and nightvision cameras

IRNC GUI application for Raspberry PI which allows simultaneous manipulation of infrared and nightvision cameras IRNC stands for "InfraRed and Nightvi

Nov 25, 2021
Lottery program for Go Conference 2022 Spring Online

2022-Spring-Sponsors How to use Dump company names Dump company names into below files. cmd/gentest/_companies/platinum_gold.txt cmd/gentest/_companie

Jan 11, 2022
Go-ticket-booking-app - Simple CLI application which books tickets for a Go conference made to learn the fundamentals of Go programming language.

go-ticket-booking-app Simple CLI application which books ticket for a Go conference made to learn the fundamentals of Go programming language. Gorouti

Jan 2, 2022