2016年10月13日木曜日

KONTAKT音源制作風景 RX5編

もっぴーさんが、音源制作に使用しているソフトウェアの公開をされたページはこちら)ので、そのうちのRX5の詳細を私が記事にしてみようという話題が出て、私の音源制作の風景の一部を記事にしてみることにしました。

こんな記事やくにたつんかいなと思いつつですが、音声編集の一環として読んでいただければ光栄でございます。


まず、

iTunesを立ち上げます。(ぇ

そしてカラムブラウザーでサントラにセットしてランダム再生させます。
ミニプレイヤーにして画面の隅においておきます。

おいおい、これは・・・・

いえ、作業中、音を鳴らさない時間がけっこうあるので、BGMが必要なのです。
そして音声編集が終わり音源制作に移ると音楽が聞けなくなることが多いので・・・。
ということで、何でもいいのでBGMを立ち上げますw

そして今回のメインとなる、RX5です。
こちらです。

何も表示されてないので味気ないですが、この右に表示されているのが、いわゆるツールみたいなもので、これのうち、私がよく使うのは、

Spectral Repair
Gain
Plug-in

です。

バッチ処理させたときは、

De-noise

を使用しましたが、今は手作業がメインなので、あまり使いません。

こちらがそれぞれの画面です。


Plug-inは使うものによって画面が違うので画像は表示させませんでした。
RX5では、いわゆるプラグインが使えるので、よそ様のEQが使えたり、トーンジェネレーターだったりコンプだったりが、選択範囲に適用されます。使えないプラグインも結構ありますのでDEMO版を入れてチェックしてから買うなどしないと、痛い目見ます。
ちなみに私がよく使うプラグインはピッチシフター系です。
RX5の上位版だとピッチ変更も可能なのですが、DEMOでさわった感じ、周波数の一部だけの適用ができなかった感じがします。プラグインだと、選択範囲内だけピッチチェンジされたものが反映されて、便利でした。
選択範囲が窓で、全体がピッチ移動して、丁度窓の中に、移動されたものが見えてくるという感じです。
モノにより、ノイズが発生しやすいピッチシフターもあります。つまりは、プラグインの質ということです。慎重に選ぶことが大事ですね。

ついでにこちらは、Spectrum Analyzerの画面。ま、分析画面の一つです。うちはデュアルディスプレイなのでもう一つのディスプレイの方に表示させてあります。

では、作業に移ります。
と、せっかくなので、De-noiseで、前回どういう作業をしたかを、見てみましょう。


こちらが、Legato部分を作ったときの生ファイルです。
生といっても、Cubaseで一部加工済みです。
左に段差があるのがそうで、これは、ちょっと理由があって、聞こえない部分ですが、音程を変える必要があってこうなりました。実際には使われない部分です。気にしないでください。

このファイルをDe-noiseを使用して、音声部分だけを抜き出す作業を、バッチ処理させました。
処理させた結果が、こちらです。


この時点でノイズはだいたい取れてます。
しかし、音源のバージョンアップに伴い、もっと音質向上を目指し、他の工程をとることにしました。
 それは、今回はボーカル音源ですが、人の声をアナライズして、手動でデジタルボイスをリアルに作ることです。

過程は企業秘密なので、結果とその後の工程だけ示させていただきます。
 まず、レガートを作るため、秘密に制作した2種類の「A(ア)」のサンプルを用意します。


上が高い音、下が低い音です。
これをなめらかにに繋がなければなりません。どうしましょう。

こんなファイルを用意しました。

これは、CubaseとMassiveを使って、Saw toothをベンドさせたものを書き出したものです。

ではこれらを使って、きれいなレガートを作りましょう。

まずは、ベースとなる元のファイルに、高い音を約0.65秒上書き貼り付けします(RX5はMIXもできますが今回はしません)。

波形をうっすら表示させ、なるべく綺麗そうなところを、約0.65秒選択してコピーです。
これで、このファイルの役目は一旦終わりました。さようなら。。。
ちなみにこの時、アナライザーはこうなってます。

選択した部分の平均値かな?そんな感じが表示されます。特にここでは見る意味はありませんが、スペクトラムアナライザとはこんなものだという参考までに。。。(ちなみに右端にちょこんと出っ張っているのは、どこかで混入したノイズです。あまりにもひどい場合は、作業中に消してしまいます。)

さて、コピーした部分を先ほど言ったように貼り付けます。

はい!できました。あ、このときGainを使用して、-1ずつ調整していき、波形を見ながらだいたい同じボリュームに調節します。この作業は、メイン画面の色ではわかりにくいので、波形で判断します。それこそ先ほどのスペクトラムアナライザーで確認するのもありです。

次は、低い音をの方を、今回は約1.3秒を0.9秒から貼り付けます。

はいぺったんこ!
これだけでもずいぶん綺麗になった気はしますが、実際は、つなぎ目にノイズがのり、おかしな音になりますし、今回の目的である綺麗なレガートを作るという役目を果たせていません。

ここからひとまず、最後のお尻の部分の処理をします。
ここでSpectral RepairのPartials+Noiseという機能を使います。
私も細かくは説明できないのですが、簡単に言うと、左右の音を綺麗につないでくれます。

設定値をガンガンに上げて、左を参照するように設定し、2.1秒以降に適用します。

Core i7 3820でも10秒程かかる処理ですが、このように、お尻が綺麗になりました。
コピーして貼り付けりゃいいじゃんと思われるかもしれませんが、コピペは、つなぎ目にノイズが発生し、それを処理するためにさらに処理が発生しますので、二度手間なのです。今知っている方法として、端っこの処理はこれが一番綺麗でした。

そしてこれを、GainツールのFadeを使用し、フェードアウトさせます。画像は、あえて載せませんので、後の画像でご確認ください。

次の工程は、用意したSaw toothファイルを繋げます。
まずは、あらかじめタイミングを計っておいたので、0.8秒から1.3秒をコピーし、それを0.48秒(このタイミングが大事)から上書き貼り付けします。(つまり、元のファイルの修正なので、秒数とフォーマットが同じであれば、元のファイルの内容なんて何でもよかったんです。全部上書きされてしまいますw)

作業画像を省きますが、ここで大きなミスを発見しました。B3からC#3までの7thのレガートだったのですが、低い方のファイルを間違ってCを使用していました。ここで、画像抜きで、修正します。これ以降、これ以前の画像とほんのちょっと変わっています。


はい、ぺったんこ!
しかしこれではいけませんね。わかりますね、レガート部はのこぎり波です。ビーっていいます。それと、下から3番目と4番目(第3倍音と第4倍音)を見てください。後続する音の方が色が明るいです。つまり、後続音の方がボリュームが大きいのです。
RX5は、綺麗に音を下げることはできますが、上げるのは難しいのです。
そこで、あらかじめここの範囲のボリュームをGainで上げておき、そのあとSpectral Repairツールで不要な部分を下げる方法をとります。
まず、グイッと上げます。

あとから上げて綺麗につなげるのは大変難しいので、前後(図でいう左右)の音のどこよりもボリュームを大きくしておきます。色が他より明るければいいわけです。

このあと、魔法を使います。
私がRX5で一番よく使う機能といってもいいでしょう。
Spectral RepairのAttenuateです。
この、貼り付けた部分の選択を維持したまま、Attenuateを行います。
設定値は、いろんな要素から判断しているのでここでは細かい説明を省かせていただきます。
簡単に言うと、Bandsは細かすぎると消えてはけない部分が消えるので256と浅めに、左右の参照比重はまずは対称に、Strengthは少し強めで1.5、方向はHorizontalつまり左右で(結局全部説明してしもた)。
これで適用させると、

はい!このとおり!!
あとGainを数回、Attenuateを2、3回使い、微調整します。ここは企業秘密で。要は前後とボリュームが、全周波数(図でいう上下)で綺麗に繋がる(色の明るさが同じくらいに)ように調整するわけです。

現時点でこのような感じになります。(波形は邪魔なので上に移動しました。)
この時点ではつなぎ目にノイズがのっています、これを今から削除するのですが、その前に、音程が変わったのに強く出ている周波数がほとんど変わってない、問題ないのかと思われるかもしれません。実は、フォルマントの関係で、この方が自然に繋がるのです。逆にこうなってないと、「はじめてのチュウ」のコロ助みたいに、ボイスチェンジャーで変化させた声みたいになるわけです
人の声は、同じ母音の場合、音程が変わっても、強く出る周波数がだいたい同じなのです。これにより、人それぞれの声の特徴が出るのです(専門家ではないので間違ったこと言ってるかもしれません)

ではこれから、つなぎ目を綺麗にします。
これは、口頭で言うと、まず、ReplaceとPartials+Noiseを使用し、繋ぎ目をなくしていきます、その過程で生じるノイズをAttenuateで消していきます。
細かい作業は、今回の作業とは異なりますが、こちらの動画である程度わかります。30分バージョンと3分バージョンとありますが、内容は早送りしただけなのでどちらでもww

で、ノイズ処理をほどこしたものがこちらになります。

ここで聞いていたBGM(iTunes)を止めます。

音声チェックです。綺麗に繋がっているか、おかしな音はないか。


。。

。。。

どうやら大丈夫です。

あと、お化粧します。

人がレガートで声を下げると、一瞬音が強く出る周波数があるのです。

元の画像でいうこれです。(途中のファイルミスにより、元画像変わりました)

だいたい「A(ア)」の場合で600Hzから1200Hzあたりにあります。
それを私は、なめらかになるよう範囲をずらしながら3回に分けて、Gainで約10dB程度上げます。

はいっ!できました!

比べてみましょう。

とっても綺麗になりました。
しかしこれは大問題なのです。
音が綺麗過ぎて、人間らしさを失っているのです。
声の微妙な揺れも、吐息の音も消えてしまっているのです。
ですから、ここからまだKONTAKT上で人間らしさを追加し、Breath(息)サウンドを追加します。
それでやっと、この上の図でいう下の音のゴージャス版が出来上がる(予定)というわけです。

いくつか企業秘密がありましたが、RX5での作業というのはこんな感じで、こういうことができますよ、の、一部を紹介できたかと思います。
他にも、ClipやClickノイズを消したり、EQもついてたりします。しかし、1、2箇所のClickノイズであらば、今回の方法のように、手動で消すことも不可能ではないです。3分のファイルに大量に載っているClickなどを消すならば、そちらのツールを使う方が早いでしょう。

ということでRX5の作業風景の一部でした。

大事なのは、作業中、BGMを聞くことです!

2016年10月11日火曜日

ゲーミングマウス G700s スクリプト



ま、これがG700sなわけですが。

通常のマウス機能に加えて、割り当て可能なボタンが8個あるわけですな。

そして、左右クリック、中央クリック、中央左右で、5、全部で13クリックあるわけですな。
それとホイール操作。

スクリプトでホイール操作はできるようですがホイール操作の検知はできないようです
その他のボタンの検知はできるので、私の場合は、スクリプト起動時からの時間というのを用いて、各ボタンにダブルクリックや、ドラッグを、配置しております。

私はゲームに使っているのではなく、音源制作における、RX5というソフトでの音声編集作業にこれを使っております。

今回ご紹介するスクリプトは、Luaという言語らしく(初耳です)、G-series独自の関数が用意されたものらしいです。インストール時に説明書PDFが着いてたと思います。

さて、何がしたいかというと、

中央ボタンに「I」を設定し、かつ、ドラッグ時はIを起動させずShift+Gからドラッグしてドラッグ終了で都合上Rに戻すという設定

ボタン5(横の下、前側)にAltダブルクリックでCtrlにするという設定

ということです。

ドラッグやダブルクリックは、専用ソフトで設定できなさそうだったので、スクリプトを使用することにしました。

まず、設定可能な主な機能は、専用のソフトウェアで設定し、スクリプトを使用するボタンは、機能をはずしておきます。以下スクリプトです。↓

key, new_time, old_time = 0,0,0;

function OnEvent(event, arg, family)
    --OutputLogMessage("event = %s, arg = %s, family = %s\n", event, arg, family);
    if (event == "MOUSE_BUTTON_PRESSED" and arg == 3) then
        new_time = GetRunningTime();
        EnablePrimaryMouseButtonEvents(1);
        PressKey("lshift");
        PressAndReleaseKey("g");
        ReleaseKey("lshift");
        PressMouseButton(1);
    end
    if (event == "MOUSE_BUTTON_RELEASED" and arg == 3) then
        old_time = GetRunningTime();
        --OutputLogMessage("%s %s\n", new_time, old_time);
            if ((old_time - new_time) < 200) then
                PressAndReleaseKey("i");
            end

            PressAndReleaseKey("r");
            ReleaseMouseButton(1);
            EnablePrimaryMouseButtonEvents(0);
        end

    if (event == "MOUSE_BUTTON_PRESSED" and arg == 5) then
        new_time = GetRunningTime();
        --OutputLogMessage("%s %s\n", new_time, old_time);
        if ((new_time - old_time) > 2000) then
            key = 0;
        end
        if (key == 0) then
            PressKey("lalt");
            old_time = GetRunningTime();
        else
            PressKey("lctrl");
            old_time = GetRunningTime();
        end
        key = math.abs(key - 1);
    end
    if (event == "MOUSE_BUTTON_RELEASED" and arg == 5) then
        ReleaseKey("lalt");
        ReleaseKey("lctrl");
    end
end

こっから解説
中央ボタンのスクリプトで、new_timeとold_timeの意味合いが逆になっていることを先に言っておきます。ボタン5で同じ変数を使ってしまったのでこうなってしまったのかも。別変数にわけたほうがよかったですね)

