Ironically, the video output called "caca" comes from "libcaca", "a graphics library that outputs text instead of pixels". The irony comes from "caca" meaning "poop" in Spanish, so the video output is named "poop", which seems fitting.
In all the dialects: it's greek for "evil, bad". From the IE root for "twisted".
Given the original core concept of "strongly bent", its meaning as "morally twisted", its connotation of "repulsive" and its use as a pejorative (prefixed), the nursery reference collected a good deal of the above - the physical description, the moral metaphor, the reaction, the qualification.
Been around long enough, but I guess managed to dodge it mostly (or usually see links that go through some intermediary?) and not really mind, to be honest :)
I remember it was mind-blowing being able to launch quake inside your terminal, but that was over 20 years ago.
The tech is basically scaling the image down to the size of the terminal and using LUT to get a character from pixel's luminosity.
The hardest part of this particular demo is, in fact, rendering font in WebGL. Rest is rather trivial and while interesting and pretty I don't really think it deserves first page on HN.
I think it might be better with one of the old character sets that had multiple blocks per pixel. That would increase the resolution and they could use Floyd-Steinberg dithering or similar to get grayscale. OTOH that wouldn't be ASCII.
Is there a canonical way to find the source to these types of github links? The broken link to durian.blender.org doesn't show anything, and the user page https://github.com/Pessimistress doesn't have any obvious ascii-art or video projects. Neither does the home page linked from github. And bundle.js is just obfuscated.
It looks like libcaca, but I would have to recompile mpv to see how similar it is.
But in this case, https://github.com/pessimistress/ascii seems to be private, so seems source is not published at all. Seems sourcemaps is defined in the JS file, but points to a non-existing file, so can't help you either. Left is to use something like http://jsnice.org/ to "de-uglify" it and try to guess what it is doing.
What are the benefits I'm curious... it seems obvious less data? In that case when would this be a good thing to use... maybe generic DIY/how to's on not so difficult concepts. It's really cool, has decent color too. Probably do the same with large pixels/blurred video?
I still think about that "world knowledge compressed to disc" or something like 10GB Wikipedia. Video's not good compared to text for space saving but yeah.
If you actually intend to do that for whatever reason, sixel is a far more usable alternative (if your terminal can actually process the frames in real time, that is).
I would love to have it as a browser extension for various personal reasons but sometimes I do fancy the good old arcane time
Something like this --> https://andrei.codes/ascii-camera/