Skip to content

Latest commit

 

History

History
152 lines (109 loc) · 4.96 KB

installation.md

File metadata and controls

152 lines (109 loc) · 4.96 KB

Instructions for beyond_reaper Installation

This document will show you how to install beyond_reaper - a package that can allow users to controll REAPER using python.

The original source of package is from here. The version used here is V27.

Requirements

  • python 3.4+
  • MAC / Windows
  • anaconda (recommended)

The document is currently based on MAC. For Windows users, there are just few difference in path or command, so you can keep reading. I will find someday to complete it.

Stable Environment

  • REAPER: v5.982, v5.99
  • python: 3.7
conda install python=3.7 # force to reset anaconda python version

Installation

The instructions is for MacOS. For Windows users, there are only a few difference in commands or path setting.

1. Unzip the package

Dowanload and unzip the package beyond_reaper.zip to anywhere you prefer.

Next, you will found there is an original insturctions in the folder:

beyond_reaper/Introduction & Installation.txt.

The remaining steps are based on it. But I will visualize and explain every steps to make it easier to understand.

2. Path Settings

2a. Edit beyond.pth

Enter the full path to the "./Modules" directory on the first line.

2b. Copy beyond.pth to python site-packages folder**

First of all, check the current python you are using. Simply type this in your command line:

$ which python

Depends on yout environment, the path might be different. Here are two common scenarios:

  • For native python users:
    The output of above command sould be like this:
/usr/local/bin/python

Please copy beyond.pth to:

/usr/local/lib/python3.7/site-packages
# original instruction: <Python Path>/Lib/site-packages
  • For anaconda users:
    The output of the command sould be like this:
/Users/username/anaconda3/bin/python

Please copy beyond.pth to:

/Users/username/anaconda3/lib/python3.7/site-packages
# original instruction: <Python Path>/Lib/site-packages

3. Setup REAPER

  • Open your REAEPR application
  • Open /Modules/beyond/Reaper/Settings.py

3a. Enable Python for use with ReaScript

click the checkbox to enable python. For native python users, everything should be done.

If .dylib or .dll is not found, especially happened in anaconda users, please follow the steps here:

  • Find the location of your python .dylib or .dll. For example, mine is /Users/username/anaconda3/lib/libpython3.7m.dylib
  • Unfortunately, REAPER can only recognize libpython.dylib file. So make a softlink by
$ ln -s libpython3.7m.dylib libpython.dylib
  • Fill the "Custom path to python dll directory" section. For example, mine is /Users/username/anaconda3/lib, as shown in the figure
  • Remeber to click "Apply"

3b. Load RemoteControl Script

Open /Modules/beyond/Reaper/Settings.py, Step 1.

  • From Reaper's "New Action>Load ReaScript" press "ReaScript: Load..."
  • Find and select file ...\Modules\beyond\Reaper\RemoteControl.py
  • Back on the Actions list, you will see "Script: RemoteControl.py"
  • Right click on it and select "Copy selected action command ID"
  • Paste that to the line here:
# in ...\Modules\beyond\Reaper\Settings.py
Reaper_RemoteControl_CommandID = "_RS..."

3c. Reaper's OSC and Addresses

Open /Modules/beyond/Reaper/Settings.py, Step 2.

  • From Reaper's "Options/Preferences" select "Control/OSC/web" page.
  • Press "Add" and select "OSC (Open Sound Control)".
  • Make sure the "Pattern config:" is set to Default.
  • Select "Mode" to local "port"

3d. Set python executable for REAPER

Open /Modules/beyond/Reaper/Settings.py, Step 3.

Again, check the current location of python by typing:

$ which python

Paste it to the line:

# native python
Python = r"C:\Program Files\Python\python.exe"  

# anaconda
Python = r"/Users/username/anaconda3/bin/python"

Have Fun

Finally, we are here. But there are some minor settings you need to pay attention to:

  • Click "Automatically close when finished", or it will block your process.

  • Timeout setting
    In /Modules/beyond/Network.py, there is a variable named TimeOut. If you have a file consuming lots of time, you should make it larger.

  • pytautogui is your best friend. If there is any dialogue window blocking your program, just use it to simulate human's behavior - click next!

  • The detailed instructions of setting for the musicians and engneers, please visit project_setting.md.