4 ms·
Can we please stop having displays be 'special'. I should be able to plug hundreds of displays into my laptop with any combination of USB hubs and have them a
by londons_explore 3y ago
Can we please stop having displays be 'special'. I should be able to plug hundreds of displays into my laptop with any combination of USB hubs and have them all just work.
Displays shouldn't need allocated bandwidth - they should give the best display quality possible given the available bandwidth.
Nothing moving on the display - no bandwidth used. Just a little animated gif? Just a few kilobits used. Full screen HD video? Gigabits used. Gigabits not available? Frame rate and/or quality drop.
This is the exact behaviour of plugging in hundreds of USB ethernet adaptors. Why should displays be different?
- andrewmcwatters 3y agoThe real reason? Because display protocols don't work that way. If they did, it would require that your displays retained state more than they do today.
- tverbeure 3y agoFWIW: pretty much all displays have one or two screen buffers today... You need at least one to enable overdrive. And you need a second one for low frame rate compensation.
- NavinF 3y agoBesides the dynamic bandwidth allocation, you pretty much described how USB 4 and all versions of Thunderbolt works. Personally I'd hate to see my display bandwidth drop when I copy files to a flash drive so I'm glad no monitors support that part of your suggestion. Input lag = horrible UX.
- rbanffy 3y ago> I'd hate to see my display bandwidth drop when I copy files to a flash drive Well… if you connect the flash drive to the monitor and not the computer that should be expected. OTOH, I’d love to have faster data rates when my monitor image doesn’t change much (such as when I’m writing code or letting the computer move lots of data between external drives.
- NavinF 3y agoYou're limited by the cost per PHY. Instead of adding a 40G port to your monitor, it would cost almost the same to add it to your PC and avoid the bandwidth contention. Most monitors only support 10G which is dirt cheap. Also USB4/thunderbolt already lets you use the same PHY for either a monitor or a flash drive
- rescbr 3y agoYou have a similar experience like you described above with those USB video adapters that don’t run DisplayPort. They use lossy compression and - as a byproduct - have increased latency compared to a DP/HDMI output. Displays aren’t special. It’s just that they’re moving huge amounts of data hundreds of times per second, so they use a specialized protocol to do so.
- layer8 3y agoYou’d need an RDP-style protocol to do that, and at the cost of the increased latency this brings. And now think about what this will mean when you’re actually doing RDP on top of it.
- mritun 3y agoI upvoted to counteract the downvotes. The question is genuine and needs a thoughtful reply. OP, the tech exists however contrary to expectations, to have multiple displays attached with a bandwidth constrained connection, the display tends to have all the special bits in it (contrast it with your “please stop having displays be 'special”) To support no bits moving when image is static, the display must incorporate a framebuffer and once you add franebuffer to the display, it stops being a dumb display. Eg. You can add smarts to it and expose higher level primitives for “display acceleration” and reduce the bandwidth required further… and very quickly the display is just a computer with memory and video accelerator (aka graphics card) connected with a cable. This is what RDP. Xdisplay and VNC accomplish. The basic complexity is not reduced but moved elsewhere. However the function gained is very useful so they exist and it’s a competitive landscape!
- londons_explore 3y ago> the display must incorporate a framebuffer I don't think there are any consumer displays sold today that don't include a framebuffer...
- NavinF 3y agoThe really cheap ones that don't support VRR (variable refresh rate) only buffer a few lines of pixels and rely on the sample-and-hold LCD panel to act as a framebuffer between frames
- kmeisthax 3y agoDisplays don't work this way. LCD panels do not have memory, they need to be periodically refreshed at least a few times a second[0], and so any sort of intraframe compression capability requires having extra memory in the controller and scaler. This was never done because displays have always had allocated high bandwidth channels since the dawn of console televisions. If you needed to get intraframe compressed video into them, you plugged in a decoder box of some kind (e.g. your cable box, a computer with streaming software, etc) and that device would spit out the fully decompressed image. If you're just using normal HDMI or DisplayPort cables there's no bandwidth to share, and since that's the vast majority of display inputs[1], we haven't even had interframe compression until very recently when people started wanting extremely high resolution and high refresh rate displays. The only reason why this seems incongruous now is that we also want to shove this video data through a USB-C cable. USB shares bandwidth across multiple devices based on demand, so why doesn't video over USB? Why don't we just standardize "MPEG over DisplayPort" today so we can shove a video wall of 4K displays over a single cable? Well, a few reasons... - Computer users expect lossless reproduction. Most lossy codecs only do well on pictures, and absolutely murder text and graphics - which is what most computer users are actually watching. For various technical reasons involving an Nvidia driver bug[2], one of my three displays actually already uses a compressed input - specifically Miracast - and text 'twitches' every few seconds at every GOP[3] boundary. I hate it. - Lossy compression codecs add latency. This is not merely an artifact of the encoders being slow, some codecs also have 'algorithmic latency' - as in you get no output until you give it a minimum amount of input because the codec needs data to reference so it can remove redundancy. - Transient loss of USB bandwidth is extremely difficult to debug. Just as an example, Windows can't help me track down the rogue USB device in my setup that unplugs itself at 3PM sharp every day. It just says something about "the last USB device you plugged in", as in, "I can't explain what USB topology is so I'll throw all that bookkeeping work onto you". Now imagine that instead of a minor annoying pop-up, it's a device diverting bandwidth away from my display to itself. The OS developers aren't even going to flash a pop-up for that, they're just going to have the screen glitch out and hope for the best, in that I'll blame the display manufacturer rather than the computer. Neither party wants to have to deal with a tech enthusiast plugging in more displays than their cabling or USB topology can handle and not understanding what limits they hit. [0] Judging based off the minimum refresh rates in variable refresh rate mode [1] Desktop systems outright don't support USB-C video altmodes at all, outside of special motherboards or add-in cards for Thunderbolt that give you DisplayPort injection almost by accident. The only monitors that support USB-C video are Apple displays; everyone other monitor company ships DisplayPort or HDMI. This is why Apple users have to carry around adapters and dongles all the time, to the point where Apple actually had to walk back their "single cable future" and put HDMI back in their laptops. [2] I have three monitors, but only two optical DisplayPort cables to go to my other room. I used to use a DisplayPort MST hub to get my two smaller (1080p) monitors on the same cable, but for some reason my 1080Ti can't read the EDID data off one of the monitors when it's behind an MST hub. I worked around this with custom resolutions - i.e. manually inputting all the display timings - and it worked until a driver update last year. Now, if I ever plug in that second monitor to the hub, the mouse cursor (which I suspect is a hardware overlay) gets stuck on my primary monitor and shows corrupted image data, making my computer unusable. [3] Group of Pictures - the smallest seekable unit in an intraframe compressed video stream. Keyframes - i.e. frames that do not reference prior frames - are the start of a new GOP and take up significantly more bandwidth as a result.