とりあえず変数設定、すべて0
key, new_time, old_time = 0,0,0;

イベント発生
function OnEvent(event, arg, family)
    テスト用メッセージ
    --OutputLogMessage("event = %s, arg = %s, family = %s\n", event, arg, family);
    もし中央ボタン(3)が押されたならば
    if (event == "MOUSE_BUTTON_PRESSED" and arg == 3) then
        スクリプト起動からの時間をnew_timeとして記録(ミリ秒だったかと)
        new_time = GetRunningTime();
        左クリックの制御を有効にする
        EnablePrimaryMouseButtonEvents(1);
        左シフトキーを押さえっぱなしにする
        PressKey("lshift");
        キーボードのgを押して離す(要はタイプする。今回はShift+Gがドラッグする前のショートカットキーである)
        PressAndReleaseKey("g");
        左シフトキーを離す
        ReleaseKey("lshift");
        左クリックボタンを押しっぱなしにする(ドラッグ操作のため)
        PressMouseButton(1);
    end
    もし中央ボタン(3)が離されたならば
    if (event == "MOUSE_BUTTON_RELEASED" and arg == 3) then
        離したときの時間をold_timeとして記録する
        old_time = GetRunningTime();
        メッセージ
        --OutputLogMessage("%s %s\n", new_time, old_time);
            もし、中央ボタンを離したときの時間が押したときから200ミリ秒未満なら
            if ((old_time - new_time) < 200) then
                通常のクリックとみなしてキーボードのiを押して離す
                PressAndReleaseKey("i");
            end

            いずれにしても中央ボタンを離すまではドラッグ状態で、離したときキーボードのrを押して離す(これは操作するソフトの都合上、Gを解除するためにRを押しているだけである)
            PressAndReleaseKey("r");
            ドラッグ終了のため左ボタンを離す
            ReleaseMouseButton(1);
            念のため、左クリックボタンの制御を無効にする
            EnablePrimaryMouseButtonEvents(0);
        end
    もし中央ボタン(5)が押されたならば
    if (event == "MOUSE_BUTTON_PRESSED" and arg == 5) then
        スクリプト起動からの時間をnew_timeとして記録
        new_time = GetRunningTime();
        メッセージ
        --OutputLogMessage("%s %s\n", new_time, old_time);
        もしボタン5を押したのが、前に押したときより2秒を超えていたら
        if ((new_time - old_time) > 2000) then
            通常クリックとみなしフラグkeyに0をセット
            key = 0;
        end
        通常クリックならば
        if (key == 0) then
            Altキーを押しっぱなしにする
            PressKey("lalt");
            スクリプト起動からの時間をold_timeとして記録
            old_time = GetRunningTime();
        もしボタン5を押したのが、前に押したときより2秒以下ならダブルクリックとみなす
        else
            Ctrlキーを押しっぱなしにする
            PressKey("lctrl");
            スクリプト起動からの時間をold_timeとして記録(どうせ同じなんだからnew_timeと比較の後にまとめて書いてもよかったですね)
            old_time = GetRunningTime();
        end
        フラグを0なら1、1なら0にする
        key = math.abs(key - 1);
    end
    もし中央ボタン(5)が離されたならば
    if (event == "MOUSE_BUTTON_RELEASED" and arg == 5) then
        Altボタンを離す
        ReleaseKey("lalt");
        Ctrlボタンを離す
        ReleaseKey("lctrl");
    end
