Video Scratcher for Max For Live

Video Scratcher is a MaxforLive device that allows you to create short video loops which can be beat-matched to your Ableton project.

You can load a folder of video clips then set start and end points in any of them and have an LFO modulating the playhead between the two points either forwards, backwards, forwards and backwards, have it moving to random points or alternating between start and end points. The speed can then be synced to various beat divisions so that it will play in time with your project.

Stored clips / presets can be played live using a MIDI keyboard / controller, triggered with MIDI clips, or automated using the ‘Presets’ dial.

All controls are mapped to Push 2 and can be fully automated in Live.

Output can be recorded via Syphon (MacOS) or Spout (Windows). Download the free Syphon Recorder here or the free Spout Recorder here.


Windows Users! Read this if your videos are not displaying

Max’s video engine needs to be set to VIDDLL and not Quicktime (the default) in order for videos to play. If video filenames appear in the drop-down menu but are only showing a black screen when selecting them, please do the following:

1. Click the ‘edit’ button in the device’s header bar to open it in Max
2. While in Max, click ‘File’ then ‘Show Package Manager’. In the window that’s popped up, select ‘Installed Packages’ from the drop down menu. Scroll down the page and look for the VIDDLL package. If it’s already there, skip to step 4.
3. If the VIDDLL package is not listed, you’ll need to install it. Select ‘Remote Packages’ from the drop-down menu, then click inside the search bar and search for “viddll” (without the quotes). Click the ‘VIDDLL’ package from the results, then click ‘install’. Restart Ableton, load the device again and click the ‘edit’ button.
4. In Max, click Options > Preferences, then scroll down until you see the ‘Jitter’ section. Change ‘Video Engine’ to ‘viddll’.
5. Close the Max window, restart Ableton, load the device again, drop in your video folder and try selecting a video.

This should have fixed things.


Added / Fixed in v1.2:

  • Playhead movement is no longer stored in Ableton’s Undo History (prevents LFO movements from flooding Undo History).
  • Current video clip folder is now saved along with your project. Reopening the project will now reopen the correct folder and load the video clips automatically. Similarly, when instances of the device are saved in the User Library as presets / .adv files, the correct folder will open along with them.
  • Added ‘Lock’ button (on by default). Turn off to unlock the LFO from beat sync. When Lock is off, the LFO will be re-triggered (and the clip restarted) whenever a preset is selected.
  • Presets can now be selected / triggered with MIDI notes (range C0 – B4).
  • Presets layout changed to show which MIDI notes are assigned to which preset slot.

Added in v1.1:

  • There are now two versions of the device: MacOS version outputs to Syphon. Windows version outputs to Spout. Use the free Syphon Recorder / Spout Recorder to record your creations.
  • Added a Phase control for ‘nudging’ the timing of the clip forwards/backwards.
  • Added oscilloscope for LFO.
  • LFO Curve can now be set to exponential or logarithmic shapes.
  • LFO Curve can now be applied to the Ramp, Sin, and Triangle LFO shapes. Previously it could only be applied to a separate Ramp LFO shape (now removed).
  • Added selectable output resolution (for when outputting to Syphon/Spout).

Fixed in v1.1:

  • LFO Shape automation parameter and Push control now show the correct LFO Shape name.
  • Combined Beats / Bars into one dropdown (Rate).
  • Video now displaying correctly when using multiple instances of the device.
  • Re-arranged GUI a little.


  • Works best with short video clips (3-10 secs).

System requirements:

  • MacOS 64bit / Windows 10/11.
  • Ableton Live 11+
  • Max For Live (included with Ableton Live Suite)