Skip to content

plugorgau/eventstreamr-station

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Aug 2, 2015
7ababd9 · Aug 2, 2015
Jan 29, 2015
Nov 21, 2014
Aug 2, 2015
Jan 7, 2015
Aug 2, 2015
Dec 26, 2014
Jan 28, 2015
Aug 2, 2015
Nov 21, 2014
Feb 1, 2015
Nov 21, 2014
Aug 2, 2015
Jan 9, 2014
Jan 28, 2015

Repository files navigation

eventstreamr Build Status Coverage Status

Single and multi room audio visual stream management.

Installation

Your best bet is to install using cpanm + local::lib. This will install everything under your user directory and will avoid polluting your system perl libraries. It's also how PLUG + LCA use it.

Grab cpanm + local::lib

$ sudo apt-get install cpanminus liblocal-lib-perl

Configure local::lib if you haven't already done so:

$ perl -Mlocal::lib >> ~/.bashrc
$ eval $(perl -Mlocal::lib)

Install from CPAN

cpanm App::EventStreamr

Configuration

You can run through the host configuration wizard with '--configure'.

$ eventstreamr --configure
Welcome to the EventStreamr config utility

It will clear the current config, is this ok? y/n [n]: y
Room - For record path and controller [test_room]: 
backend - DVswitch|GSTswitch [DVswitch]: 
Mixer - Video mixer interface y/n [y]: y
host - switching host [127.0.0.1]: 
port - switching port [1234]: 
$room + $date can be used as variables in the path and
will correctly be set and created at run time
recordpath -  [/tmp/$room/$date]: 
Ingest - audio/video ingest y/n [y]: 
Enable 'Oculus VR Inc. Camera DK2' for ingest [y]: n
Enable 'Chicony Electronics Co.  Ltd. ASUS USB2.0 Webcam' for ingest [y]: 
Enable 'C-Media Electronics, Inc. ' for ingest [y]: 

Config written successfully

Command Line

You can list out the devices available using '--devices'

$ eventstreamr --devices
ID (Type) - Name
video0 (V4L) - Oculus VR Inc. Camera DK2
video1 (V4L) - Chicony Electronics Co.  Ltd. ASUS USB2.0 Webcam
0d8c:0008 (ALSA) - C-Media Electronics, Inc. 

Concepts

A station can have one or more roles. Only one controller can manage stations.

Roles

  • controller - Web based frontend for managing stations
  • ingest - alsa/dv/v4l capture for sending to mixer
  • mixer - DVswitch/streaming live mixed video. With the intention for this to be easily replaced by gstswitch
  • stream - stream mixed video
  • record - stream mixed video
  • sync - rsync files to a central server (requires keyless ssh to be configured)

Directories

  • baseimage - docs, notes, and tools for the base (OS) image
  • station - station management scripts
  • controller - controller stack

Station Script Requirements

See package.deps for list of packages required

Known Issues

A list of known issues that cause minor problems, but have workarounds.

Daemon dies when alsa device isn't present on start

  • Ensure all configured ALSA devices are plugged in on boot

Correctly Restart on Date Change

  • Reboot or Restart the EventStreamr Daemon (pressing update from the controller will restart it)