end

もっとよい書き方があるかもしれません。
たとえば、時間を取得せず、Sleepを使う方法もあるようです。
しかしSleepはその間操作が止まるらしいので、この場合まずいと思い今回は時間をはかる方にしました。

ちなみに今回の用途はブラウザ閲覧などではないので、中央クリック左にUndo、右にRedoを設定しております。こちらもとても便利で作業がはかどります。

お約束ながら、このスクリプトで誤動作を起こして、皆さんにダイソンガイを起こしても責任は取れませんのでご了承ください。自己責任でお願いします。


ではまたお会いしましょう。。。

2016年7月13日水曜日

ギター音源の自論 - 傷ついたレンガ

とりあえず、私がKMG7の作者です(・ω・;)ゞ

最近ツイートを見ているとエレキギター音源がどんどん増えている気がします。

外国製品はあまり知らないので、国産品でお話を進めますが。

KMG7はKMGと書きます。
ほか、AとBとCとします。何がどの音源かはご想像にお任せ。


まず、それぞれの簡単な特徴から

 以下、私個人が感じた評価です。
ちなみにKMGは無料なのでこれらの評価に差別はしていません。

Aの特徴
世界的知名度=高
価格=高
出せる音の種類=多い
音質=良
操作性=不明
 
Bの特徴
世界的知名度=普通
価格=普通
出せる音の種類=普通
音質=良
操作性=普通
 
Cの特徴
世界的知名度=低
価格=普通
出せる音の種類=多い
音質=良
操作性=難

ついでにKMGの特徴
世界的知名度=普通
価格=無料
出せる音の種類=普通から少なめ
音質=低
操作性=良


ということで
KMGの特徴としては
基本フリーである。
ABCは有料。

7弦である。
いろんな方のブログを読ませていただくと、フリーで7弦は貴重であるらしい
7弦まででるのはABCで1つのみ。(なんか人狼ゲームみたいになってきた)

音色選択はキースイッチがメイン。ベロシティ100までは若干内部フィルターで音が変わるだけでほかに機能はない。101から110に同じサンプルでアタックが強くなり、111から127にPHがある。
レイヤー的には2~3レイヤーという感じ。
ABCはレイヤーが多い(と思う)。かつ出せる音色の種類も多い。
この点ではKMGは劣っている。でも僕が使うぶんには気にしないヽ(´∀`)ノ

チョーキングとビブラート
これは、どちらもひとつのサンプルで機械的に変えます。
ABCはそれぞれのサンプルがあると思われます。これもKMGが劣っています。考え方を変えると操作が楽。

音質
そんなによくないですヽ(´-`)ノ
もともと自分のために制作した音源だったので、歪んでかっこよければよいと思っていたのでそこまで重視していませんでした。
しかし、ABCをきいて(BとCはクリーントーンも)KMGがどれほど音質が悪かったかわかりました。
しかし今回は、それに関する自論なので、よかったら最後までお読みください。

操作が簡単(なはず。)
バグを除いて、音が鳴りっぱなしになるモードはなく、キーリリースか、サスティンペダルOFFで必ず音が止まる。ABCはすべて、どちらにするか選択できたはず。しかし考え方次第では、KMGはサスティンペダルでなりっぱなしになるので、操作できるともいえます。KMGはソロモード時にリアルタイム入力でリアリティを出せるような作り方をしています。

そして、知名度!
なぜかKMGは海外によく知られている!
ヨーロッパあたりからよくメールがきます。


さて、ここからは、KMGをすすめる自論です。KMGが嫌いな方や興味ない方はここで終了で、、、、はありません!
使ってない人こそあえて一度読んでもらいたいと思っています。


ちょっと毒舌も混じるかもしれません。すみません。
よそ様の音源をけなしはしません。
そうでなく、KMGの良いところに目を向けていただきたく思いました。

そもそもギター音源で生ギターを表現することじたい、難しく、生演奏にはほど遠く勝てないのです。ですから、ギター音源が最終工程にて必要な方は、ギターの弾けない方がほとんどです。私もそうです。だから1個ずつ弾いて録音して音源にしたのです。それがKMG7です。

で、演奏のうまい人がギターを弾くと、音の粒がそろいます。下手な人はバラバラです。
一般的に良いギター音源と呼ばれるものは、うまいプレイヤーが演奏して録音しています。これは当たり前ですね。KMGは逆ですが。

ではなぜKMG7をあえてお勧めしたいかというと、僕が感じるに、、、

フリーだから(´д`)

じゃないんです!それも使う側のメリットのひとつですが、僕にメリットなんてないんです(笑)だけどお勧めしたいには理由があるんです。

「DTMのエレキギター音源の最終的な評価は、打ち込む人の腕にある」

と思うからです。

KMGのチョーキングはなぜサンプリングでなくベンドで操作するのか、これは、(録音できなかったというのも大いにありますが)サンプリングだとチョーキングがリアルにはなりますが、スピードが調節できないんです。できても速さが変わるだけでニュアンスを変えられません。
よく打ち込みギターでうまい人の曲を聴きますがソロのときに残念さを感じることが多いです。
「ああ、ベンドが機械的な打ち込みだ・・・」ってのがよくあります。
え?KMGはベンドだからよくない?
そうじゃなくて、打ち込む人の腕です。ベンドをリアルタイムで操作すればよりリアルに近づきます。ただしそれでも、ギターリストからすると、ギターのチョーキングではないといわれます(シンセソロだといわれます)。でも機械的よりはましでしょう。
あとは、スピードコントロールできないチョーキングサンプルを鳴らすか、自由なチョーキングを自分で操作するか、お好みしだいです。僕は、キーボード操作に慣れていたので、KMG7をベンド操作する音源にしたということです。

次に、KMGの音質が悪いのになぜお勧めするか、これはまず、音質はごめんなさい、そのうち時間あればノイズ除去します(←それだけの問題じゃないやろヽ(`Д´)ノ)。
音質のもうひとつに粒のそろいがあります。KMGはギターの弾けない僕が一生懸命弾いたので粒がバラバラです。

