Oriented box signed distance function from Inigo Quilez:
Segments activated by a load of conditionals on each digit's value.
Digits found by repeated divmod 10 stuff, after multiplying by 10000 (sets maximum number of digits after the point).
Leading zeros stripped with a simple loop (that stops at the point). I have code to strip trailing zeros too, but changing values are seldom affected.
Anti-aliasing of the decimal point seems to be a bit off, looks a bit too blurry. Want to add an option to move it to the baseline too.
Currently there are controls for glyph size, point size, segment length, segment thickness, foreground and background colours.
Eventual aim is to port the number rendering to the zoom video assembler I've been working on, to display zoom depth. Will need some extra fiddling, as that needs to be in log-domain and expanded to scientific notation without overflow.
Need to add motion blur to the zoom assembler first, otherwise the least significant digits will be too stroboscopic.
rewriting history with git
Some #git things I tried recently were a bit tricky. I added a subtree with full history, then decided I didn't want to do that after all some commits in my own part. git filter-branch didn't work for me, so I resorted to git format-patch the whole history, then grep for my name (no other contributors to my part, and I hadn't contributed to the subtree) and xargs mv those patches (about 20 out of 6000) to a subfolder. Then git init a new repo and git am to add my 20 patches. So I have history, but it's diverged/rewritten from the original, pondering what to do when I push. Maybe delete the old repository entirely and give the new one a new name.
Another thing later, not quite so drastic - I wanted to remove a few commits that I thought better of (again, I added some foreign files, then found out they wouldn't help me). I used git reset to scroll back to just before I added them about 5 commits back (having run git log to see recent commit hashes), then used git cherry-pick to grab the couple of commits I still wanted to keep. needed a small bit of fiddling to avoid conflicts (stashing/moving residual files out of the way).
@yuki_is_bored @paul the transcoded-for-streaming versions that the Internet Archive derives are very low bandwidth/quality in my experience, but my source material is usually pathologically incompressible fractals etc. On the plus side, the original versions can be downloaded.
If you find a nice peertube instance, let me know!
Figured out how to do bidirectional communication with a subprocess using Win32 API. POSIX version still to do. Now I can pipe raw PPM image streams to FFmpeg and display the output logs in my program. Did some fiddly things too to stop a flood of status lines (in a terminal they are overwritten in place using carriage return without newline). Also made a simple Dear ImGui theme function, so my UI is red when recording, green when playing, and blue when idle.
Figured out how to fix #video #tearing in #xfce on #linux with #amdgpu driver : simply enable the display #compositor - thought I'd tried it before, but maybe I was doing it wrong, or it didn't work properly in earlier versions (I was on Debian Buster/stable for a long while, now on Bullseye/testing).
@aadil yes and personally i rename it to OBS instead of "JACK input client" which is too generic for my taste (it's what appears in eg qjackctl patch bay)
@aadil I've used OBS for audio+video capture (supports both full screen and single-window in X, don't know about Wayland) with JACK to connect from audio things on Linux. Pretty sure SC uses JACK, not sure about sonic-pi (does sonic-pi use SC underneath?).
Debian package is `obs-studio` with executable `obs`.
yesterday's programming achievements
I added a graphical user interface using Dear ImGui and a filebrowser widget for it I found. There was a small bug in directory handling so I reported it with a fix, upstream is sorted now.
GUI has all the controls from CLI, plus options to flip keyframes vertically or invert (in the sense of 1/r) the video - these can be used to render zoom out videos instead of zoom in.
The biggest feature is a playback seek slider, so that you can preview colouring algorithms anywhere in the zoom without having to render from the start.
Still lots to add: want to launch ffmpeg as a subprocess rather than piping to stdout, and miscellaneous options like setting zoom speed instead of duration, displaying antialiasing ratio at image edge, etc etc
@celesteh here's the actual implementation source code:
not easy to find :(
@migratory me too, have 4 cds and saw them live once.
found a 20min mixtape from 2006. tracklisting reconstructed by listening back:
dj skinhead - extreme terror (not sure which mix of it)
fear factory (remixed by junkie xl) - machines of hate (from the remanufacture album)
senser - adrenaline (from asylum album)
squarepusher - (can't remember the title, it's on the album go plastic, would need to dig out my cd to be sure)
venetian snares - punishing the atoms (printf shiver in eternal darkness /n)
add n to (x) - invasion of the polaroid people (loud like nature)
today's programming achievements
I fixed several bugs in #KF 2.14 branch, will make a point release soon. also upgraded it to OpenEXR 2.5.3 from 2.4.something, which needed a minor linking adjustment for pthreads. Boost had an upgrade too, and there was a new compiler so I rebuilt all the dependencies. Merged the changes into the KF-next 2.15 branch.
I improved my exponential map #zoom video assembler:
- colouring algorithms are now GLSL snippets loaded at runtime, so no need to recompile;
- no assumptions about filenames any more, takes a directory name instead of a filename fragment (this means it can work with no fuss from the output of KF);
- preview window is better (higher quality by using mipmaps, and is the right way up instead of being vertically flipped vs the output video).
- I got it working in Wine, cross-compiled to Windows from my Debian.
not really answering the question
@hellocatfood my zoom h4n (non-pro, pretty old, firmware version 1.50) can't do that - just tried it... I don't know if the pro version can though...
Rendered as an exponential map with work-in-progress KF-next, using a custom zoom assembler to flatten it into video frames.
making art with maths and algorithms
Welcome to post.lurk.org, an instance for discussions around cultural freedom, experimental, new media art, net and computational culture, and things like that.