Yooo @chalier.fr · 12/07/2026Finally, I have implemented a small patience game from my childhood, where two players, by turns, build an infinite portmanteau word (in French), with a homemade lightweight pronunciation model: chalier.fr/mot-long/ 100
Yooo @chalier.fr · 12/07/2026I have made a tiny video painting tool, as part of a collaboration for a music video. Unfortunately, the result will not be published. Yet, here is the tool if you want to try it: codeberg.org/ychalier/vid... 100
Yooo @chalier.fr · 02/02/2026In a somewhat recent Tsoding stream, I've heard about venation pattern algorithms, and tried to implement one (Runions et al.). You may try it yourself at chalier.fr/generative-a... 1172
Yooo @chalier.fr · 19/01/2026Inspired by Actinomy's server charm manifesto, I've tried to build my own. Very pleasant experience, got to learn FreeCAD, how to solder things. If you want to know what's on it, you'll have to get near me! To build your own: codeberg.org/actinomy/ser... 100
Yooo @chalier.fr · 03/01/2026I've been experimenting a bit with Sharp, Apple's open model for generating 3D models from single photos. It's quite good, and certainly allows for various cool effects. Here are in an example rendered with Blender and the 3DGS Render add-on by the Kiri Engine team. 100
Yooo @chalier.fr · 27/11/2025Turing patterns emerging from a repeated blur-sharpen process, a WebGL implementation: chalier.fr/generative-a... 010
Yooo @chalier.fr · 02/10/2025Inspired by a recent Spectral Collective video published on 3B1B's channel, I've implemented a simple version of the liquid-vapor model: chalier.fr/generative-a... Move the mouse to change params, scroll for speed, left/right click to add/remove particles, press S/R to screenshot/record the screen. 000
Yooo @chalier.fr · 21/09/2025Très cool à suivre (en replay malheureusement) ! Je partage à nouveau une implémentation rapide sous WebGL de ces bassins de Wada : chalier.fr/generative-a... 252
Yooo @chalier.fr · 12/09/2025Also, I've added a parameter to the frame blending tool to blend frames in fixed buckets instead of a rolling window. The intent was to mimic one of Wong Kar-wai's 'blurry stop-motion' effect. 000
Yooo @chalier.fr · 12/09/2025I've also added a tool to apply effects to images and videos by manipulating their frequency representation. It is a bit hard to control, but can create great visuals. 100
Yooo @chalier.fr · 12/09/2025I've added a tool to retime panoramic videos that can get choppy when panned by hand with amateur gear. This tool estimates the panning speed and interpolate frames to make it constant. 100
Yooo @chalier.fr · 02/07/2025Just released v1.9.0 of Transflow, with a brand new GUI! If you're afraid of command line interfaces, this should make your life easier. Beware, though, this is still experimental, bugs may/will arise. 120
Yooo @chalier.fr · 20/06/2025I've just added an audio reactive feature to my randomart webapp. In short, you can use specific variable names in the grammar to refer to the (normalized) intensity of ranges of the frequency spectrum (e.g. low, mid & hi). Here's a sneakpeak: 🎵 Mega Hyper Ultrastorm (Kevin MacLeod, 2017) 100
Yooo @chalier.fr · 26/05/2025I also added a script for generating videos, as publicised by original authors: 000
Yooo @chalier.fr · 10/05/2025Je partage mon implémentation (faite un peu à la va-vite), réalisée pour WebGL (rapide et à peu près portable !) : chalier.fr/generative-a... 181
Yooo @chalier.fr · 09/05/2025I tweaked Transflow to replicate the 'sticky texture' effect of regular datamoshing. The code is a bit dirty but the result is nice! Here are three clips pasted together: 021
Yooo @chalier.fr · 03/05/2025Just learned about LiDAR HD data by IGN, a point cloud mapping of most of surface of France. It's really cool, and freely available! Visualization made with QGIS 3D Viewer. 020
Yooo @chalier.fr · 13/04/2025Motion Interference. Applying the reversed flow on the same video makes pixels relatively static while revealing some of the transformations – e.g. through perspective change or flow inaccuracies. Thought for later: is there a motion equivalent of the Moiré effect? Below, view from a moving train: 110
Yooo @chalier.fr · 26/03/2025Though, I have not found a nice way of generating loops. So far, I'm manually interpolating frames between the end and the start using RIFE, which looks good enough. 000
Yooo @chalier.fr · 26/03/2025Been trying out Deforum for generating videos with Stable Diffusion. It's great at textured and abstract drawings. (Side note: I need a better GPU) 110
Yooo @chalier.fr · 22/03/2025Here's another example where consecutive frames are merged together: 000
Yooo @chalier.fr · 22/03/2025I've been playing around with a public webcam recording 30s clips every 5min of a pedestrian area, and blending those clips together. Here's an example with an (about) 8 hours span (94 clips). Also, you may try to find that place, it should be pretty easy! 110
Yooo @chalier.fr · 01/02/2025Recently, I've enhanced the Transflow web demo and added a few features, such as thresholding, iterative Horn-Schunck method or screen recording. 100
Yooo @chalier.fr · 24/01/2025Other novelty, I've added a lock feature, to mimic the P-frame duplication effect from classical datamoshing. Basically, it allows for re-using the same flow matrix for multiple frames. 100
Yooo @chalier.fr · 24/01/2025For instance, it seems that it's better at capturing small moving features, and has less boundary artefacts - where only the boundary of moving features are considered moving, which often happens with analytical methods. Here is an illustration with ink drops in water: 100
Yooo @chalier.fr · 18/01/2025I tried to use a MPEG-4 Part 2 video codec (Xvid) instead of h264 for my datamoshing script that removes I-Frames from the bitstream. Results are much more interesting! h264 really was too resilient! and frames would heal instantly. Now they're crushed, as they should be. 110
Yooo @chalier.fr · 15/01/2025On a different note, in the last update, I introduced the Canvas accumulator. Meanwhile, I tried using several masks to introduce moving pixels. Here's an example I thought looked nice, recorded from a car. You can see the magic tree freshner swinging! 000
Yooo @chalier.fr · 15/01/2025With a bit more tweaking, Horn-Schunck flow can be constrained into well defined regions. 100
Yooo @chalier.fr · 15/01/2025By the way, with those filters, you can access and modify the flow vectors using polar coordinates. This makes modifying the flow amplitude or direction really easy. Here is an example of a river washing away a blue tit, where flow direction is forced to π/4. 100
Yooo @chalier.fr · 15/01/2025To counter that, I introduced another feature, flow filters, a set of operations to directly manipulate flow values, such as scaling, thresholding, or clipping. Here is the same example with the flow clipped to a magnitude of 2 pixels. 100
Yooo @chalier.fr · 15/01/2025A decay parameter needs to be tuned to balance between useful initialization and global divergence. Here is another example, closer to the convergence limit. Yet, the (slight) movement of clouds is enough to go wild. Some movement call also be seen in the grass. 100
Yooo @chalier.fr · 15/01/2025Horn-Schunck produces a dense field. It is iterative, and takes a very long time to converge: we often have to stop before it converges. To help, we can use the flow from the previous frame as a starting point. Though, this introduces one major issue: divergence. 110
Yooo @chalier.fr · 15/01/2025Lukas-Kanade works for sparse sets of points. One way to adapt it is to consider all pixels as target points. Another one is to split the frame in macro-blocks, and consider the center as a target point. In the example below, I've used 16x16 macroblocs, which creates a classic datamoshing effect. 100
Yooo @chalier.fr · 04/01/2025I've just added a way to make filter parameters time-dependent. Here is a demo with echo – variable decay – and band-pass – variable cutoff. Nice side effect: using sine functions as parameters with 0.1 Hz frequencies makes the 10s video an infinite loop ♾️ 000
Yooo @chalier.fr · 04/01/2025Been working on a new feature for Transflow, to provide a way to move things more progressively and avoid unpleasant blinking. In the example below, new pixels are introduced in the rightmost column, and then moved around with the optical flow. Will release it soon with other minor fixes! 120
Yooo @chalier.fr · 02/01/2025In last Transflow version, I added an automatic upscaling feature for using small video inputs. E.g. a 128*72 flow can be applied to a 1920*1080 image by counting 15*15 blocks. Besides being faster, it also gets closer to the original datamoshing look and feel, which mostly relies on macroblocks. 000
Yooo @chalier.fr · 27/12/2024I thought of using this for making riddles, but unless you have access to the raw file (or a direct conversion of that file), the specific shape is lost. E.g. I tried to record a file with my phone from my speakers but the audio looks dull. 000
Yooo @chalier.fr · 27/12/2024One major caveat is that non-horizontally-convex parts of the shape can not be rendered. 100
Yooo @chalier.fr · 27/12/2024The key idea is that you can scale the amplitude of an existing waveform without dramastically changing how it sounds, as long as changes remain small. To obtain a specific shape, you can set the amplitude to shape contours, defined by a top line and a bottom line. 100