ここで今回のブログの本題です。

うまいプレイヤーが録音すると粒もそろい、音色も何度弾いても同じ音が出せます(現役○A○A○Aギター講師のお言葉です)。そしてそれを生で聴くときれいで、生々しさに感動するわけです。
しかし、僕が思うに、きれいな音を人間のニュアンスで弾いているから生々しいのだと思っています。
きれいな音を、100%ずれないシーケンサーで8分音符を刻むとラウンドロビンがあってもマシンガン効果は避けられません。むしろ、きれいな音で粒がそろっているためにラウンドロビンが効果を発揮していないのだと思います。
人間が表現する微妙なリズムのノリ(ずれ)が粒ぞろいの音をリアルに表現している(というかリアルですから)のだと思います。
この場合下手な演奏もリアルといえるでしょう。

だから、これが自論ですが、音源のサンプルがきれいであればあるほど、その音源を打ち込みでリアルに表現するのが難しくなっているのではと思っています。
リアルな音源は、それだけギターに詳しく熟知した者で、打ち込みの技術を持った者でないと、リアルには扱えないのでは、と思っています。

だからKMG7をお勧めしたのです。
負け惜しみに聞こえたり、偶然の産物に聞こえますが、

つるつるのきれいなレンガを1/100㍉ずれずにきれいに並べた壁より、少し傷ついたレンガを全くずれずに(または少々のずれありで)並べた壁のほうが人間味があるのでは、と思うしだいです。
もちろんつるつるのきれいなレンガを味のあるようにずらしたり工夫して並べられる人は、そちらのほうが表現力があります。同時に難易度も上がりますよと。

KMGはギターが下手な作者が弾いたために、傷ついたレンガのようなサンプルだらけです。
しかし、それらは、ロボットに寸分違いなくきれいに並べさせるだけで新人職人さんが並べたかのような壁になります。下手さ加減が生んだ偶然の産物がKMG7です。

ギターの仕組みや演奏を熟知していて、打ち込みに自信のある方は、値段が高くて操作性が難しくても、いろんなことができるギター音源を買うのがよいでしょう。
ギターを詳しく知らず、ほとんど弾けない人は、高性能ギター音源を買っても、その音源の真の能力を発揮することはとても困難です。お金に余裕があって、じっくり使い方を覚えるなら問題ないですが、お金もきつい、操作を覚えるのもだるいという方は、KMG7といわずとも、まずは、フリーの音源で楽しむのもありじゃないでしょうか?

ひとつ気づきませんか?
高価なギター音源はいい音が出るのに、ギターを熟知したものしか効果が期待できない。
ギターリストはギター音源要らない。
ギター音源制作者としてはとても切ないことなんですよ。

KMG7はこれまで何度も言ってきましたが、2.9.0の現在のバージョンではフリーです。
現在のものはこれからも、権利が自分の手元にある間はフリーでいきたいと思っていますが(ちなみにこれは日本語を理解できる方のみであり、海外にはドルで売るかもしれません)、

私はギター音源を自作するぐらい貧乏なので、

最近はちょっとくらい商売させてもらってもいいかななんて考えています。_o/|_ ユルシテ
かといって、いまさらKMG7 2.9.0を有料にはできませんし、国内ではそうする気はないので、この前すこしツイートしましたが、KMG7 IIとか、アドバンスドとかスペシャルとか、そんな感じで、より良いものに引き継ぐことができたときは、それを有料(安めに)で販売させていただこうかなんていう計画はなくもないです。しかし、ほかの音源も制作しているので、まだまだ先の話になりそうです。

それまでは、KMG7をお使いの皆様、どうか傷ついたレンガを味のあるように並べてやってください
よろしくお願いします。
そして今更ですが、KMG7をメインで使用して作られた楽曲が公開されたときは、ぜひお知らせください。じっくり聴かせていただきます。

2016/7/13
Studio Major7th
KMG7制作者:Yutaka Morikawa
http://major7th.jp/kontakt/kmg7/

2016年6月21日火曜日

KONTAKT KSPメモ play_note, note_off

今回は、かなりマニアックな内容です。
ちなみに気になったことなどあれば、ツイッターのほうにでも連絡ください。

レガートを制作する上で、KONTAKT内でグループ単位のサンプルのディレイが必要になった。
しかし、グループ単位で音を遅らせる方法がこれといって無い。

そこで、waitとplay_noteの検証をした。
そして現在押されているキーの数を数えるための$Stackを用意した。
KMG7を制作中、これにかなり悩まされたので、改めて検証。

on note
    inc($Stack)
    wait(1000000)
    $Eve_ID := play_note(60,127,0,-1)
end on

キー50をonにしたとする。
この場合
50キーオンから1秒たつ前にキーを放すと
60の音は鳴らない。
・50キーを放したとき60のon releaseはコールバックされない。(50のon releaseだけ働くっぽい)
50キーオンから1秒経過させると
60の音が鳴る。
・50キーを放したとき60のon releaseはコールバックされる。(2つ分on releaseが働くっぽい)

###########################

on note
    inc($Stack)
    wait(1000000)
    $Eve_ID := play_note(60,127,0,0)
end on

キー50をonにしたとする。
この場合
50キーオンから1秒たつ前にキーを放しても
60の音は鳴る。(鳴りっぱなし)
・50キーを放したとき60のon releaseはコールバックされない。(50のon releaseだけ働くっぽい)
50キーオンから1秒経過させると
60の音が鳴る。(鳴りっぱなし)
・50キーを放したとき60のon releaseはコールバックされない。(50のon releaseのみ働くっぽい)
・60の音は、サンプルが終わるか、fade_outまたはnote_offを使用しなければ止まらない。

ここで、後者の場合、
on release
    dec($Stack)
    note_off($Eve_ID)
end on
とすると、
50キーオフで、音は50も60も止まる。
on releaseは1つ分だけ働き、note_offによる重複はないっぽい。
ただし、キーオンを和音にすると、$Eve_IDが順次上書きされ、note_offは最後の一つの音しか消えない。

これを回避するには、
play_note時の$Eve_IDを
%Eve_ID[$EVENT_NOTE]
にするなどの必要がある。

release時は
$i := 0
while($i<128)
    if($i=$EVENT_NOTE)
         note_off(%Eve_ID[$i])
    end if

    inc($i)
end while
とすれば、オフにしたキーのみ消えてくれて、全部放すと全部消えてくれる。
しかし、play_noteが開始になってからでないと消えない(1秒経過前にキーオフすると1秒経過後に音が鳴り出し、なり続ける)

###########################

もう一つ注意があるようです。
on controller
    message($Stack)
end on
をセットし、
音が鳴っている間、CC1を動かしまわって、$Stackの動きを観察した。

on note
    inc($Stack)
    wait(1000000)
    %Eve_ID[$EVENT_NOTE] := play_note(60,127,0,-1)
end on

on noteの中でplay_noteは、循環しないらしい。
というのは、50キーを押しっぱなしにしたとき、$stackが1以上増えないからである。

on note
    inc($Stack)
    wait(1000000)
    %Eve_ID[$EVENT_NOTE] := play_note(60,127,0,0)
end on
の場合も同じであった。

そして先ほどの例のように、
on release
    dec($Stack)
    $i := 0
    while($i<128)
        if($i=$EVENT_NOTE)
            note_off(%Eve_ID[$i])
        end if

        inc($i)
    end while
end on
relaese内でのnote_offも循環しないようである。

