True "HDMI" with data packets...
All of the ususal (?) "HDMI" drivers actually just generate DVI-spec pure video. It'd be nice to figure out how to insert audio packets, but for now I'm just trying to generate an AVInfoFrame packet to set the monitor into YCbCr mode, just because that's easier: It only needs one packet that always stays the same and the result should be immediately obvious when it starts working.
But problematically, it seems that I only have junky HDMI devices. One is extremely flakey and now doesn't want to do with tests that worked an hour ago and the other I suspect may actually just be a "dumb" DVI device (looks like the video guard band is intruding into the picture on the left edge...). Might have to try some more with the upstairs TV tomorrow.
Anyways, after futzing around with packet encoding and the poorly described error correction code (it's just CRC...) I think I'm doing at least something right. See also: https://web.archive.org/web/20190520020602/http://hamsterworks.co.nz/mediawiki/index.php/Minimal_HDMI
I'm creating this thread to maybe get some ideas tossing, but you may also try the attached code and see what it does for you. The intent is to display the picture with wrong colors (RGB re-interpreted as YCbCr), so that's what it should do. If the colors are normal, it's not parsing the Info Frame.