.vscode | ||
ch32_decoder | ||
encoder | ||
video | ||
.gitignore | ||
README.md |
video compressor and player for the ch32v003 with an SSD1306 32x128 OLED display
https://www.youtube.com/watch?v=G0eonL14tCQ
Put a webm file in video/
and run ./convert <framerate>
to convert the video to a sequence of 32x40 images.
Run cd encoder && cargo run
to convert to bytes, this will be exported to data.h
.
Tweak framerate or MAX_ERROR in main.rs
until the total size fits the 16k flash alongside the decoder.
By default it's tuned for bad apple.
building ch32_decoder
If you are not on Linux, good luck.
You will need ch32v003fun in next to the folder for this repository.
The gdbinit
file contains the device path for uploading via a Pi Pico with PicoRVD. This is triggered with make flash
.
If you have an official WCH programmer you can probably run make cv_flash
to use minchlink from ch32v003fun, but I can't test this.
hardware
Made for my ch32_oled project, but all it needs is a 128x32 SSD1306 display connected.