Tuesday, 2019-03-05

*** tpb has joined #timvideos00:00
*** synaption[m] has quit IRC00:19
*** synaption[m] has joined #timvideos00:19
diamondmanI have found myself trying to draw text/shapes to non standard displays with non square pixels such as https://github.com/diamondman/att26a or yarn in a scarf. If I just use standard rasterization, text looks stretched on these bizarre mediums. I know this is not explicitly video related, but since video deals with these types of transformations, I was hoping someone may have a pointer on where I should start. I would00:46
diamondmangreatly appreciate any suggestions.00:46
tpbTitle: GitHub - diamondman/att26a: Documentation and driver for AT 26A Direct Extension Selector Console. (at github.com)00:46
CarlFKdiamondman: I get what you are asking.. um....01:29
CarlFK2 answers that are non answers01:34
CarlFK1. #xorg - I'm sure there are video drivers that deal with this01:34
CarlFK2. don't worry about it.  have your layer provide a way to read switches and turn lights on.  let the next layer up deal with mapping the hardware to virtual stuff01:36
CarlFKI doubt #1 is worth the effort.  I think #2 will be fine01:37
*** cr1901_modern1 has joined #timvideos02:13
*** cr1901_modern has quit IRC02:14
*** cr1901_modern1 has quit IRC02:22
*** cr1901_modern has joined #timvideos02:22
diamondmanCarlFK: I want to ask details on that. Should I reply here (since it is a little off topic) or bring it to a PM?02:28
CarlFKhere is fine02:28
diamondmanCarlFK: If someone wants to display text on a display that has rectangular pixels, how is that done? Are the square pixels blended together in a way to make a similar image in the rectangular pixels?02:41
diamondmandisplay text -> display anything02:41
CarlFKI think you have to back up and ask: how is anything displayed on anything02:42
CarlFKhorizontal and vertical lines are easy02:42
CarlFKdiagonal lines and arcs and curves and shading = math02:43
diamondmanLol. Well I know how the hardware buffers would send pixel data, etc. if everything is square, then you just copy pixels. Rasterization of shapes move over the pixel grid and the a color is set based on how much that volume covers of that pixel....02:44
diamondmanBut if you draw a curve on a grid, and then convert that grid of squares into a grid of rectangles, you gotta do a lot of lossy conversions for each pixel...02:44
diamondmanThat seems too wasteful for there not to be a way to draw things directly to rectangle pixels02:45
CarlFKcurve on a grid takes math02:45
diamondmanyep math :)02:45
CarlFKthat's where you can deal with the grid not being 1x102:45
CarlFKI think I can make up an example...02:48
diamondmanSo if a system draws only to a grid of squares, then the options to get that on a grid of rectangles are 1) Modify the system to support different pixel shapes; 2) write/find something to convert between the grid of squares to the grid of rectangles using a lossy conversion02:48
CarlFK#2 is extra work02:49
diamondmanextra work for me or the machine?02:49
diamondmanIf a timvideo setup is going to display on a tv with rectangular pixels, and some vector stuff needs to be added to the image, is it first rendered to a square pixel grid, and then converted by something to be able to show up on the tv?02:51
diamondman(trying to make it relevant to the channel :) )02:51
CarlFKwe use drivers that handle the translation between a vector and the display02:52
CarlFKhow about drawing a circle on the screen that is 1" diameter, centered on the display02:53
CarlFK1" is not at all 1 pixel02:53
CarlFKcentered is not .502:53
CarlFKyou need to know something about the display02:53
CarlFKsin() and cos() return a number from -1 to 102:55
CarlFKto get the x, you multiply it by something that gets you the X you want02:56
CarlFKto get the X, you multiply it by something that gets you the Y you want02:56
CarlFKer, Y ... Y02:56
CarlFKif the grid is square, the something is the same.02:56
CarlFKif the distance between 2 Y's is more than 2Xs, then you multiply by less to get the same distance, and a round circle, not an egg02:58
CarlFKthat's where the reality of the display can (should?) be applied02:59
diamondmanyep. makes sense that you should apply the transformation when you are first drawing into the pixel buffer03:01
diamondmanJust redraw it if you are using different pixel shapes.03:02
diamondmanIf you are not writing the code that does that math part, is the only option to make a lossy converter from one grid shape to the other?03:02
CarlFKI think so03:04
CarlFKbut that kinda implies that the people doing the math are expecting 1x1 squares03:04
CarlFKer, yeah, I take back the think so...03:05
CarlFKthe people doing the math should ask the lower level what shape the grid is03:05
CarlFK3:4 TVs, both American NTSC and the rest of the world's PAL, both had rectangular pixels03:06
CarlFKsomething about the reality of making the beam turn on/off fast enough03:07
diamondmanolder hardware than when computer monitors started popping up03:21
diamondmanI was asking if there is some standard layer for specifying that, or doing the lossy conversion03:23
diamondmansounds like no?03:23
diamondmanI was asking = I think what I meant to ask03:23
diamondmanThanks for the input :)03:26
CarlFKI think what you are asking is what video drivers are all about - but I'm kinda guessing in all accounts03:34
CarlFKlike I think the GPU is what does the math when you want things blazing fast03:35
CarlFKand then the app needs to know how to tell the gpu to draw a shape03:35
*** rohitksingh has joined #timvideos03:48
*** cothan has joined #timvideos03:55
*** rohitksingh has quit IRC04:04
cothanHi, I read about the project from Gsoc page, as a phd student, my research interest is hardware-software codesign, like SdSoc, MPSoC in Xilinx, at my work,  I implement hardware design in C-based High Level Synthesis (instead of vhdl, but the coding is hardware style, not to make software synthesizable in hardware), my initial idea for gsoc this year is to port some major software function to hardware as accelerator. is it sound goo04:04
*** cothan has quit IRC04:12
*** rohitksingh_work has joined #timvideos04:19
*** futarisIRCcloud has quit IRC06:14
*** m4ssi has joined #timvideos07:57
*** seb_ has quit IRC08:01
*** andi-m has quit IRC09:25
*** andi-m has joined #timvideos09:27
*** futarisIRCcloud has joined #timvideos10:49
*** rohitksingh_work has quit IRC13:01
cr1901_modernThere should be a "wait up to 24 hours for a reply" blurb in the topic...13:38
*** rohitksingh has joined #timvideos13:51
*** swalladge has quit IRC14:07
*** Kripton has quit IRC14:40
*** Kripton has joined #timvideos14:43
*** rohitksingh has quit IRC15:07
*** futarisIRCcloud has quit IRC15:19
*** rohitksingh has joined #timvideos15:36
*** rohitksingh has quit IRC16:22
*** rohitksingh has joined #timvideos16:24
*** rohitksingh has quit IRC16:56
*** swalladge has joined #timvideos17:02
*** rohitksingh has joined #timvideos17:36
*** m4ssi has quit IRC18:21
*** rohitksingh has quit IRC19:30
*** bewbs has quit IRC20:50
*** Kripton has quit IRC21:21
*** Kripton has joined #timvideos21:22

Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!