注意すべきは、on note内でのnote_offはon releaseがコールバックされるようで、$Stackが減ります。on release内でのplay_noteは$Stackが増えなかったので、そもそもplay_noteはon noteをコールバックしないっぽい?です。

on controller
    message($Stack)
end on

on note
    inc($Stack)
    wait(1000000)
    %Eve_ID[$EVENT_NOTE] := play_note(60,127,0,0)
    wait(1000000)
    $i := 0
    while($i<128)
        if($i=$EVENT_NOTE)
            note_off(%Eve_ID[$i])
        end if

        inc($i)
    end while
end on

↑これで50キーを押しっぱなしにして2秒以上の間CC1を動かしまわってメッセージを見ると1秒後に1になって2秒後に0になるのがわかります。

実験中気になったのは
%Eve_ID[$EVENT_NOTE] := play_note(60,127,0,0)
%Eve_ID[$EVENT_NOTE] := play_note(60,127,0,-1)
on note内だと、前者は無条件にplay_noteが起動し、後者はキーがオンになっている場合にplay_noteが起動しましたが、on release内で使うと、共にキーオフ後でもplay_noteの音がなりっぱなしになるようです

それをふまえて、
つまり、ややこしいのだが、

on note
    inc($Stack)
    wait(1000000)
    %Eve_ID[$EVENT_NOTE] := play_note(60,127,0,-1)
end on

on release
    dec($Stack)

end on

これは、note_offがなくても、1秒以後にキーを放せば、play_noteの音も止まるが
releaseが2個ずつ働くため、3和音を鳴らすと、1秒以後にキーを放すと$Stackは-3になってしまう。(1音だと-1)

on note
    inc($Stack)
    wait(1000000)
    %Eve_ID[$EVENT_NOTE] := play_note(60,127,0,0)
end on

on release
    dec($Stack)
    $i := 0

    while($i<128)

         if($i=$EVENT_NOTE)
            note_off(%Eve_ID[$i])
        end if
    

        inc($i)
    end while

end on


こちらは、note_offをセットしなければ1秒以後に音が消えてくれないが、1秒以後にキーを放せば、play_noteの音はnote_offにより止まる。
そして、on note内のplay_noteやon release内のnote_offは循環しないようなので、3和音を鳴らし、1秒以後にキーを放しても$Stackは正常に0に戻る。
ただし問題は、一度キーをオンにすると、1秒以内にキーをオフにしても、1秒後に60の音が鳴り始めてしまうことである(オンにしたキーが生きていればplay_noteを起動するという方法も取れるかもしれないがややこしくなる)

つまり前者の場合、play_noteの音が鳴り始めたあとにキーオフすると、$stackが-(マイナス)に
後者の場合、$Stackに異常は発生しないが、無条件に音が鳴ってしまうという。

そこで偶然良い結果を見つけたので、記しておきます。

前者を使い、on release内でnote_offをセットします。
すると、3和音キーオフ時にreleaseが重複し$stackが結果的に-3になるかと思いきや、
かなりめちゃくちゃな演奏をしても、$Stackが必ず0に戻りました。

最終的にplay_noteを使ったディレイ効果としてよさそうなのは、少し改造を加えて、

on note
    inc($Stack)
    disallow_group($ALL_GROUPS)
    wait(1000000)

    allow_group(find_group("Legato"))
    %Eve_ID[$EVENT_NOTE] := play_note($EVENT_NOTE,$EVENT_VELOCITY,0,-1)

end on

on release
    dec($Stack)
    $i := 0

    while($i<128)

        if($i=$EVENT_NOTE)
            note_off(%Eve_ID[$i])
        end if   

    inc($i)
    end while

end on

これで、1秒後にグループ"Legato"のキーが鳴り、キーオフで遅れた音も消える、そして$Stackに異常も発生しないプログラムのできあがりです。(保障しませんが)これを応用すると、1つのキーオンで2つ以上の任意の音をつないでレガートを作れるはずです。
$Stackが0のときは通常のグループを鳴らし、$Stack>0のときは、このディレイを使って、2つ以上の音をつなげるLegatoグループを鳴らすというわけです。


KSPの説明書を読むと、コールバック関係のことはしっかり書いてあるようなのですが、英語なので正確につかめないというのが、全ての元凶でした。

しかし、説明書にディレイの作り方を書いてあるわけではないので、良しとしませんか・・・。

実は現在制作中の音源には別の方法をとっています。ひと段落したら今回の方法を試したいと思います。そして不具合があればまた記事を修正なり、更新したいと思います。

以下6月25日追加更新
実際に音源に組み込んでみました。
見事バグが発生しました。
理由はwaitです。
上のスクリプトでは1秒だったので気づかなかったのですが、waitをはさんでグチャグチャやると、$Stackに異常が発生しました。
ここでは振れていませんが、消えるはずのノートが消えなかったりと、いろいろ不具合が出ました。
結局何がおきているかというと、おそらくですが、
1.ノートオン
2.wait
3.play_note(同時にID取得)
4.wait
5.play_note(同時にID取得)
となるところが、速い演奏やあるタイミングで、
1.ノートオン
2.wait
3.play_note(同時にID取得)
4.wait前にplay_note(同時にID取得)
5.wait
6.play_note(同時にID取得)
このへんの関係で、note_offで消えないIDが残ってしまい、on releaseで消すことになり、$Stackが余分に減ってしまうのだと思います。

前回の検証で、play_noteはon releaseで消す(止める)と、play_noteを呼び出したノートを止めるreleaseとplay_noteを止めるreleaseの2つが働いてしまうようで、$Stackが1個余分に減ってしまうらしいことがわかりました。
正しく、on release内のnote_offでplay_noteを止めると、on releaseは一つしか働いてないようで$Stackも1個しか減りませんでした。

つまり、waitの前後の関係でplay_noteで取得したIDが%Eve_IDに無い状態になり、on release時に
note_offで止めれてないこととなり、on release自体で止めることとなり、$Stackが減ってしまった、と勝手に解釈しました。

結果的に、$Stackに異常が出ると先に進めないので、
「後者の場合、$Stackに異常は発生しないが、無条件に音が鳴ってしまうという。」
という方を採用しました。

もう一度おさらいです。

on note
    inc($Stack)
    wait(1000000)
    %Eve_ID[$EVENT_NOTE] := play_note(60,127,0,0)
end on

on release
    dec($Stack)
    $i := 0

    while($i<128)

         if($i=$EVENT_NOTE)
            note_off(%Eve_ID[$i])
        end if
    

        inc($i)
    end while

end on


こちらは、note_offをセットしなければ1秒以後に音が消えてくれないが、1秒以後にキーを放せば、play_noteの音はnote_offにより止まる。
そして、on note内のplay_noteやon release内のnote_offは循環しないようなので、3和音を鳴らし、1秒以後にキーを放しても$Stackは正常に0に戻る。
ただし問題は、一度キーをオンにすると、1秒以内にキーをオフにしても、1秒後に60の音が鳴り始めてしまうことである(オンにしたキーが生きていればplay_noteを起動するという方法も取れるかもしれないがややこしくなる)

「たぶん」$Stackに異常はでません。そのかわり、小文字で表示したややこしい方法をとることにしました。といってもめんどくさかっただけでそんなにややこしくはないのですが。

on note
    %Alive_NOTE[$EVENT_NOTE] := 1
    inc($Stack)
    wait(1000000)
    if(%Alive_NOTE[$EVENT_NOTE] = 1)
        %Eve_ID[$EVENT_NOTE] := play_note(60,127,0,0)
    end if
end on

on release
    %Alive_NOTE[$EVENT_NOTE] := 0
    dec($Stack)
    $i := 0

    while($i<128)

         if($i=$EVENT_NOTE)
            note_off(%Eve_ID[$i])
        end if
    

        inc($i)
    end while

