= tallycom ---- dataentry project ---- name : tallycom project-owner_wiki : [[people:derpeter]] # project-members_wiki : [[people:derpeter]], [[people:danimo]] # git-url_url : https://github.com/voc/voctomix/tree/voctopanel/example-scripts/voctolight project-description : This is a tallylight and intercom solution designed to be used with voctomix project-status_ : running ---- == TODOs * voctolight: reconnect automatically when voctocore is restared * find PTT buttons to be mounted on the tripod handle == Feature Requests * [Thorti] Unterschiedliche Configs für Tallycom (Kamera vs. Mischer/VOC-Office). Kamera= LED leuchtet, wenn Cam in Verwendung; Mixer/Office= LED leuchtet, wenn jemand im Channel spricht * [Thorti] Möglichkeit für SaalAV-Mensch in mehreren Räumen gleichzeitig zu hören, aber nur in einem zu sprechen, um z.B. im Kanal zwischen Kamera/Mischer zu agieren und gleichzeitig im VOC-Channel erreichbar zu sein. * [Thorti] Beltbak-Lösung für mobil mit WLAN (Halterung mit Gürtelklammer?). Stromversorgung via Powerbank. == Hardware The pi (3) can either use its build in wifi with the a wifi provided by the wrt or in case of congress could also use the WPA2-enterprise network. Alternative ethernet can be used === tallypi The current hardware is a Raspberry Pi 3, we need evaluate if the intercom part also works stable with an older pi. * 1x RPI 3 ca 35€ * 1x RPI Case and power suppply + flash mount 10-20€ * 1x SD Card ~10€ * 1x LED + Resistor ~2€ (for voctolight) === Headset and sound card as it has turned out, the logitech headsets are not suitable for live envirenments. Therefore we looked into other options * Superlux_hmc_631 [[https://www.thomann.de/intl/superlux_hmc_631_white.htm]] * superlux hmc 681 evo [[https://www.thomann.de/intl/superlux_hmc_681_evo.htm]] * USB sound device with volume controle [[https://www.amazon.de/Soundkarte-TechRise-Lautstärkeregler-Kontrolle-Tablet-PC]] * Adapter für Notebooks https://www.amazon.de/Sennheiser-PCV05-Adapter-Gaming-Headsets/dp/B00E4DHO44 {{:projects:tally1.jpg?400|}} {{:projects:tally2.jpg?200|}} {{:projects:tally4.jpg?200|}} {{:projects:tally3.jpg?200|}} ==== prototype alpha {{:hardware:cwf7awkwiaejgfc.jpg?200|}} ==== current inventory * [[projects:tallycom:bestand]] === 5V from cam power supply for tallycom {{:projects:psu-closed.jpg?400|}} {{:projects:psu-open.jpg?400|}} {{:projects:psu-cam.jpg?400|}} Our JVC Cams run on 12V and the Panasonic on 7,5V, therefore we have a step-down converter which provides 5V for the tallycom. \\ We use a LM2596S DC-DC stepdown converter which has an input voltage range from 1,5 - 35V and can provide up to 3A. \\ This should work with most other cams to as long as you are not to close to 5V. \\ == Tally software === voctolight (old version) voctolight is a tellylight part of this project. It listens on the voctomix control channel. The code is developed in the voctomix repository in the exemple scripts dir. To get started you need a LED and a resistor. For a normal red LED this would be 330Ohm. Connect the LED with its + to pin 11 and with its - to GND (pin 6) setup: ssh voc@10.73.1.15 cd /opt/voctomix/release/example-scripts/voctolight/ vim config.ini sudo systemctl restart voctolight.service === tally (new version) The new version of the tally software uses all three colors of the LED: * red indicates the source being live * green indicates the source being in preview (pending support in Voctocore) * blue indicates a loss of connection to the Voctocore host It shares much code with the Voctoknopf software and is therefore hosted in the same repository. Installation works as follows: $ git clone https://github.com/rlutz/voctoknopf $ scp -r voctoknopf/src voc@10.73.1.15:tally-src $ ssh voc@10.73.1.15 ~ $ cd tally-src/ ~/tally-src $ make all-tally ~/tally-src $ sudo make install-tally ~/tally-src $ sudo vim.tiny /etc/tally.conf ~/tally-src $ sudo reboot When replacing the old software with the new one, don't forget to disable the old ‘voctolight’ service before rebooting. Once installed, the configuration can be changed as follows: $ ssh voc@10.73.1.15 ~ $ sudo vim.tiny /etc/tally.conf ~ $ sudo systemctl restart tally For more documentation, see https://github.com/rlutz/voctoknopf/blob/master/src/Tally.md == Intercom software === voctocom To get a audio connection between mixer and camera operator we run a command line mumble client on an rasperrypi 2/3 connected to an USB Headset. For small events, this client connects to a mumble server on the voctogui laptop (or the cube / minion); for bigger event to, a central one running in the server case. Another option would be SIP, but mumble seems to better fit the requirements. The mixer operator should be able to use push to talk with the keyboard of the mixer or an button in the UI. The camera operators should be able to use the button on the headset for push to talk. * It could be useful to let the mixer operator to switch the behavior of all clients to open mic. * operator should be able to listen to all rooms in a common channel * LED / Notification device for the voc office * Visual Call: LCD / LED notification for mention / call ==== Taliepi c.f. https://github.com/dchote/talkiepi and https://github.com/dchote/talkiepi/tree/master/doc To change the configuration edit `/etc/systemd/system/mumble.service` TODO: check/fix systemd unit – workaround: run manually inside of screen Does not ===== Setup see https://github.com/dchote/talkiepi/tree/master/doc You need to edit `/usr/share/alsa/alsa.conf` and change `defaults.ctl.card 1` and `defaults.pcm.card 1` ==== barnard This is based on a RasPi 3 and Raspian: First, create /etc/asound.conf with the following contents: pcm.!default { type plug slave.pcm { @func getenv vars [ ALSAPCM ] default "hw:Headset" } } This will map the Headset to be the default sink/source for audio. This app is written in Go, so we need to install go first, plus a few dependencies written in C, which we pull in via APT. They handle sound and opus encoding respectively: cd ~ # Get golang for ARM: https://golang.org/dl/ (get go?.?.?.linux-armv6l.tar.gz) tar xvfz go?.?.?.linux-armv6l.tar.gz apt install libopus-dev libopenal-dev export GOPATH=$HOME/gocode Next, we can build barnard, a gui-based client, that you may want to run in a screen session for production purposes. ~/go/bin/go get github.com/layeh/barnard ~/go/bin/go compile github.com/layeh/barnard #set GOARM=7 to get ARMv7-optimized code strip ~/gocode/gocode/src/github.com/layeh/barnard/main sudo cp ~/gocode/gocode/src/github.com/layeh/barnard/main /usr/local/bin/barnard # (exported.pem is the cert exported from the official mumble client as exported.p12, # and then run thrugh "openssl pkcs12 -in ~/exported.p12 -out ~/exported.pem -nodes" barnard server="mumble.server.example.net:64738" -username=cam1 -insecure=true -certificate=exported.pem GUI shortcuts: F1 mutes/unmutes on a protocol level, F10 quits.