Skip to content

Commit

Permalink
README.md: updated and added TODOs
Browse files Browse the repository at this point in the history
  • Loading branch information
tolga9009 committed Jun 20, 2015
1 parent 8da87b3 commit 6f73b1d
Showing 1 changed file with 23 additions and 33 deletions.
56 changes: 23 additions & 33 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,28 +3,32 @@ Elgato Game Capture HD - Linux drivers

Reverse engineering the Elgato Game Capture HD to make it work under Linux.

We all love out Elgatos, we all love our Linux machines. I've been in contact
with Elgato several times and talked with them about this topic; they don't plan
on adding Linux support and they also can't help Linux developers, due to NDA
restrictions.
We all love our Elgatos, we all love our Linux machines. I've been in contact
with Elgato several times and talked to them about this topic, but they don't
plan adding Linux support and they also can't help Linux developers, due to NDA
restrictions. As a result, they can't support any reverse engineering efforts.

So, the only chance is by getting our hands dirty and reverse engineer it on our
own. Everyone who can help us is welcome, it doesn't matter if you want to
program, improve the documentation, research, provide webspace or simply test
and give us feedback.
Everyone who can help us is welcome, it doesn't matter if you want to program,
improve the documentation or research. Please note, that this driver is in a
very early development stage and not ready for use.

Currently, it's possible to receive a 720p60 HDMI input and save it to a file.

First Step
==========
Please note, that we can't take any feature requests, as we are currently in the
process of figuring out, how the device actually works.

In order to write a driver, we need to fully understand, how the device works.
I have now got my hands on a working OpenVizsla USB 2.0 analyzer and was able to
capture all necessary USB packets. Our job is to mimic the traffic between the
GCHD and the host.

Current TODOs
=============

How the device works
============================
- port C++ code to C code
- implement sparam, slsi, statechange, scmd, boot and dlfirm functions
- figure out i2c write and i2c stat functions
- 1080p support


About the device
================

After studying the video output and USB packets, the Elgato Game Capture HD
seems to be one hell of device! This little thing directly outputs compressed
Expand Down Expand Up @@ -85,24 +89,10 @@ Steven Toth from Kernel Labs noted, that the device is outputting native
ISO13818 TS packets. Once the device is set up, we should be able to get the
video stream without any encoding. Thank you Steve for the hint!

However, the difficult part is to setup the device in order to stream the data.
Everything we have are multiple capture logs, which we need to study and
understand. You can find the latest capture logs under issue #2 at GitHub. If
you find anything interesting, please let us know.


Drivers
=======

Currently, we've fully implemented the transfer of both binary files. The next
step is to figure out, how the host is configuring the GCHD and receiving audio
and video.


What we need and how you can help
=================================

The primary platform, where we share our efforts, will be GitHub. If you're
interested, just shoot us a message and tell us, what you want to do and we will
add you ;). This project surely can't be realized by one person in a reasonable
amount of time.
The official repository of this driver can be found at
https://github.com/tolga9009/elgato-gchd. This is our primary platform for
sharing information. If you are willing to help, please get in touch with us.

0 comments on commit 6f73b1d

Please sign in to comment.