[Vorbis] Re: New Media Codec: Audio, Video & Atmosphere Lighting help

Gregory Maxwell gmaxwell at gmail.com
Tue Mar 11 18:16:35 PDT 2008


On Tue, Mar 11, 2008 at 8:57 PM,  <xiphmont at xiph.org> wrote:
> There is one additional thing to consider.
>
>  I would expect DMX or the like to be a discontinuous-time codec.

Not if it encodes the protocol directly... DMX is RS485 serial data at
a constant rate of 250000 bits per second.  There is something like a
two byte header, than up to 512 data-bytes. One for each DMX channel
indicating the value of that channel.   This data is repeated ~40
times a second.

It's possible to truncate packets and thus send lower numbered
channels faster, but thats usually not worthwhile because you can only
truncate.. you can't discontiguously access only those channels which
have changed, and most importantly DMX's error resistance comes almost
entirely from the fact that glitches will be erased a ~40th of a
second later.

(This is also why DMX is an utterly lame protocol for moving heads,
strobe lights, and other devices where a momentary glitch could be
embarrassing or dangerous (virtually everything except dimmers)... and
why some devices have implemented additional measures using extra
channels to avoid spurrious operation).

... Though an efficient DMX codec would probably convert the data into
something 'event' like. My own DMX control systems were mostly midi ..
with a translation box I crated that spat out DMX, with a number of
horrible hacks for situations where I needed frame-accurate DMX output
(fast strobe sequences, yecch).

You owe the oracle a DMX interface card that generates an interrupt at
the end of every full update.


More information about the Vorbis mailing list