Developers

Under the hood.

A native Mac app, built as an instrument first. What it's made of, and where it could go.

Stack

Swift, Metal and a bit of Rust

About 39,000 lines of Swift (SwiftUI, AppKit where needed, AVFoundation), a thousand lines of Metal shaders through MetalPetal, and ntsc-rs in Rust for the VHS pass. Apple silicon only, for now.

Size

Why the download is 78 MB

Not the code: the binary is under 20 MB. The rest is four reels of real VHS noise the analogue compositor samples as it goes, so no two passes look alike.

Grid

How it finds the beat

Its own analysis, offline: an onset curve, a tempo fitted to the kicks, a downbeat vote with a backbeat filter that keeps snares off the one. Tap tempo and nudges for the rest.

Playback

Proxies and the monitor

Every tape gets a 720p HEVC proxy with a keyframe every half second, so cutting between dozens of long files on every beat stays smooth. Export reads the originals.

Beta loop

This site and the updater

One Cloudflare Worker with D1 and R2. Mailed sign-ups behind a bot check. Updates are a signed manifest the app verifies with a key it carries. No account, nothing sent but a version ping and the feedback you choose.

Next

Things to explore

  • Live audio input for VJing: the grid locked to the room, not a file.
  • Clock sync: MIDI or Ableton Link.
  • XML import and autosave, so a cut is never lost.
  • More trig language: A:B conditions, per-effect dice, cold resets.
  • Open source, once the beta settles. We'd like Beatknife to belong to a community.

Curious, or want to help? info@beatknife.app

Changelog

What changed.

Loading…
Join the beta