end on


ということです。
押したキーが生きてるか死んでるかを判断してやり、生きていればplay_noteするとしてやりました。

これで、やっとwaitがからんでも、$Stackに異常なく正しい動作が可能となりました。(たぶんです)

実際に組み込む際は、waitより前に設定する事項と、あとで設定する事項とがあります。
それをしないと、正しく動作しません。

まだ不具合が出るかもしれませんが、ひとまず安心です。
とにかく、前回の記事(この記事の上のほう)は失敗作です。

条件をつけてplay_noteの最後の引数を0にする方を使うことになりました。

おしまい。

2016年5月21日土曜日

Let's Go to HOLLYWOOD - KONTAKT

KONTAKT用ライブラリ、「Let's Go to HOLLYWOOD」を公開いたしました。
http://major7th.jp/kontakt/lgh/



制作経緯についてですが、ハリウッド系BGMを制作するのに、僕は開発当初それらしき音源を持っていなかったのです。

なら作ってしまえ!というKMG7的な発想のもと、この音源の開発に取り掛かりました。

最終的にお値段を安く設定させていただきましたが、高い音源だから信用があるという概念を振り払うよう、安くても使える音源を志しました




さて、オケに混ぜてどれほど使えるかはまだまだ未知数ですが、実際にPVで使ってみる限り、EQをいじったり、リバーブを他のものと差し替えたりして、それなりのサウンドが出せることがわかりました。

現在はまだバージョン1.0.0で23種類の音色しかありませんが、スクリプト上60種類まで増やせるようになっております。

今後バージョンアップにてよい音が見つかり次第、音色を増やしていこうと考えております
そのときお値段も若干上げさせていただきますのでよろしくお願い致します。

おっと、経緯の説明でしたね。
つまり、そういう音源を持っていなかったわけで、持ってないというのは、お金がなかったんです。その後NI社KOMPLETE10を導入し、アクションストライクスを手に入れたので、しばらく必要なかったのですが、KMG7を2.9.0にバージョンアップしたのをきっかけに、音源制作に気合が入り、続きを制作したわけです。

当初お金がなく、この音源を作り始めたという気持ちを大切にし、この音源を作るにあたり、大金をかけることは好ましくないと考え、とにかく身の回りのものでHOLLYWOODを体験しようというのが、コンセプトとなりました。決してケチ心でお金を使わなかったわけではないです。

使った物をおおまかに解説いたしますと、



洗濯機

ドア

引き戸

空き缶(500円玉2枚付き←スナッピー代わり)

鍋(おたま)

コップ(中身は薄めためんつゆ)

箱(ドラムスティック)

スプレー

カーテンレール

電動ドリル





といったところでしょうか。

決して既存の楽器を使わないというのもコンセプトの一つであります。

お勧めは、「ボンネット」「おかん's Room」「洗濯機」「スプレー」あたりでしょうか。
特にボンネットはいい音でます。玄関ドア(タイミングを少し加工してますが)はボンネットの少し軽い版みたいなサウンドです。車のドアは、低域を増やしたいときにアクセントにもちいるとよいでしょう。
そしてスプレーは、ループしてありますので、鳴らし続けることもできますし、短く切ってアクセントをつけると、ハイハット的な使い方ができます
偽スネアは、500円玉をスナッピー代わりにし、ひそかに11レイヤーも使っております。ベロシティ1から127までクロスフェードしながら自然な音の移り変わりを体験できます。

全てのサウンドはレイヤーと別に4種類用意されていて、CまたはG(赤鍵盤)でランダムでサンプルが選ばれます。連打しても同じサンプルの連打にはなりません。(2連打くらいはありえますが)
CまたはGの半音4個上分(青鍵盤部分)に、そのサンプルを割り当てておりますので、ランダムで好ましくない音が出るときに、好きなサンプルを選ぶこともできます。

今後、身の回りでハリウッドサウンドに使えそうな「物」探しをしばらく続けていこうと考えております。

今後とも、Let's Go to HOLLYWOODをよろしくお願い致します。

作者:Yutaka Morikawa

2014年11月15日土曜日

Roland A-90 分解修理




愛用のローランドA-90の鍵盤の中が折れました。

購入から15年で3回目です。(記憶があいまいで、2回かもしれません)

中が折れる?どういうことかというと、、、
 
こういうことです。
A-90は、ピアノ鍵盤であり、バネで戻るタイプとは違います。
最近の構造は知りませんが、15年ほど前のA-90では、上の写真のような鉛付きパーツが入ってます。
 
上が折れたもの、下が正常なものです。
この物体にちょうどかぶさるように鍵盤が配置されており、穴の開いている辺りがちょうど、鍵盤のタッチする辺りになります。
鍵盤を押すと、このパーツの一番左の部分が押されて、その右の少し丸い部分を軸にシーソーのように鉛を持ち上げます。これでピアノのタッチを再現しているようです。
 
そして持ち上がった鉛(の入ったこのプラスチックのパーツ)は、穴のようなものが4つ見えますが、その一番左の上の部分、ここにフェルトのついたストッパーが当たり、鍵盤が止まるようになっています
つまり、すばやく鍵盤をタッチすると、そこにかなりの衝撃が加わるのです。それで写真の上のように、そこで折れてしまい、中の鉛があらわになるのです。
 
冒頭で触れましたが、15年使ってきて、折れたのはこれで3回目になります。(たぶん)
 
1回目は自分でパーツを取り寄せ、取り付けなおしました。1つ500円か900円かそんなもんだったと思います。
 
2回目は、法律ができたのか、電気機器のパーツの取り寄せが、事故防止のため出来なくなりました。よって、その他、不具合も出てきていたので、ローランドへ送り、全体のメンテナンスと、この鉛パーツの交換をしてもらいました。
このとき、よく折れるということを伝えると、このパーツはよく折れると、そのままの答えが返ってきて、このパーツの88鍵盤分全て無料で交換してくれるとのことでした。(けっこうな値段になるはずなので、本当に全て交換されたかは不明)
そして、ローランドの修理担当者の方と、直接電話で話しながら、不具合をほぼ全て直してもらいました。(お金はかかりましたが、すでに保障がすぎており、パーツが無いのに、さびていた金属の部分の塗装までして下さいました。)
 
そして3回目が今回です。
KMG7の説明動画を作っているときに、パキッという音がして嫌な予感がしました。
折れました。
鍵盤が戻らなくなりました。鉛の部分から先が折れて、落ちてしまい、おもりの力が無いので、鍵盤が戻らないのです。
 
仕方ない、また送るのか・・・。と途方にくれましたが、他にも怪しい音がする鍵盤があったので、とりあえず本体を開けることに。
以前も開けていたので、開け方はそう困ることはありませんでした。
 
写真の上が鍵盤手前の部分です。
手前の金属部分のネジと、ゴムパッドのネジ以外、裏のネジは全てはずします。
1本を除いて、全て同じネジです。
 
開けるとこんな感じです。
 
左右の木の部分を、手前から上に持ち上げるように、すると、カパッとはずれます。
気をつけるべきは、配線がいくつかあることですが、特に、左端に、アフタータッチのセンサー用のコードがあります。これは、少し短めで、引っ張りすぎると、配線に引っ張られ、パーツが壊れてしまうので、気をつけましょう。
ちなみに、この画像はすでに直した後の状態ですので、鍵盤は正常です。
 
 
折れたのは中域より下のAでしたが、折れるということは、よく使うということなので、タイヤのローテーションと同じく、あまり使ってなさそうな、高域のFと交換して、直すことにしました。
 

 
さて、ここで悩んだのが、折れたプラスチックを、どうやって元に戻すか。
ただくっつけても、また強い衝撃が加わるわけで、普通に考えたら、接着剤やシリコンでは、すぐまた折れてしまう。
 
ネットで強力な接着剤を探して、ある接着剤に行き着きました。そして幸い、折れた面だけをくっつけるのではなく、鉛部分をプラスチックに差し込みながらくっつけるという作業でしたので、接着面が多く、しっかりくっついたようです。
例えるなら、折れた割り箸をくっつけるのではなく、ペンのキャップをペンに差し込んで抜けないようにくっつける感じです。
 
 
使用したのはこの接着剤です。なんか車で引っ張り合うCMとかあるらしいですよ。
ホームセンターで500円台です。
で、まず、アルコール等で、きれいに洗浄し、ヘラを使いつつ、写真のように接着しました。
接着するあらゆる面と、さらにコーティングするように、表面も少し塗っておきました。
この接着剤は、乾燥すると、カチコチではなく、すこしゴムのようになりますので、弾力性という意味で、今回の接着用途に都合がよいと感じました。
 

鍵盤の中、すっごいほこってます。
どうせ接着剤が乾燥するまで24時間はかかるので、この際、白鍵盤だけ、おもりパーツを全てチェックしながら、掃除もしていこう、ってことになりました。

 
ほこりすんごいです。
 
 
鍵盤横も全て拭き取っていきましょう。
 
 
ナイスつるつる。
 
 
キチャナイですね。


これも綿棒でふき取ります。毛などはピンセットで。


 1個ずつ取り外して、掃除して、パーツの劣化を確認。


↑少しひびが入っているやつ。
パテ埋めのように接着剤で補強します。


↑完全にアウトのやつ。
上が折れてないのでまだ生きてるだけで、下が折れてしまっていて、そのうちパキッといくやつです。いったら、また、内部から接着して頑丈に固めるとして、今回は、補強だけです。(というか、それしかできない)


↑下がまだ折れていないだけで、かなり劣化の進んだやつ。
こんなのがごろごろ出てきました。


少しずつ作業を進めていき、接着剤を使ったキーは間違って押さないように、とりあえず、鍵盤をはずしたままにしておく。


2日くらいかかって、全部(白鍵のみ)チェックと掃除、補強終わりました。
鍵盤が下がっているキーは、接着剤でパーツに補強をしたキーです。
こうやって見ると、どこがよく使われているかわかりますね。
さーっとみると、意外と、Gが補強いらずでしたCはほとんど補強が必要だったようです。
折れたのは、画面中央部の、この写真で補強してないAです。これは高域のFと交換したからです。
ということで、Aもほとんど補強したことになりますね。


数時間乾くのを待って、全て鍵盤を戻していきます。


ネジを戻して、


とりあえず元に戻りました。
操作も正常です。

問題は、補強したキーが、どれくらい耐えられるかです。
折れたやつが、普通に使えるようであれば、今後、あの接着剤があれば、とりあえずは問題なさそうです。

ピッチベンドとモジュレーションを同時に触れるジョイスティック搭載で、アフタータッチがついているマスターキーボード(オールインワンシンセでない)は、知る限り、これしかないんです。
最近のキーボードはアフタータッチがついてないのが多いんです。
だから、このキーボードが完全に故障してしまうと、とても困っちゃうわけです。

いつまでも長生きして下さい、A-90君。

2014年11月9日日曜日

芸術に順位はない

最近思うところあって作曲してないのですが、そんな中で思うことは、やっぱり音楽ってなんなんだろうってことです。

スポーツは、競技としてみんな競いあって喜びや感動を得ているわけですが、芸術って僕は競いあうものじゃないと思うんです。
でも、世の中は売れた作品が素晴らしいものとされ、成績を残したものがよい作品とされているのです。しかも、それらは、スポーツと違い、周囲のものが成績をコントロールしてしまうんです。

100m走は、走って速かったほうが明らかに勝ちなのです。
音楽の場合なら、良し悪しは聴衆が決めてしまうのです。

だから、芸術は競いあうものじゃないと思うんです。

スポーツは、本人の努力の結果が、成績として残りますが、音楽は本人の努力も必要ですが、聴く者の要素もありますので、本人の努力だけでは成績において、どうにもならない部分が強い気がします。

ビジネスは別として、芸術で競いあいはしたくないものです。
芸術に順位をつけるときは、第三者が順位をつけるので、競いあった当事者には、芸術としてはなんの意味もないと思います。あるとすれば、それがビジネスに結びつく場合であると思います。

当事者が、私の作品のほうが素晴らしい、と言い合ってなにか意味はありますか?

どっちが素晴らしかった?と第三者に判断してもらって、芸術になにか価値がありますか?

2014年10月15日水曜日

Hollywood Orchestra DEMO SOUND

EastWestのHollywoodシリーズ音源が4つ出揃い、Hollywood Orchestraというパッケージが発売されました。
私は、4つをバラで買いましたが、内容的にはほぼ同じです。

今回、Hollywood Orchestraのみを使用してDEMO曲を作りました。

ではお聞き下さいませ。
http://youtu.be/JbCz8ONwfEc


2014年10月11日土曜日

Hollywood Orchestral Percussion DEMO SOUND

Hollywood Orchestral Percussion とうとう出ましたね。
とりあえず公式にDEMO SOUNDがまだなく(2014/10/10)、早く音を聞きたいという人の為に、DEMO SOUND動画を作りました。

冒頭の曲らしきものは、全てHollywood Orchestral Percussionで作られています(リバーブのみCubase を使用)。

全ての音色を紹介はできませんでしたが、代表的な音色をマイク別にいくつか紹介しております。

個人的な簡単な感想として、マイクにより音色が違い、値段の差も大きくないので、Diamondを買うことをお勧めします。
私は、Hollywood StringsではマイクをほとんどMAIN固定で使っておりますが、今回Percussionでは、音作りとしてマイクを選んだり、MIXしたりして使う機会が多いです。万が一、GoldのマイクがCLOSE固定だったりなんかすると、とんでもないことになりそうです。(たぶんMIDかMAIN固定だと思われますが・・・。)


ではご覧ください。

できればアドレスをクリックしてYouTube本家で、大きな画面と解像度で見ることをお勧めします。
http://youtu.be/T2aIqNMdmIY


2014年9月27日土曜日

Hollywood Stringsをキースイッチで操作する3

Hollywood Stringsとは、

これです。はい。

前回の続きです。
http://studio-major7th.blogspot.jp/2014/09/hollywood-strings_27.html
前回までに、エクスプレッションマップの設定まで進みました。
今回はそれを使用してみます。

まずはピアノロールを開いて、がんばってこの画面にしてみましょう。

特に画面中段域、

↑こいつが必要なのです。
前回作成したマップのアーティキュレーションがずらりと並んでいます。

ここからは、好きな方法でやっていけばいいのですが、私の方法を紹介いたします。

例えば、Spiccatoを8分音符で刻みたい場合、


まず、↑上のように普通に打ち込みます。

そしてSpiccatoにしたいノートを選択します。

つぎは、画面上部へ移動し、 

