back

Dissecting HDMI

Developing open, FPGA-based capture hardware for conference & user group recording

If you suspend your transcription on amara.org, please add a timestamp below to indicate how far you progressed! This will help others to resume your work!

Please do not press “publish” on amara.org to save your progress, use “save draft” instead. Only press “publish” when you're done with quality control.

Video duration
01:03:18
Language
English
Abstract
Ever wondered what is actually happening when a speaker can't get their laptop to project? While developing the FPGA-based <a href="https://hdmi2usb.tv">HDMI2USB.tv open hardware for recording conferences</a>, we discovered just how convoluted the HDMI protocol can be. Come hear all the horrible details!

<p>
The <a href="https://code.timvideos.us">TimVideos.us group</a> aims to make it easy for anyone to create high quality recordings of conferences and user groups. To achieve this goal we have developed the <a href="https://hdmi2usb.tv">HDMI2USB.tv project, an FPGA based, fully open (hardware and firmware) solution for capturing HDMI video signals</a>. The solution has been in use since late 2015 and used at numerous conferences such as <a href="https://linux.conf.au">Linux.conf.au</a>, <a href="https://debconf.org">DebConf</a> and many PyCon conferences around the world.
</p><p>
To be truly FOSS has however meant developing code for doing HDMI receiving and sending. Come hear about all the issues we have run into and the nitty gritty details about how it works (or doesn't!). By the end of the talk you will know more than you ever wanted to about the HDMI protocol!
</p><p>
This talk will cover:
<ul>
<li>The HDMI video standard, including
<ul>
<li>An overview of the many protocols and standards required. </li>
<li>A high level description of the low speed protocols needed such as DCD (EDID) and CEC. </li>
<li>A indepth dive into the high speed TMDS protocol and encoding. </li>
</ul>
</li>
<li>How to build a HDMI receiver and transmission to run on an FPGA. </li>
<li>War stories from trying to use the HDMI2USB capture device for recording FOSS conference, including;
<ul>
<li>Why your HDMI cable can actually matter. </li>
<li>Some of the reasons why plugging in a screen doesn't always "just work". </li>
<li>Doing error correction on a protocol which doesn't have any. </li>
</ul>
</li>
</ul>
</p><p>
All code and materials and hardware covered in this talk are released under OSI approved licenses.
</p>

Talk ID
8057
Event:
33c3
Day
3
Room
Saal 1
Start
5:15 p.m.
Duration
01:00:00
Track
Hardware & Making
Type of
lecture
Speaker
Tim 'mithro' Ansell
Talk Slug & media link
33c3-8057-dissecting_hdmi

Talk & Speaker speed statistics

Very rough underestimation:
128.8 wpm
685.5 spm
131.2 wpm
693.5 spm
100.0% Checking done100.0%
0.0% Syncing done0.0%
0.0% Transcribing done0.0%
0.0% Nothing done yet0.0%
  

Work on this video on Amara!

Talk & Speaker speed statistics with word clouds

Whole talk:
128.8 wpm
685.5 spm
databitpixelbitshdmicontrolencodingtalkhardwarefpgasymbolssourceopentimquestiondcthingsbiasclockchannelthing10speedworksymbolpeoplediagramerrorsgoodproblemshighchannelscapturetimenumberpretty8edidcablebluevgaschemehelp50understandlovetransitionsdvi1slow
Tim 'mithro' Ansell:
131.2 wpm
693.5 spm
datapixelbitsbitencodingcontrolhdmitalksymbolsdcbiaschannel10thingspeedclocksymbolthingsdiagramedid8channelshardwaretimeworkbluecaptureproblemsvgaschemepeoplefpgaopensourcedvi50hightransitionsprettyunderstandnegative1sgoodbunchprotocolresolutioneepromxorvalidtalking