bad-apple/README.md
2024-04-13 00:48:38 +02:00

22 lines
1.1 KiB
Markdown

# 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](https://github.com/cnlohr/ch32v003fun/) in next to the folder for this repository.
The `gdbinit` file contains the device path for uploading via a Pi Pico with [PicoRVD](https://github.com/aappleby/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](https://git.crispypin.cc/CrispyPin/ch32_oled) project, but all it needs is a 128x32 SSD1306 display connected.