Edited at

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

More than 1 year has passed since last update.


はじめに

作曲ソフト(≒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