Changes

Jump to: navigation, search

LiveTranStack

198 bytes added, 05:29, 26 January 2017
formatting, etc
[[Category:Ongoing_Projects]]
== Description ==
* Hardware / Software solution to enable live interpretation of talksevents, anywhere there's IP and power (we could use power banks as USB UPSs)  ''Could be simplified as a simple IP intercom / duplex HW-SW stack''
== Goal ==
== HW details ==
We need a mute momentary switch. Also a buzzer (to diagnose start-up / majors problems).
All of what follows will be implemented twice par device (or plus).
 * USB port for the audio devices, and a way to be sure which is which.* Two (digital?) pots (mic and headphone gains)* A enable/disable switch (with built-in led if cheap enough?)* One LED to indicate if a mic is open (if not inside switch).
We map the digipots to alsa volume controls.
'''Setup:'''
 
Parameters such as audio source (upstream) IP:port, also downstream IP:port and codec parameters are stored somewhere (sd)
 Also the language code of the stream (can we mux this somehow([https://www.xiph.org/ogg/doc/framing.html Maybe as a stream serial number]), or is it upstream's responsiblity) 
Optionally drive a 2line led display and have enough buttons to set ip:ports and number of devices?
'''On boot:'''
 
Enumerate USB devices. If one is absent, keep beeping its led. If both are absent, buzz till reset.
 
If an upstream is set, attempt connection. If no connection, buzz / blink in another pattern.
 
Software mix both sources and feed the output into an OGG Opus encoder. Stream this (UDP broadcast? or set ip:port)
 
(Optionally mix upstream with lower level)
 
'''While true:'''
 
while mute button is pressed:
Cut USB inputs. Don't change upstream level.
If no input is enabled, Upstream level = 1;
If at least one input is enabled, Upstream < 1;
On upstream failure: attempt reco (maybe double beep and blink)
On downstream failure: same (maybe triple beep and blink)
Cut USB inputs. Don't change upstream level.
 
* If no input is enabled, Upstream level = 1;
* If at least one input is enabled, Upstream < 1;
 
 
* On upstream failure: attempt reco (maybe double beep and blink)
* On downstream failure: same (maybe triple beep and blink)
* Figure out how to control audio volumes via GPIO
* Test the darn thing in a real setting
* Compare headsets for ambient noise resistance and comfort vs price / availability
* Monitor power use, derive estimation of battery-operation capacity
== Participants ==
* [[User:Fzn]] (Leader)
37
edits