Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> What you want is a digital video standard that simply pushes an A/V stream over the wire

HDMI is just that - it's the direct evolution of VGA signaling, with each color channel pushing pixels left-to-right top-to-bottom, it even has blanking periods (periods where there's no pixel info transmitted, used to steer back the electron beam on CRTs to the start of the row/column), same EDID format negotiation over I2C, the works.

What makes it crap is the absolute flood of cheap garbage HDMI cables/repeaters/KVMs which barely work even at the best of times and shouldn't be even allowed to be solved, as they are out of spec, but online vendors have flooded their stores with this cheap no-name garbage for some reason.

Unfortunately, the apparent build quality of the cable, or the price mean nothing when trying to get a working one.



Yeah I get that in theory, but then my 10x more expensive pro stuff works worse than the cheap stuff. Sure, because they follow the spec etc. But then it turns out that even name brand laptops (or their GPUs) do it wrong. My point was that the standard is crap. It is way too complicated, wants to be too many things to too many people (most of which are trying to sell stuff to consumers).

HDMI tries to be a video link, an audio hub, a remote‑control bus, and a content‑police checkpoint all at once. Strip out the DRM, kill the optional‑but‑mandatory feature soup, and let the cable do its one job: move bits from A to B. I had Apple laptops not working with 3-digit Pro A/V gear from reputable vendors because HDCP. This is fucking bullshit. By this point I am starting to consider analog video superior to whatever this is supposed to be.


I kinda get what you're coming from - back in college i had a lab where we had to make a NES-style game console from scratch on an FPGA - including peripherals and video output - which used VGA, that's how I got to familiarize myself with the technology. It was super simple, you just output the correct voltages to the RGB pins and sent the proper HSYNC and VSYNC signals, and that was it, worked like a charm as long as you didn't mess up too bad, the monitor figured out the rest.

Recently I dusted off this project and bought myself a new FPGA board, with a HDMI output. Getting that thing to work was a nightmare. Not only did I have to configure the HDMI transciever, I had to build proper EDID support, and get I2C to cooperate, and get the timing of the signals exactly right. And even then, out of the 5 screens I could get my hands on, only 2 worked, one of which would inexplicably go to sleep despite displaying video on the screen.

Getting HDMI working was more painful and took about 10x as long as the rest of the original project did, and even then, it was a partial success.


have you ever dabbled in creating games too? or just the console


Yeah, we did do some games, though nothing crazy - we did breakout and asteroids if I remember - not exactly groundbreaking.

The interesting thing about it was that we had very little RAM but the FPGA was quite fast, meaning instead of a framebuffer we scanned out tiles and sprites to the scanline at realtime, at a relatively high resolution (1024x768).

This combined with the low color depth (the 'DAC' was a resistor ladder per color channel, giving us 2 bits per channel, or 6 bits in total), meant we had that dithered, Transport Tycoon-y look, with tilemaps and animaton, so it looked quite okay by the standards of 2d games.


I also thought that HDMI has many problems, like you have, too. My idea is: video and audio and other stuff are separate cables. The video cable will only be sending the digital RGB video data, with the wires for the pixel data and pixel clock, as well as power and ground and vsync. I think it is helpful for the video signal to be digital, but it does not need to be as complicated as HDMI. (The audio cable can be balanced analog audio signal.)

It is not only HDMI; many other common things are too complicated (than they should be) and often have other problems too (you mention some of them, such as HDCP, but there is many more problem than that).

(Someone else wrote: "The sad fact of the matter is that people play politics with standards to gain commercial advantage, and the result is that end users suffer the consequences. This is the case with character encoding for computer systems, and it is even more the case with HDTV.")


Why two cables if it can be done with one?

From the consumer perspective, two cables are more complicated.


I think it makes sense to wire the video and audio separately, e.g. you might connect the audio to a speaker or amplifier, or to a audio recorder, etc. However, my idea was to be able to clip them together and to have a standard arrangement of them so that they can be used like one cable if you do not want to deal with two cables.


> Strip out the DRM

Um, you just hit why HDMI sucks. You have a "default broken" state that is required by the standard.

Look, every single interface could have been an evolution of Ethernet (and mostly ARE--HDMI and USB-C are basically enshittified Ethernet). But they weren't because everybody wants to put their fingers in the pie and take out a chunk for profit by being a rent-seeking middleman.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: