音声

PeloReaper Extensionの情報やダウンロードはこちらからどうぞ。
PeloReaper Extension for REAPER is here.
ReaperBanner01_w250 AudioSoftBanner01_w250

REAPERで音声をMIDIに変換 (2) ピッチ検出でNote生成

前回に引き続き、音声をMIDIに変換する方法を紹介します。今回は、例えば鼻歌などを録音してそれをMIDI化するようなものに使える、波形のピッチ検出を利用した方法です。


ピッチ検出を使ってMIDIに変換

歌などの音声ファイルを用意

RecVox01

今回はピッチ検出を行うため、ある程度音程感のある音声ファイルを用意します。自分で歌を録音したりしてもいいですし、とりあえず試してみる分にはVOCALOIDなどの歌声シンセ系のソフトで作ったりしたものでも良いかと思います。


音声ファイルの前処理

ピッチ検出の精度を上げるために、ある程度波形を整えたり無駄な情報を削除しておくと(自分の欲しいMIDIを得るという意味で)良い結果を得られるかもしれません。参考までですが、以下に前処理の例を書いておきます。

  • 不要な周波数帯(ノイズ・低域等)の信号除去
    人間の歌声なら出る音域は限られていますし、検出したいピッチ範囲が分かっているといった場合もあるかと思いますので、それ以外の範囲の周波数帯はEQ等で削ってしまってもよさそうです。ノイズ等もReaFIRやお好みのプラグイン等で除去しておきます。
  • 音量を整える
    音量感があちこちバラバラなようであれば、コンプなどで整えておくと良さそう。他にもGateでバッサリ切り落としたりするのが有効な場合もあるかも?
  • ピッチ補正ソフトでピッチを整える
    歌声のピッチを安定させた方が、ピッチ検出には有効です。このへんは有名なプラグインを所持している人も多いでしょうし、REAPERにはReaTuneというチューナー兼ピッチ補正FXが付属していますので、それを使ってもよいでしょう。

・・・とかいろいろ書きましたが、これらはとりあえずスルーしてまず後述のピッチ検出&MIDI生成をやってみて、うまくいかなかったら元の波形を整えてみるという感じで構わないかと思います。どういう結果が得たいかによって何をどう整えた方がいいかということは変わってきますので、上記の手法はあくまでそういう方法の例にすぎません。

実際、ItemのFX Chainの最後にReaTuneを入れて結果を確認しながら調整していくと、求める結果に近づいていってるか分かりやすいです。


ReaTuneでピッチ検出&MIDI化

では用意した音声ItemのFX Chainの最後にReaTuneを追加しましょう。これの一番左のタブ[ReaTune - Tuner]がチューナーになっていて、ここで半音単位のピッチ検出を行えます。

ReaTune02

下の方に検出したピッチのMIDI Noteを送信するオプション [Send MIDI events when pitch changes] がありますので、これをONにします。[Detector input] はピッチ検出を行う音声のチャンネル(モノラル)の指定です(通常はChannel 1でOK)。

これで再生すると検出したピッチが変わるたびにMIDI Noteが発行されます。
ReaTune03

ちなみにデフォルトのままだと結構ピッチが頻繁にゆれたりしてしまうので、まずは[Window size]を100~200msなど大きい値でザックリ検出してやると比較的検出が安定した感じになります。ここを調整のスタート地点にして[Overlap]を変えたりして試してみるとよさそうです。しかし、そもそも早くピッチが上下するような歌などを扱う場合はこれではザックリしすぎなので、設定を追い込んでいく必要がありますが。


MIDIをバウンスしてMIDI Item化

こちらは前回説明したので詳しくはそちらを見て下さい。Item右クリックで [Apply track/take FX to items as new take (MIDI output)] を実行すればOK。必要に応じてMIDI Noteのクォンタイズ等も行います。
MIDI_Bounce01

これでMIDIへの変換が完了。


ついでに音も鳴らしてみる

前回はReaSamplomatic5000を使いましたが、今回はもっと簡単にReaSynthをTrack FXに挿入してみましょう。これだけで音がすぐ鳴りますので、音程確認するだけなら十分です。

ReaSynth01

あとは気になるNoteを修正したり、お好きなように。


REAPERで音声をMIDIに変換 (1) ドラムループサンプルのMIDI化

ドラムループなどの録音された音声素材から音が鳴るタイミングなどを抜き出して別の音に差し替えたい、といった場合どうしていますか? このような場合は音声をMIDIに変換してみるのも一つの手です。

REAPERで音声をMIDIに変換する方法はいろいろありますので、何回かの記事で紹介していこうと思います。今回はドラムループのサンプルをMIDIに変換する方法の一例を取り上げてみましょう。


音声の音が大きくなったタイミングをMIDIに変換

ドラムなどのパーカッシブな音声を簡単にMIDIに変換する方法の一つがこの方法です。ここではREAPER付属のReaGateというFXを使って、MIDIに変換してみます。

ReaGateについて

ReaGate01

ここではあまり詳しく説明しませんが、ReaGateはいわゆるゲートエフェクトです。指定の音量(閾値)より小さい音はカットして閾値より大きい音だけを通します。

ReaGateへ入力された音声の音量が閾値を超えるとゲートが開き(Open)、その後閾値より音量が下がるとゲートが閉じる(Close)という感じです。ReaGateにはこのOpen~Closeに対してMIDI Noteを発行する機能がついており、これを使って音声のMIDI化を行うことが出来ます。

ReaGate一番下にある [Send MIDI on open/close] のチェックを入れるとMIDI発行がONになり、発行するMIDI Note番号(Note)、MIDIチャンネル(Channel)も指定できます。

ReaGate_MIDI01

FXの設定方法

ドラムループのwavファイルでItemを1つ作り、そのItemのTake FXとしてReaGateを挿入します。
DrumLoopReaGate01

ReaGateで前述のMIDI発行のチェックをONにします。それ以外は、基本的には音声信号の音量が大きくなる部分を捉えられればよいので、自分で欲しいタイミングのところが捉えられれば閾値(一番左のフェーダー)だけ設定して終わりでも構いません。ここではいくつか知っておくとよさそうな事をいくつか書いておきます。

  • 不要な周波数帯はカットしておくなど適切な前処理をしておくと、閾値の調整がやりやすくなります。ReaGateの前にEQをかけたり、もしくはReaGate下部にある[Lowpass], [Highpass]で音量検出(Detector)に使用される波形を削ることも出来るのでそれを使ってもよいでしょう(右の方にある [Preview filter output] でこのフィルタをかけた音を聴いて確認出来ます)。
    ReaGate_Filter01
  • Stereoの波形を使っていて左右の音に多少ずれがあったりして調整が難しいという音源の場合は、片方のチャンネルだけを入力に使う([Detector input]を例えば [Main input L] などにする)。
    ReaGate_Detector01
  • Envelopeの[Hold]や[Release]を少し伸ばしてやると、発行されるMIDI Noteの長さも長くなる(やり過ぎに注意)

MIDIをバウンスしてMIDI Item化

上記設定がうまく出来ていればドラムループのItem再生時にMIDI Noteが発行されるので、他のトラックにSendしてMIDI録音するとかでもいいのですが、ここではもっと楽な方法を使います。

MIDIBounce01

ドラムループのItemを右クリックして [Apply track/take FX to items as new take (MIDI output)] を実行すると、ドラムループのItemに新しいMIDI Takeが作成され、そこにReaGateが発行したMIDI Noteが記録されます。要するにMIDIバウンス機能ですね。
[Item: Apply track/take FX to items (MIDI output)] というActionでも実行可能)

MIDIBounce02

この生成されたMIDI TakeをダブルクリックすればMIDI編集出来ますので、必要に応じてNoteをクォンタイズ等でタイミング調整してやればOK(クォンタイズはNoteを選択してQキー)。
MIDI_Quantize01

これで音声のMIDI化作業は完了です。


ついでに音も鳴らしてみる

あとはこのドラムループから作ったMIDI ItemのあるTrackにVSTiなどを挿入してやれば音を鳴らせます。以下の手順で ReaSamplomatic5000 を挿入して自分の好きな音を鳴らしてみましょう。

  1. Track FXに [ReaSamplomatic5000] を挿入
  2. 自分の好きなwavをドロップして、使用する波形の範囲やエンベロープ等の設定
  3. Modeは [Sample (Ignores MIDI note)](デフォルト)に設定
    (これはMIDIのNote番号が何番であってもとにかく鳴らすという設定)
    Insert_RS5K01

あとは再生すればMIDI Noteのタイミングで音が鳴ります。

説明は長くなってしまいましたが、一度理解してしまえばサクっとすぐ出来るようになるかと思います。今回紹介した手法は応用範囲が広いので、是非やり方を覚えて活用してみて下さいね。


REAPERのMediaExplorer:WindowsのExplorerモード

REAPERのMedia Explorerのファイル一覧表示部には、もう一つの表示方法があります。
ここでは分かりやすさを優先して勝手にWindowsのExplorerモード(造語)と言ってしまっていますが、要するにWindowsのExplorerと同じように扱える画面に切り替えられるのです。


通常表示とWindows Explorer表示の切り替え方

切り替える方法は、Media Explorer上を右クリックして [Use Windows Explorer for browsing] を選択するだけ。アクションにも [Toggle embedding Windows Explorer] があり、同様の切り替え機能になっています。
MEX_Mode02

これでExplorerと同じような表示に切り替わり、そのままExplorerと同様に使うことが出来ます。いくつか便利な点を挙げてみると、以下のような感じでしょうか。

  • マウスで右クリック(もしくはShift+F10)してExplorerでのコンテキストメニューが使える
    MEX_RClick01
  • スペースキーやトランスポートの[Auto play]をONなどでプレビューも可能
  • 他のExplorerウィンドウからのファイルドラッグ&ドロップによるコピー・移動も可
    以外にもMedia Explorerの通常表示状態だと出来ない機能なので重宝
    ※ファイルプレビュー時などにはREAPERがファイルをロックしていて移動不可なので、[Auto play]をONにしている場合は注意
  • Zipファイル内もブラウズ可能!(内部のwavプレビュー等は不可)

WindowsのExplorerのメニューが使えるということは、例えばシェル拡張メニューなども使えるので、ファイル圧縮系やTortoiseGitのようなツールもここで使えてしまうわけです。

まさかとは思いましたが、ブラウズするだけならZipファイル内も見られるというのも少し意外でした。ちょっと応用例がすぐ思いつきませんが、どこかで役立つかもしれませんね。

あと、このWindows Explorer表示はフォルダをブラウジングしている場合のみ利用できる機能です。Media Explorerのデータベースファイル一覧表示(次回あたりにでも紹介予定)の時には利用できません。



WindowsのExplorerモードを紹介してみましたが、これも結構便利に使えそうですね。ちょっとしたことがやりたいだけなのに、わざわざWindows Explorerを起動してMedia Explorerで開いている場所を開いて・・・といったことをやる必要がなくなるというのは非常に助かります。

ちなみに自分の場合は [Toggle embedding Windows Explorer] アクションを[Ctrl+E]に割り当てて、必要に応じて切り替えられるようにしています。


このブログについて
ぺろりがREAPERで遊びたいというだけのブログかもしれない

必ずこちらをお読みください

twitter: @pelori

管理人用
  • ライブドアブログ