REAPER Audio Production Without Limits
About : Download : Purchase : Manual : Forum : Resources : REAPER Radio!
REAPER/JS Programming Reference

Introduction

This is a reference guide to programming audio-oriented effects for REAPER using JS. JS is a scripting language which is compiled on the fly and allows you to modify and/or generate audio and MIDI, as well as draw custom vector based UI and analysis displays.

JS effects are simple text files, which when loaded in REAPER become full featured plug-ins. You can try loading existing JS effects and since they are distributed in source form, you can also edit existing effects to suit your needs (we recommend if editing an existing effect you save it as something with a new name--if you do not you may lose your changes when upgrading REAPER).

This guide will offer an outline of the structure of the text file used by JS, the syntax for writing code, as well as a list of all functions and special variables available for use.


JS File Structure

JS Effects are text files that are composed of some description lines followed by one or more code sections.

The description lines that can be specified are:

Following the description lines, there should be code sections. All of the code sections are optional (though an effect without any would likely have limited use). Code sections are declared by a single line, then followed by as much code as needed until the end of the file, or until the next code section. Each code section can only be defined once. The following code sections are currently used: For information on implementing the above sections, see the Basic Code guide, the Advanced Functions list, and the Special Variables list.









Copyright © 2005-2008 Cockos Incorporated