10
8

More than 5 years have passed since last update.

【REAPER】ReascriptをPythonで弄れるようにするには

Last updated at Posted at 2017-04-02

はじめに

作曲ソフト(≒DAW)のREAPERへ、独自のスクリプトを書く事が出来る機能”Reascript”は、プログラミング言語"Python"を用いることが出来きます。
今回はその環境構築方法に関して、簡易的な手順とテストコードを記載しますね。
(これ関係の和訳記事が少ない為、興味ある方への手助けに成れば幸いです。)

環境

Windows10 64bit
REAPER v5.27 64bit

1. Pythonのインストール

下記URL先にてインストーラーのダウンロード&インストールを行います。
https://www.python.org/downloads/

※注意点

64bit版のREAPERをお使いの場合、Pythonも64bit版を用意しなければ今後の工程(手順3)でエラーが発生します。

2. Python"xx".dllをREAPERへ読み込ませる

上記、不思議なファイル名になってしまいましたが、「Python"xx".dll」の"xx"はバージョン名です。
僕の場合、インストールしたPythonのバージョンは3.6.1だった為、「Python36.dll」という名前になります。

2-1. Python"xx".dllのパスを入手

これから「Python36.dll」をREAPERへ読み込ませる為、そのパスを知る必要があります。
この場所は手順1のインストール先によって変動します。もし分からない場合はエクスプローラーにて「Python"xx".dll」と検索すると見つかるかと思われます。

ちなみに、「Python36.dll」が置いてあったフォルダの雰囲気はこんな感じでした。
(同フォルダ内に「Python3.dll」がありますが、こちらは使用しないものなのでご注意を。)
キャプチャ.PNG

2-2. REAPERへ読み込ませる

プリファレンスを表示させます。
Ctrl + Pもしくは、メニューバーからOptions > Preferenecs
キャプチャ2.PNG

”ReaScript”にて下記3項目の設定を行います。
設定を行い、画面下部に記載の

Python: No compatible version ofPython was found.

Python: python"xx".dll is installed.

と変われば、読み込み成功です。

Enable Python for use with ReaScript
左側のチェックを入れる
Custom path to Python dll directory:
右端のBrowse...を押し、手順2-1にて入手したパスを指定します。
Forse ReaScript to use specific Python dll:
右側に「Python"xx".dll」と入力

キャプチャ4.PNG

いかがでしょうか。
画像内の黄色いハイライトの様に表示が変わりましたら、読み込み成功ですのでOKを押し、REAPERの再起動を行います。

3. 実際にスクリプトを作成する

アクション編集画面から新規スクリプトファイルを作成し、出現したエディターからスクリプトを編集していきます。

メニューバーからActions > Show action list...
キャプチャ5.PNG

アクティブになっているボタン、「ReaScript」項のNew...をクリック
キャプチャ6.PNG

「ファイルの種類」項にて、REAPERが拡張子.pyを対応している事の確認をしましょう。
もしここで.pyが表示されていなかった場合、手順1にて異なるバージョンをインストールしている、もしくは異なるdllファイルを読み込ませている可能性があります。
キャプチャ8.PNG

適当なファイル名を入力し、その後ろに必ず拡張子.pyを入力しましょう。
ファイル名だけですと、

Extension not supported:""

「そんな拡張子(空白)は対応しておらん!」と怒られてしまいますのでご注意を。
保存を押すと、こんなスクリプトエディターが表示されます。
キャプチャ.PNG

本投稿では、具体的な表記方法についての説明は割愛させて頂きますが、
下記コードをコピペし、Ctrl + S(保存)をすると、メッセージボックスやコンソールが出現し「Hello World!」と表示してくれます。

test.py
RPR_ClearConsole()

str = "Hello World!"

RPR_ShowMessageBox(str, "title", 0 )
RPR_ShowConsoleMsg(str)

まとめ

いかがでしたでしょうか。

僕自身、プログラミングの勉強を始めて間もないですが、
今後はPythonを使って音をだしたり、機械学習関係にも手を出せたらと思います。

参考文献

敬称略。

leihcrev著「Python 3.4 Windows7-64bit 環境を作る (金融時系列解析向け)」
http://qiita.com/leihcrev/items/4971eee4e657be953895
「REASCRIPT API — DOCUMENTATION」
https://www.extremraym.com/cloud/reascript-doc/
「REAPER-ReaScript」
http://www.reaper.fm/sdk/reascript/reascript.php#reascript_basic

10
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
8