REAPERの初期設定4 -アーティキュレーション切り替えの独自設定-

(2020.10.13執筆)


前回はREAPERのActionListからショートカット設定を行いました。
今回は応用編として、SFZ音源の奏法(アーティキュレーション)切り替えを簡単にする独自の方法を紹介したいと思います。

手順

  1. 公式サイトからReaPackを導入する
  2. さらにMPL Scriptをインストールする
  3. スクリプトの一覧から、カスタマイズ元のファイル(CC64=0)をコピー
  4. コピー元を参考に、CC0=0,CC0=8,CC0=16,....といった独自アクションを作成
  5. 独自アクションを、アクションリストに新規追加する
  6. これらの独自アクションを、MIDIエディタのショートカットキーに割り当てる



尚、SFZ音源側でCC0=0の奏法、CC0=8の奏法、CC0=16の奏法。。。といった所を設定しておく必要があります。 応用すれば、CC0だけでなく、キースイッチやMIDIチャンネルでの振り分けもショートカットキーで可能かと思われます。

参考 ⇒ SFZ アーティキュレーション切り替えについて

ReaPackを導入する

Linuxの場合、reaper_reapack-~.soというファイルを公式サイトからダウンロードして、所定のフォルダの中に入れます。

公式サイト ⇒ https://reapack.com/


解凍した.soファイルを(home/user/.config/REAPER/UserPlugins/)に入れた状態でREAPERを起動し、上部にReapackのメニューが現れていたら導入完了。

MPL Scriptをインストールする中で

Reapackを導入すると、膨大な数のアクションリストをインストール可能な状態になります。
???困難管理できん。。ってくらい多い。全て入れると目当てのアクションを探すほうが面倒になるので、私は狙った動作を、元のファイルからカスタムする方法を取りました。

とりあえず、MPLスクリプトと名のつくものをインストールしてみてください。

スクリプトのカスタマイズ元の確認・コピー

所定のフォルダ(home/user/.config/REAPER/scripts/MPLなんとか)以下の中に、Reapack経由で導入したアクションリストを確認できると思います。
今回カスタマイズ元として使うのが、MPL script CC64=0.lua, MPL script CC64=127.lua,という感じのアクションになります。

たぶんMPL/Midi Editer/のフォルダに入ってると思うので探す。

出た?


じゃぁそのcc64=0.luaをオリジナルフォルダにコピーして、テキストで編集するんだ。
わざわざMPLを介さずとも、私のテキストからコピーしても良いですよ。使える方法は遠慮なく使ってください。

移動してコピーしてファイル名を整理した後の中身。
REAPER 独自スクリプト

home/user/.config/REAPER/scripts/Timelessberry/MIDI Editer/のフォルダを作って、その中にスクリプトファイルをコピーしました。

独自スクリプトへと変更する

ああ、Reaperのプログラミングなんてさっぱり分かりません。
ですが単純な命令であれば、数字を書き換えるだけで良いので何とかなります。

例として、Add CC64=0というアクションのスクリプトの中身(ちょっと違うけどこんな感じ)

  --[[
     * ReaScript Name: Add CC64=0
     * Lua script for Cockos REAPER
     * Author: MPL
    ]]
    
  --[[
    * Changelog: 
    * v1.0 (2020-09-23)
      + init release
  --]]
  
  function main()
    channel = 0
    MIDIEditor = reaper.MIDIEditor_GetActive()
    if MIDIEditor == nil then return end
    take = reaper.MIDIEditor_GetTake(MIDIEditor)
    if take == nil then return end
    item = reaper.GetMediaItemTake_Item(take)
    itempos = reaper.GetMediaItemInfo_Value(item, 'D_POSITION')
    if reaper.TakeIsMIDI(take) == false then return end
    pos = reaper.GetCursorPosition() 
    ppq = reaper.MIDI_GetPPQPosFromProjTime(take, pos)
    reaper.MIDI_InsertCC(take, 
                          false,--boolean selected, 
                          false,--boolean muted, 
                          ppq,--number ppqpos, 
                          176,--integer chanmsg, 
                          channel,--integer chan, 
                          64, 
                          0)
    reaper.UpdateItemInProject(item)
  end
  
  script_title = "Add CC64=0"
  reaper.Undo_BeginBlock()
  main()
  reaper.Undo_EndBlock(script_title, 0)


これと、CC64=127.luaの中身を見比べると、どの数字を弄ればどのCCを変更できるのか何となく分かるでしょう。
試しに数字を変更して動かしてみるといいのです。


このluaテキストを元に

CC0=0
CC0=8
CC0=16
CC0=24

・・・


といったアーティキュレーションのためのCCの切り替えをそれぞれの.lua(スクリプトファイル)に記述していきます。

アクションリストに、独自カスタムスクリプトを読み込む

REAPER MIDIediter loadAction

アクションの新規追加、ロードReaScriptから独自アクションを読み込めます。
後は、これらのアクションにショートカットキーを割り当てれば一連の初期設定は完了です。


Shift + 1 ⇒ CC0=0
Shift + 2 ⇒ CC0=8
Shift + 3 ⇒ CC0=16
Shift + 4 ⇒ CC0=24

・・・


やろうと思えばCC0だけで127個もの奏法切り替えが可能です。
奏法切り替えの他にも、色々応用が効くと思うので、どんどん試してみてください。

REAPER・カスタマイズ設定項目

  1. 全般の設定を見直す
  2. マウス操作を使いやすくする
  3. アクションリスト(ショートカットキー等)を設定する
  4. アーティキュレーション切り替えの独自設定
  5. デザインを変更する