Files
@ c65119b66b00
Branch filter:
Location: light9/light8/README - annotation
c65119b66b00
3.3 KiB
text/plain
- no more kw args -- they didn't do anything. use configure to change
- no more kw args -- they didn't do anything. use configure to change
things instead.
- colortrough on the way to a more generic color fader, now called
colorfade
- get/set methods make FlyingFader seem more like a Scale
- no more kw args -- they didn't do anything. use configure to change
things instead.
- colortrough on the way to a more generic color fader, now called
colorfade
- get/set methods make FlyingFader seem more like a Scale
45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 45b12307c695 | Light 8 Lighting Control
------------------------
Installation
You'll need Python 2.2, Tk 8.x. Depending on your platform, you might
need SWIG as well. We also assume you have the same hardware that
we built. It shouldn't be too hard to adapt it to another system,
but we leave that as an exercise to the reader.
1. SWIG the parallel port C code. (optional, depending on platform,
compiler, etc.)
First,
shell> make parport_wrap.c
Then,
shell> make parportmodule.so
2. Create the necessary preference files.
shell> touch /tmp/light9.prefs
shell> touch /tmp/light9.prefs.dummy
Sadly, we didn't have the 5 seconds to add this to the code.
3. You're done. Sadly, Light 8 needs to be run as root, due to the nature of
of the parallel port interface. However, you can run it in dummy mode
without being root.
Live mode:
shell> su
<enter password>
shell> python light8.py real
or
Dummy mode:
shell> python light8.py
Introduction and Usage
Light 8 is a quick-and-dirty hack to produce a working
DMX controller written in Python and Tk. Our website,
http://light9.bigasterisk.com/danceshow, has more information.
We hope to produce a more elegant and flexible solution, known as
Light 9. Nevertheless, we found Light 8 useful, and perhaps other
lighting designers will as well.
As an example, we have included the configuration files for the dance
show that we used Light 8 on. Light 8 has two modes, dummy and live.
Each has it's own configuration file. Dummy uses ConfigDummy.py and
live uses Config.py. Speaking of which, you need to add something
after the command line to enter real mode so that you don't accidently
run the show (this may seem silly, but we were developing it on two
computers and didn't want to accidentally run it on both).
Dummy mode:
shell> ./rsn.py
Real mode:
shell> ./rsn.py real
(you could actually type anything for 'real', it just counts
arguments)
Config must include several structures. patch is a dictionary,
mapping channels to dimmers. However, unlike most light boards,
Light 8 supports named channels. Additionally, channels may have
multiple names. Furthermore, there is a 1-to-1 patch of channels
to dimmers. Here's an example patch to illustrate:
patch = {
('center neutral 1', 'main special') : 1,
'SL blue' : 3,
'SR blue' : 4,
}
In this patch, we can refer to dimmer 1 by two names, 'center
neutral 1' and 'main special'. We can also refer to it as '1' or 1
(either a Python string or int. Heck, maybe even a float, but I'm
not sure). Dimmer 2 can only be referred to as '2' or 2, since
the patch omits a name. Dimmer 3 can be referred to as 'SL blue',
'3', or 3. And so on...
Source file breakdown
---------------------
rsn.py - Main loop, I/O, GUI, persistence, etc
Xfader.py - 2-group crossfader widget and algorithm
Patch.py - Manages DMX channel naming
util.py - Some cue arithmetic functions
Subs.py - Submaster object, including effects gui api,
Config.py - Show-specific names and effect code
ConfigDummy.py - Show-specific names and effect code for dummy site
parport* - Parallel port interface code
|