A software system that supports video mixing, recording and streaming
</li>
<li>
- Designed particularly for the needs of technical conferences that
- want to record and stream on a limited budget. Now used more
- widely, often without streaming.
+ Primarily designed for free software conferences:
+ <ul class="incremental">
+ <li>
+ Record and stream for maximum community benefit
+ </li>
+ <li>
+ Budget is usually quite limited
+ </li>
+ <li>
+ We have eager volunteers but not much time to train them
+ </li>
+ </ul>
+ <li>
+ Now used more widely, often without streaming
</li>
<li>
- Mixing is <em>live</em> - a requirement for streaming, and a way to
- avoid the need for extensive editing after the event
+ Mixing is <em>live</em> - required for streaming, and avoids the
+ need for extensive editing after the event
</li>
<li>
- Mixing is <em>interactive</em> - a requirement for good coverage of
- presenters, audience and slides, but very limited in other
+ Mixing is <em>interactive</em> - required for good coverage of
+ presenters, audience and slides; very limited in other
streaming software
</li>
</ul>
A general video editor
</li>
<li>
- An audio mixer (but it does implement audio dubbing and level monitoring)
+ An audio mixer - audio functionality is limited to dubbing and
+ level monitoring
</li>
<li>
A complete recording and publishing system
<div class="slide">
<h1>The 'DV' in DVswitch</h1>
<p>
- The name refers to the DV formats used by many video cameras:
+ The name refers to the DV format used by many video cameras:
</p>
<table>
<tr>
</ul>
</li>
</ul>
+ <div class="handout">
+ <p>
+ DIF is the DV Interchange Format, sometimes referred to as 'raw
+ DV' although it is a container format in its own right.
+ </p>
+ </div>
</div>
<div class="slide">
</div>
<div class="slide">
- <h1>Mixer</h1>
+ <h1>Mixer UI</h1>
<object data="screenshot-1.png" width="50%"></object>
</div>
<div class="slide">
- <h1>Mixer</h1>
+ <h1>Mixer UI, annotated</h1>
<object data="screenshot-1-annotated.png" width="50%"></object>
</div>
+<div class="slide">
+ <h1>Mixer internals</h1>
+ <object data="dvswitch-internal.svg" width="90%" height="90%"></object>
+ <div class="handout">
+ <p>
+ To simplify the diagram, I omitted connection setup, tally light
+ and recording control, and the internal sinks that haven't been
+ implemented yet.
+ </p>
+ <p>
+ All these interfaces have limited-length queues. If a queue
+ fills up, frames have to be dropped - we must not block or use
+ unlimited memory!
+ </p>
+ <p>
+ The mixer clock thread maintains a frame clock at about 25 or
+ 30 Hz depending on the video system, constantly adjusted to
+ follow the audio source.
+ </p>
+ </div>
+</div>
+
</body>
</html>