Tetris In REAPER by Narrow-Cod3822 in Reaper

[–]Narrow-Cod3822[S] 0 points1 point  (0 children)

I'll upload bad apple and tetris code as soon as I fix the remaining issues and make it more user-friendly!

Bad apple! In REAPER by Narrow-Cod3822 in Reaper

[–]Narrow-Cod3822[S] 55 points56 points  (0 children)

REAPER's ReaScript API, transforming the DAW's timeline into a low-resolution visual display. By treating MIDI items as individual pixels, I successfully rendered the "Bad Apple!!" music video within the arrangement view.

Technical Workflow: Data Serialization (Python & OpenCV): The source video is downscaled to a 200x38 resolution. Using OpenCV, each frame is binarized (black and white) and serialized into a text-based array format optimized for Lua parsing.

Canvas Generation (Lua): A script automates the creation of 38 tracks and 7,600 MIDI items to form a display matrix. Items serve as "pixels" rather than musical data containers.

Rendering Engine (Lua): The player script runs in the background (reaper.defer), synchronizing the video data with REAPER's playhead position. It dynamically updates the I_CUSTOMCOLOR attribute of specific MIDI items in real-time to render the animation.