Post B2Hmo0gf3JeKi2NFvE by wolf480pl@mstdn.io
(DIR) More posts by wolf480pl@mstdn.io
(DIR) Post #B2Hmo0gf3JeKi2NFvE by wolf480pl@mstdn.io
2026-01-14T19:54:11Z
0 likes, 0 repeats
Hm... I wonder what a modern monitor is going to do if you try sending it a resolution it supports but with shorter blanking intervals...
(DIR) Post #B2Hs6IezT2ItR28KA4 by amonakov@mastodon.gamedev.place
2026-01-14T20:53:28Z
0 likes, 0 repeats
@wolf480pl well, DVI overclocking is indeed a thing — I was running a FullHD monitor at 72 or maybe even 75 Hz instead of 60 for a while, using a EDID override (with reduced blanking intervals) to fit more frames in the 165 MHz limitI think it was heating up a little bit more, but otherwise worked as expected
(DIR) Post #B2HtY6RMaroNbAa3xA by wolf480pl@mstdn.io
2026-01-14T21:09:45Z
0 likes, 0 repeats
@amonakov I was thinking more like, lowering pixel clock to fit more monitors on the same DisplayPort bitrate.But then I looked at CVT reduced blanking modes and the blanking intervals in these are pretty small anyway, though I guess if I was missing a few percent I could still squeeze them a bit...
(DIR) Post #B2HzvCxx64ySDsDye8 by ignaloidas@not.acu.lt
2026-01-14T22:21:09.234Z
0 likes, 0 repeats
@wolf480pl@mstdn.io @amonakov@mastodon.gamedev.place I'm 90% sure DisplayPort doesn't have blanking intervals at all since it's packet based (it's one of the reasons why it can be tunneled in USB4 and HDMI can't)
(DIR) Post #B2I0SnYS59G5FzJWam by wolf480pl@mstdn.io
2026-01-14T22:27:11Z
0 likes, 0 repeats
@ignaloidas @amonakov you'd think that, because what's the point of having those, right?yet it totally doessee page 49 of https://glenwing.github.io/docs/DP-1.2.pdf
(DIR) Post #B2I0leRoANXkVuCE2C by ignaloidas@not.acu.lt
2026-01-14T22:30:37.761Z
0 likes, 0 repeats
@wolf480pl@mstdn.io @amonakov@mastodon.gamedev.place I think that that's more of a "what to do when you don't fully utilize the bandwidth" than of "you must do this"?
(DIR) Post #B2I15eSjov4cLsATdg by wolf480pl@mstdn.io
2026-01-14T22:34:15Z
0 likes, 0 repeats
@ignaloidas @amonakov yeah, butIt doesn't only happen between frames.It happens after every line (my image description was wrong, fixed now).The BS/BE symbols are supposed to be controlled by the same Display Enable line that you'd use for blanking in DVI or parallel RGB.Moreover, the spec goes to great lengths to explain how exactly the receiver is supposed to reconstruct the original pixel clock, and also says how to send hsync/vsync pixel offsets, including polarity.
(DIR) Post #B2I1JSLvdoFMqdZ7rs by wolf480pl@mstdn.io
2026-01-14T22:36:45Z
0 likes, 0 repeats
@ignaloidas @amonakov Also, if you go down to page 140-somthing and read how MST works (the spec does a bad job at describing it but the information is somewhere there...), they have a separate SF symbol for use in blanking intervals within a stream, and VCPF sequence for filling time slots not allocated to a stream.
(DIR) Post #B2I1T52PBEMBQy1Soy by wolf480pl@mstdn.io
2026-01-14T22:38:29Z
0 likes, 0 repeats
@ignaloidas @amonakov In the end I think DP just tries to transparently tunnel parallel digital RGB+sync+clock signal over a serial link, while preserving timing, and it's up to your monitor whether it'll accept pixels for the next line immediately after the last line ended.
(DIR) Post #B2I1ysYT7u8dzBBOwS by wolf480pl@mstdn.io
2026-01-14T22:44:11Z
0 likes, 0 repeats
@ignaloidas @amonakov oh, and if you go to page 146 where they calculate PBN, which translates to the number of timeslots per frame an MST stream is going to takethey're talking about peak bandwidthand they're calculating it based on pixel clockand in their 1920x1200@60 10-bit example they use 154MHz pixel clock, which matches CVT-RB timingswhich include 160px of hblank and 35 lines of vblankhttps://tomverbeure.github.io/video_timings_calculator?horiz_pixels=1920&vert_pixels=1200&refresh_rate=60&margins=false&interlaced=false&bpc=10&color_fmt=rgb444&video_opt=false
(DIR) Post #B2I2aPhSrAzrUwHwX2 by wolf480pl@mstdn.io
2026-01-14T22:50:59Z
0 likes, 0 repeats
@ignaloidas @amonakov Oh, and regarding the "it's only used if you're not using all available bandwidth" - even if you're not using MST, just a single stream, there's still a separate bit stuffing mechanism for getting rid of excess bandwidth.It's described on page 68.And it happens every 64 link symbols - so multiple times per line.All so that the pixels don't arrive too early.