アーティキュレーションを選択します。
そこから、Spiccatoを選択し・・・(えっ!?

下の図のようにアーティキュレーションが指定され、 

めでたく、Pizzicatoが鳴るという、お粗末なことに

いえ、ミスしたのは、アーティキュレーションの選択という人為的なことであります
つまり、アーティキュレーションで選択すると、エクスプレッションマップで設定したアーティキュレーションに結びついているチャンネルが演奏されるということです

簡単に言うと、アーティキュレーションでチャンネルを指定しているだけです
それをエクスプレッションマップで設定しただけなのです。

エクスプレッションマップでは、指定した間同じアーティキュレーションで、という設定もあるようですが、私のやり方は、音符一つずつに設定するやり方です。この辺は好みでしょう。

一つ注意があります。
キースイッチが含まれるチャンネルでキースイッチを操作する場合は、気をつけましょう。
この場合、Trillなどです。
TrillはC0とC#0にHTとWTが分けられています。
エクスプレッションマップでのキースイッチというのは、擬似的なもので、実際にはチャンネルを操作しているだけです。ですので、パッチに割り当てられている本物のキースイッチを操作する場合には、キースイッチそのものに、エクスプレッションマップのアーティキュレーションを割り当てる必要があります。
つまり、パッチのキースイッチを変更するためには、いつもどおりの打ち込みを行い、キースイッチそのものにも、アーティキュレーションをセットするということです。

Trillでキースイッチ操作をするのであれば、
1.キースイッチを打ち込みます(C0またはC#0)
2.実際に鳴らすノートを打ち込みます
1と2で打ち込まれたノートを全て選択して、アーティキュレーションをTrillにセットします。
こういう順序が必要です。
本物のキースイッチ操作も、そのチャンネル内で操作してやるということです。

私が作成したエクスプレッションマップは、チャンネル操作をしているだけと、考えましょう。

エクスプレッションマップは、その他いろいろな使い方ができるようですが、私自身未開拓なので、それはまた今度ということで。

この擬似キースイッチ(アーティキュレーション)を使うことで、8トラック必要なViolin1が1トラックで済むということなのです。

後から考えてみれば、チャンネル操作だけなのでわざわざ、キーにわりあてるひつようなかったような気もしますが、なぜこうなったのかも自分でも忘れました。

では今回はこの辺で。

Hollywood Stringsをキースイッチで操作する2

Hollywood Stringsとは、

これです。はい。

前回の続きです。
http://studio-major7th.blogspot.jp/2014/09/hollywood-strings.html
画像で確認していきましょう。

まず、音源側でこのようなものを作ります。

上の画像では何がおきたのかわかりにくいですね。
左上の窓をよく見てください。
8つのパッチが開かれていることがわかります
このパッチは、私がよく使うパッチを並べているので、実際には自分に会ったものを選ぶとよいです。


↑これが、その左上の窓の部分ですね。
上から
Sustain
Marcato
Marcato Short
Spicato
Tremolo
Trill
Pizzicato
Legato
です。
横の括弧の数字はチャンネルです。
7と8が逆になっているのは、気にしなくていいです。

Cubaseでは1トラックに1つの音源エンジン(とでも言いますか)を立ち上げますので(そうでなくてもよいが、ここではそうします)、このような音源を作ることで、1トラックの中でチャンネルを変えるだけでさまざまなパッチを操作することができるようになるわけです。

ではこれを操作する方法を、今度はCubaseに組み込みましょう。

CubaseにViolin1というトラックを作成し、選択し、プロジェクトの左のインスペクターをご覧ください。
インスペクターまでたどり着けない方は、各自検索でお探しくださいませ。


↑これがインスペクターと呼ばれる部分ですね。
これはエクスプレッションマップという項目をクリックした状態です。
現在「マップなし」になっています。ここで左クリックして、「エクスプレッションマップ設定...」を選択してください。
すると、次の画面になります。


この画像では左に楽器名が並んでいますが、初期の状態では何も並んでいません
結論から言いまして、次の画像の状態に仕上げましょう。

上の画像の意味は、

Violin1というマップを使うと
C0キーで
Longというアーティキュレーションを選択し
チャンネル1で演奏する

という設定なのです。
設定ができなかった人のために、設定ファイルを用意しました。
この画面の読み込みから、次のファイルを読み込めば、上の状態になると思われます。

https://drive.google.com/open?id=0B22TYH7vvHNKa2xacUtHYlVOakU

※注意:人に配布したことがないので、正しく動作するかよくわかりません。このファイルでいかなる状況が発生しても責任負いません。

上の状態になるといっても、Violin1というマップのみです。別のマップも必要であるなら、コピーするなりして、作成する必要があります。

とりあえずこの状況になれば、先ほどの、「マップなし」というところに「Violin1」が新しく追加されていると思われますので、それを選択してください。

すると、こうなります。


ここまでできあがれば、あとはこのトラックに、このページで最初に紹介した、インストゥルメントを割り当ててやれば、ひとまずキースイッチで音色が変わります。

では、ピアノロールでこのキースイッチを入力すれば音色が切り替わるのかといえば、ちょいと違います。
実際の操作は、「アーティキュレーション」で、行います。
それを次のページで見ていきましょう。

つづく
http://studio-major7th.blogspot.jp/2014/09/hollywood-strings_46.html

Hollywood Stringsをキースイッチで操作する1

Hollywood Stringsとは、

これです。はい。

なかなかのお値段ですが、している限りのオーケストラStrings音源ではこれが一番では無いでしょうか。

ただし、HDDでは読み込みに時間がかかるため、SSDでの使用をお勧めといったところです。

私はオーケストラを制作するときのテンプレートとして、同じHollywoodシリーズのBrassとOrchestral WoodWindsの3種+コンタクト音源いくつかの、おおよそですが、100パッチ以上を立ち上げます。そのほとんどが先ほどのHollywoodシリーズです。
そしてそれの読み込み時間ですが、Cubase7の環境では、全てのパッチの読み込み完了までSSDの場合で約3分かかります。これがHDDだと20分くらいかかるという話も聞いたことあります
ちなみにプロジェクトのセーブは40秒ほどかかります。オートセーブが働いているので、15分おきくらいにフリーズしたみたいになって、けっこうイライラします。私はこれを、よそ様のサイトでも使われていた言葉を拝借して、「謎のオートセーブ」と読んでいます。

さて、Stringsだけで約35パッチくらい使います。
つまり、Violin1、Violin2、Viola、Cello、DoubleBass、この5種×7パッチずつくらいです。
これを35トラックにわたって、ずらっと並べると、ボリュームの一括調整や、リバーブのまとめ掛けのためにグループチャンネルを組む必要があったり、それが必要だったり気にしない人はいいですが、けっこうめんどくさかったりします。

そこで、その7チャンネルを1チャンネルで操作できないか
そう、KONTAKTのStringsのように、低音部のキースイッチでSustainやSpiccatoなどを変更できないか。

それを可能にするのが、CubaseのVST Expressionです(かねぇ)。
たしかCubase6くらいから対応だった気がします。

簡単に説明しますと、音源側の先ほどの7つのパッチににそれぞれMIDIチャンネルを割り当てておき(この場合1~7)、Cubaseで指定したキーをONにするとチャンネルが変わるといった感じですが、もう一つ仕組みが重なり、実際にはキーでチャンネルを変えるのではなく、ピアノロール画面の一部を使って、画面上で操作します。
いろいろ設定の仕方があるようですが、私の設定は、ノート1音ごとすべてにチャンネルが割り当てられるように設定してあります。つまり、まず、8分音符で8個Cを入力して、それらを全て選択して、Spiccatoになるように指定してやると、それらの音はSpiccatoになるわけです。
これは、1つのトラックの中で、Spiccatoのチャンネルを選んで鳴らすという仕組みです。
VST Expressionを使用しなくても、チャンネル操作だけならば普通に可能だった気もしますが、VST Expressionを使用することで、視覚的に、どのアーティキュレーション(この場合チャンネル)を使用しているかわかりやすくなるわけです。

言葉だけで説明してもわかりにくいので、次のページで画像を見ていきましょう。

つづく
http://studio-major7th.blogspot.jp/2014/09/hollywood-strings_27.html

人気の投稿