A lightweight binary file visualizer and raw audio player built with C and SDL2. Bytefall renders any file as a scrolling pixel waterfall and plays its bytes as an audio signal.
- 8-bit grayscale, 16-bit grayscale, RGB, and RGBA modes
- Smooth SDL2 rendering and real-time zoom
- Raw byte audio playback with speed and volume controls
- Hex tooltips, byte offsets, and a minimap
- Drag-and-drop file loading
- Linux and Windows support
sudo pacman -S --needed base-devel sdl2
makesudo apt install build-essential pkg-config libsdl2-dev
makeThe executable is created as ./bytefall.
Install MSYS2, open the UCRT64 terminal, and run:
pacman -Syu
pacman -S --needed make mingw-w64-ucrt-x86_64-gcc mingw-w64-ucrt-x86_64-pkgconf mingw-w64-ucrt-x86_64-SDL2
makeThe executable is created as bytefall.exe. To run it outside the MSYS2 terminal, copy the SDL2 runtime next to it:
cp /ucrt64/bin/SDL2.dll .make clean
makeUse Clang by passing CC=clang to make.
./bytefall path/to/file.binOn Windows:
./bytefall.exe path/to/file.binYou can also start Bytefall without an argument and drop a file onto the window.
| Input | Action |
|---|---|
Space |
Play or pause |
R |
Restart |
M |
Mute or unmute |
Up / Down |
Change playback speed |
| Mouse wheel | Scroll |
Ctrl + mouse wheel |
Zoom |
? / H |
Show help |
Esc / Q |
Exit |
Create compatible binary images with img2bin.
See LICENSE.

