glitch art scripting language
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Luna 46d576fc13 image: remove expectEqual check (caused problems for rotate) 1 week ago
doc doc: add embed cmd 3 weeks ago
examples add exampels/rflanger.scri 2 weeks ago
src image: remove expectEqual check (caused problems for rotate) 1 week ago
.gitignore libsndfile cant open mp3s 4 weeks ago
LICENSE remove oldMain, add LICENSE 4 months ago add readline to readme 1 month ago
build.zig repl: use readline 1 month ago


glitch art “framework”, ???????? language??? something?

example of the amp command

example of the rflanger command

how do?

build depedencies (headers included):

  • zig at
  • libc, lilv and libsndfile
  • graphicsmagick for the rotate command
  • readline (for repl)

plugin depedencies (only required at runtime):

# build and install
# assumes lilv headers are at /usr/include/lilv-0, edit build.zig if different
git clone
cd scritcher

zig build install --prefix ~/.local/

# on your input image file
convert blah.jpg blah.bmp

# if you got the lv2 default amp plugin, this is runnable
scritcher examples/middle_amp.scri blah.bmp

# if not, the noise plugin does not depend on any lv2 plugin.
scritcher examples/noise.scri blah.bmp

// scritcher saves it on an incremental basis, so the first run will save to
// blah_g1.bmp, the second saves to blah_g2.bmp, etc.
$your_image_viewer blah_g1.bmp

using the repl

using repl works via scritcher repl scri_file.scri input_image.bmp

you type commands as you’d write the specific scritcher commands (doc/, with three repl-specific ones:

  • push, to push the last written command to the queue
  • save, to write the queue to the given scri_file.scri file
  • list, to print the current contents of the queue

this allows for quicker iteration of commands, as you can type a command, tweak its arguments, and when satisfied, push it, and work on the next one, etc.