Interested in creative real-time audiovisual media generation, simulation/physical modeling, audio, 3D graphics, physically-based ML, AR/VR
notebooks. Notebooks for several books, mostly in the domain of audio DSP. Notebooks are broken up by chapter. Most have animations, working code examples, and solutions (or attempts) at exercises. I hope they are helpful as a resource for other folks learning from these books!
87CrosswordFiller. One of the very first programs I ever made - a program to find valid english crossword fills given a grid pattern using beam search. I found as a jar file using the Wayback Machine!
50flowgrid. Persistent ImGui editor for Faust audio programs
47MeshEditor. glTF viewer/editor/exporter supporting conversion of meshes into interactive rigid body audio models
31mesh2audio. Convert meshes into physical audio models and play them by striking mesh vertices in a 3D viewer.
18midi_markov. simple markov chain midi generator taking a midi input file and generating a midi output file
17flowgrid_old. The main goal of this project is to enable the construction of complex audio graphs with grid-organized control surfaces like Ableton's Push 2. Connections default to match common DAW conventions based on their arrangement in the grid. This project is deprecated. New version here: https://github.com/khiner/flowgrid
11tree-sitter-faust. Faust grammar for tree-sitter. Available in nvim-treesitter with `TSInstall faust`.
10ImGuiVulkanHppImage. A demo application for rendering a triangle with Vulkan-Hpp into an ImGui window via `vk::Image->Texture->ImGui::Image`.
7AutoSampler. Max4Live instrument to look through a music library to find & play samples matching incoming midi notes in real time.
6DrumClassification. Drum classification model
6samplernn-pytorch. PyTorch implementation of SampleRNN: An Unconditional End-to-End Neural Audio Generation Model
5tensorflow-wavenet. A TensorFlow implementation of DeepMind's WaveNet paper
5jaxdsp. Fast, differentiable audio processors on the CPU or GPU, controlled from the browser. The goal is to parameterize audio graphs in real-time to resemble incoming audio streams. Built with JAX, WebRTC, WebSockets and React.
5BeatBot. Android beat sketchpad
5K-Means. K-Means implementation using Numpy, HW 4 - CS445 Machine Learning - Winter 2012 - PSU
4Craigslisp. A Chrome plugin to turn Craigslist into... CRAIGSLISP!
3GeoLDMViz. 3D visualizer app for inspecting generated molecules & diffusion chain output from [GeoLDM](https://github.com/MinkaiXu/GeoLDM)
3Barcodes. CS350 Final Project - ACM 2010 Problem B - Barcodes
2react-scripts-bootstrap-site-generator. A simple, opinionated static site generator built on top of react-create-app
2chatgpt-generated-imgui-node-editor. A node editor written with ChatGpt
2zep. Zep - An embeddable editor, with optional support for using vim keystrokes.
2Linear-Discrimination-with-Perceptrons. HW1, CS 445, Machine Learning, Winter 2012. A perceptron to classify the handwritten number data at http://archive.ics.uci.edu/ml/datasets/Optical+Recognition+of+Handwritten+Digits . Generalizable to data with features encoded as integers, with minor variations to code.
2parallel_quicksort. CS415 - Parallel Programming - HW1 - Parallel Quicksort Using Pthreads
1Tiling_Project. Finite Automata, Quasicrystals and Robinson Tilings - Project for CS350
1resume. TeX
1sonic_pi. Sonic Pi workspace
1sketchbook. All the sketches I've done using Processing (Java graphics library)
1AI-Challenge-2011. Ants AI Challenge for 2011
1project-euler. Got a craving for some puzzles - https://projecteuler.net/archives
1