1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4 <html xmlns="http://www.w3.org/1999/xhtml">
7 <title>DVswitch - Ben Hutchings - LCA2011</title>
9 <meta name="generator" content="S5" />
10 <meta name="version" content="S5 1.1" />
11 <meta name="author" content="Ben Hutchings" />
12 <!-- configuration parameters -->
13 <meta name="defaultView" content="slideshow" />
14 <meta name="controlVis" content="hidden" />
15 <!-- style sheet links -->
16 <link rel="stylesheet" href="s5-blank/ui/default/slides.css" type="text/css" media="projection" id="slideProj" />
17 <link rel="stylesheet" href="s5-blank/ui/default/outline.css" type="text/css" media="screen" id="outlineStyle" />
18 <link rel="stylesheet" href="s5-blank/ui/default/print.css" type="text/css" media="print" id="slidePrint" />
19 <link rel="stylesheet" href="s5-blank/ui/default/opera.css" type="text/css" media="projection" id="operaFix" />
20 <style type="text/css">
21 .logo { position: absolute; right: 0; top: 0; height: 100% }
22 table { border-collapse: collapse }
23 th { border-bottom: 2pt solid black }
24 th, td { padding: 0 6pt }
27 <script src="s5-blank/ui/default/slides.js" type="text/javascript"></script>
32 <div id="controls"><!-- DO NOT EDIT --></div>
33 <div id="currentSlide"><!-- DO NOT EDIT --></div>
35 <object class="logo" data="lca2011.svg"></object>
45 <div class="presentation">
49 <h3>Ben Hutchings</h3>
54 <h1>What is DVswitch?</h1>
55 <ul class="incremental">
57 A software system that supports video mixing, recording and streaming
60 Designed particularly for the needs of technical conferences that
61 want to record and stream on a limited budget. Now used more
62 widely, often without streaming.
65 Mixing is <em>live</em> - a requirement for streaming, and a way to
66 avoid the need for extensive editing after the event
69 Mixing is <em>interactive</em> - a requirement for good coverage of
70 presenters, audience and slides, but very limited in other
77 <h1>What is DVswitch <em>not</em>?</h1>
79 There are limited developer resources and limited goals for
80 DVswitch. It is never intended to be:
82 <ul class="incremental">
84 A general video editor
87 An audio mixer (but it does implement audio dubbing and level monitoring)
90 A complete recording and publishing system
93 <p class="incremental">
94 These are all better handled by other software and
100 <h1>The 'DV' in DVswitch</h1>
102 The name refers to the DV formats used by many video cameras:
106 <th>Profile</th><th>Specification</th><th>Video codec</th><th>Supported</th>
109 <td>Basic DV</td><td>IEC 61834</td><td>DV 25</td><td>yes</td>
112 <td>DVCAM</td><td>Sony proprietary</td><td>DV 25</td><td>probably</td>
115 <td>DVCPRO</td><td>SMPTE 314M</td><td>DV 25</td><td>probably</td>
118 <td>DVCPRO50</td><td>SMPTE 314M</td><td>DV 50</td><td>not yet</td>
121 <td>DVCPRO HD</td><td>SMPTE 370M</td><td>DV 100</td><td>not yet</td>
124 <td>HDV</td><td>IEC 61834</td><td>MPEG-2</td><td>no</td>
128 DV video codecs compress each frame separately (unlike MPEG)
130 <div class="handout">
132 The lack of interframe compression means there is relatively
133 little delay between camera and mixer and we can cut between
134 sources without having to decode all sources all the time.
135 In fact, DVswitch doesn't need to decode even a single source at
136 full frame rate if you just cut between sources without using
140 Unfortunately, most of today's consumer cameras don't have DV
141 output and may not provide live video output at all.
147 <h1>Overview of the system</h1>
149 A simplified view of the typical components:
151 <object data="dvswitch-simple.svg" width="60%" height="60%"></object>
156 <ul class="incremental">
158 Source types: firewire/USB DV device, ALSA capture device,
162 Physical sources are spread around room and connected to the
163 mixer via TCP/IP networking
166 Original protocol: mixer runs a network server; sources run as
167 clients and send DIF over TCP
168 <ul class="incremental">
170 Requires a script to coordinate mixer and source startup -
171 an annoying complication
175 Later enhancement: tally lights
178 Next release: sources run as RTP/RTSP servers and mixer
179 connects to them as a client
180 <ul class="incremental">
182 No custom scripts required; just configuration files
191 <ul class="incremental">
193 Sink types: DIF files, pipe to arbitrary command
196 Also connected using TCP/IP networking, though this is not such
197 a good idea for recording
200 Original protocol: mixer runs a network server; sinks run
201 as clients and receive DIF over TCP
204 Later enhancement: sink reports whether it will record;
205 mixer can start, stop and cut recording
208 Next release: file and pipe sinks built into mixer along with an
216 <object data="screenshot-1.png" width="50%"></object>
221 <object data="screenshot-1-annotated.png" width="50%"></object>