Files @ 4bab5bbce195
Branch filter:

Location: light9/doc/talk.py

drewp@bigasterisk.com
show-specific changes
def light9_presentation():
    """
    Drew Perttula

    drewp@bigasterisk.com

    http://light9.bigasterisk.com


    Goals of light9:

    - control the brightness of many lights while playing music

    - allow easy editing of the show

    - allow easy maintenance of the code, even while the show is running








    """









def dependencies():
    """
    Twisted - event loop and networking
    TwistedWeb - xmlrpc protocol
    tk, tix
    pympd - my twisted interface to mpd
    pydispatcher - signals

    mpd - music player daemon

    swig - interface to C code
    darcs

*






    """





def connections():
    """
               (play cmds)
    ascoltami --------------> mpd ----------> audio out
        | (timing)
        v
    curvecalc    subcomposer    keyboardcomposer
        |            |                 |
        +---         |             ----+
            \-----   |    --------/
                  \--+---/
                     | (light levels)
                     v
*                dmxserver
                    | (dmx levels)
          ......... v ....................
          .      chippy                  .
          .         | (dmx)              . external hardware
          .         v                    .
          .      dmx dimmer              .
          .         | (juice)            .
          .         v                    .
          .      light                   .
          ................................
    """


def metrics():
    """
    selected linecounts:
      356 ascoltami              (music player)
      318 curvecalc              (curve and expression editor)
      279 keyboardcomposer
      189 dmxserver              (hardware output)
      153 subcomposer
       17 wavecurve              (create smoothed waveforms from .wav)

      311 light9/curve.py        (curve widgets)
      191 light9/FlyingFader.py  (enhanced tk.Scale)
      168 light9/Submaster.py
*     151 light9/zoomcontrol.py
      137 light9/dmxchanedit.py
       40 light9/wavepoints.py

       65 light9/io/parport.c    (dmx interface protocol)
       50 light9/io/serport.i    (i2c interface to sliders)

    total in project: about 3200 in about 30 files

    """



def future_projects():
    """
    A submaster server that talks with the other programs and
    eliminates all the explicit saving and reloading of subs

    More abstract output layer, to which I can add home lighting, for
    example

    Small timed 'clips' that can be triggered

    Generalize to a whizzy, distributed real-time circuit simulator
    node network with a 5GL editor and failsafe checkpointing and
    redundancy
*



    """