2012年7月5日木曜日

エフェクトプラグイン回路図の基本形 - SynthMaker

プラグイン作成の手引き
△(ご参考)SM2 ○FL10
FL STUDIO版の SynthMakerプラグインを使って、簡単なエフェクトプラグインを作ってみます。

o SynthMaker製品版で試したい時は、入出力部品を External グループの部品(例えば「Direct Sound In」など)に入れ替えます。


**** 最初に覚える5つの部品
o 入出力
Audio Input = 音声を入力する (FL STUDIO版専用)
Audio Output = 音声を出力する (FL STUDIO版専用)

o チャンネルの並列化
Pack = 複数チャンネル(ステレオ)を1つの並列処理チャンネルにまとめる
Unpack = 1つの並列処理チャンネルを複数のチャンネルに分解する

o 操作つまみ
Amp = ボリューム(音量)を操作する


**** 接続手順
o 上の部品を、次の順序で並べます。
    + 「Audio Input」-「Pack」-「Amp」-「Unpack」-「Audio Output」

o そして、線を繋ぎます。
    + 「Audio Input」-「Pack」間は2本
    + 「Unpack」-「Audio Output」間も2本
    + 部品「Pack」を使うと、左右の音声入力の両方を、1つのつまみで操作する事が出来ます。
    + 線の繋ぎ方は、
        + 「部品間を線で接続する
        + 「部品間を接続している線を切る

o これで、音量をコントロールするプラグインが出来ました。
    + 後は、必要に応じて、適当に見栄えを整えます。


**** メモ
o これがエフェクト作成の基本形です。
o 「Pack」「Unpack」は、ステレオ音の左右両方に対して、同じ効果を与えたい時に便利です。
o 他にも色々出来ますので、使いながら覚えます。
    + 複数の部品を並べて繋げる
    + 1つの端子から線を複数引く
    + 入力元の部品の入力端子に出力する「フィードバック」
o なお、エフェクトパラメーターのオートメーション対応を実現したい時は、更に部品を並べます。
    + (オートメーションに関する説明は、後日追加予定です。)


**** 確認したバージョン
o FL STUDIO 10 Producer Edition   Version 10.0.9 (Signature Bundle)   32ビット版


==
関連ページ:
    ▼プラグイン作成の手引き
    ▼SynthMaker
    ▼制作メモ
    > 解説動画。エフェクトプラグインの作り方(FL STUDIO版)
    作成したエフェクトプラグインを簡単にオートメーション対応させる方法(FL STUDIO版専用)
(2012年7月6日変更。Direct Sound Inの所属グループ追加。オートメーション対応。タイトル変更)

Bus Extract = 1つの大きな通信線から、元の複数の通信線に戻す - SynthMaker

SynthMaker。Elementグループの部品
○SM2 ○FL10
部品「Bus Create」で作成した大きな通信線を、複数の元の通信線に展開します。


**** 使用方法
** 場所
o Element グループの Bus Extract

** 端子
o 左の1番 = 追加する出力端子の名前です。カンマ区切りで、複数の入力端子名を入力する事が出来ます。
o 左の2番 = 大きな通信線の入力端子です。
o 右の1番以降 = 音声の出力端子です。左の1番で与えた名前に応じて、出力端子が自動作成されます。

** 主なプロパティ
o (ありません)


**** 使用例
o 4つの音声ストリームを入力する方法
--------
左の1番 <- "Mikusan1,Rinchan2,Lenkun3,Lukasama4" (文字列。カンマ区切り)
左の2番 <- 大きな通信線
右の1番 -> 音声ストリーム
右の2番 -> 音声ストリーム
右の3番 -> 音声ストリーム
右の4番 -> 音声ストリーム
--------



**** 機能
o 部品「Bus Create」で作成した大きな通信線を、元の複数の通信線に戻します。
o 左側の端子1番で入力した名前列(カンマ区切り)に応じて、音声の出力端子が生まれます。

** 操作の要点
p 左の1番端子に指定する文字列は、大きな通信線を作った時に指定した文字列に合わせます。


**** 確認したバージョン
o SynthMaker 2.0.5 Professonal Edition
o FL STUDIO 10 Producer Edition   Version 10.0.9 (Signature Bundle)   32ビット版


==
関連ページ:
    ▼主な部品
    ▼SynthMaker
    ▼制作メモ
(2012年7月14日追加。使用例)

Bus Create = 複数の通信線を1つの大きな通信線に纏める - SynthMaker

SynthMaker。Elementグループの部品
○SM2 ○FL10
複数の通信線を、1つの大きな通信線に纏めます。

o 部品「Pack」とは異なり、纏めた通信線に対して音量操作などを行う事は出来ません。


**** 使用方法
** 場所
o Element グループの Bus Create

** 端子
o 左の1番 = 追加する端子の名前です。カンマ区切りで、複数の入力端子名を入力する事が出来ます。
o 左の2番以降 = 音声の入力端子です。左の1番で与えた名前に応じて、入力端子が自動作成されます。
o 右の1番 = 大きな通信線です。

** 主なプロパティ
o (ありません)


**** 使用例
o 4つの音声ストリームを入力する方法
--------
左の1番 <- "Mikusan1,Rinchan2,Lenkun3,Lukasama4" (文字列。カンマ区切り)
左の2番 <- 音声ストリーム
左の3番 <- 音声ストリーム
左の4番 <- 音声ストリーム
左の5番 <- 音声ストリーム
右の1番 -> 大きな通信線
--------



**** 機能
o 複数の通信線を、1つの大きな通信線に纏めます。
o 左側の端子1番で入力した名前列(カンマ区切り)に応じて、音声の入力端子が生まれます。

** 操作の要点
p 大きな通信線を元に戻す時は、「Bus Extract」を使います。


**** 確認したバージョン
o SynthMaker 2.0.5 Professonal Edition
o FL STUDIO 10 Producer Edition   Version 10.0.9 (Signature Bundle)   32ビット版


==
関連ページ:
    ▼Elementグループ = 部品作成と定数、型変換に関する部品群
    ▼主な部品
    ▼SynthMaker
    ▼制作メモ
    > Bus Extract = 1つの大きな通信線から、元の複数の通信線に戻す
(2012年7月14日追加。使用例)

Float = 実数値を送る。もしくは実数値に変換する - SynthMaker

SynthMaker。Elementグループの部品
○SM2 ○FL10
浮動小数点の実数値を送ります。もしくは浮動小数点の実数値に変換します。


**** 使用方法
** 場所
o Element グループの Float

** 端子
o 左の1番 = 浮動小数点の実数値に変換したい値を入力します。本部品の入力欄に入れた値を使用する時は、使用しません。
o 右の1番 = 浮動小数点の実数値を出力します。

** 主なプロパティ
o (ありません)
o 現在の値を記憶しています。


**** 使用例
o 外から入力
--------
左の1番 <- 39.3 (実数)
右の1番 -> 39.3 (実数)
--------


o 入力欄で入力
--------
左の1番 <- 指定なし
入力欄 <- 39.3 (実数)
右の1番 -> 39.3 (実数)
--------



**** 機能
o 左側の端子を接続していない時は、実数値を送ります。
o 左側の端子を接続している時は、左側の部品から送られてきた値を実数値に変換します。
    + 入力する値が論理型(Boolean 型)の時、True は 1、Talse は 0 に変換します。
    + 入力する値が文字列型(String 型)の時、先頭を数値だと解釈して、変換を試みます。
        + 数値として変換出来ない時は、0 になります。

** 操作の要点
p 入力欄に値を入れると、その値を記憶します。
o 左側の端子は、他の部品から送られてくる値を浮動小数点の実数値に変換したい時に使います。


**** 確認したバージョン
o SynthMaker 2.0.5 Professonal Edition
o FL STUDIO 10 Producer Edition   Version 10.0.9 (Signature Bundle)   32ビット版


==
関連ページ:
    ▼Elementグループ = 部品作成と定数、型変換に関する部品群
    ▼主な部品
    ▼SynthMaker
    ▼制作メモ
    > Boolean = 論理値(True / False)を送る。もしくは論理値に変換する
    Maths グループの Array Builder = 配列を作る
    Module = 中身が空の部品を作る

Int = 整数値を送る。もしくは整数値に変換する - SynthMaker

SynthMaker。Elementグループの部品
○SM2 ○FL10
整数値を送ります。もしくは整数値に変換します。


**** 使用方法
** 場所
o Element グループの Int

** 端子
o 左の1番 = 整数値に変換したい値を入力します。本部品の入力欄に入れた値を使用する時は、使用しません。
o 右の1番 = 整数値を出力します。

** 主なプロパティ
o (ありません)
o 現在の値を記憶しています。


**** 使用例
o 外から入力
--------
左の1番 <- 393 (整数)
右の1番 -> 393 (整数)
--------


o 入力欄で入力
--------
左の1番 <- 指定なし
入力欄 <- 393 (整数)
右の1番 -> 393 (整数)
--------



**** 機能
o 左側の端子を接続していない時は、整数値を送ります。
o 左側の端子を接続している時は、左側の部品から送られてきた値を整数値に変換します。
    + 入力する値が浮動小数点型(Float型)の時、小数点以下は削除します。
    + 入力する値が論理型(Boolean 型)の時、True は 1、Talse は 0 に変換します。
    + 入力する値が文字列型(String 型)の時、先頭を数値だと解釈して、変換を試みます。
        + 数値として変換出来ない時は、0 になります。

** 操作の要点
p 入力欄に値を入れると、その値を記憶します。
o 左側の端子は、他の部品から送られてくる値を整数値に変換したい時に使います。


**** 確認したバージョン
o SynthMaker 2.0.5 Professonal Edition
o FL STUDIO 10 Producer Edition   Version 10.0.9 (Signature Bundle)   32ビット版


==
関連ページ:
    ▼Elementグループ = 部品作成と定数、型変換に関する部品群
    ▼主な部品
    ▼SynthMaker
    ▼制作メモ
    > Float = 実数値を送る。もしくは実数値に変換する
    Boolean = 論理値(True / False)を送る。もしくは論理値に変換する
    Maths グループの Array Builder = 配列を作る
(2012年7月14日変更。場所訂正。使用例追加)

String = 1行分の文字列を送る。もしくは文字列に変換する - SynthMaker

SynthMaker。Elementグループの部品
SynthMaker。Stringグループの部品
○SM2 ○FL10
文字列を送ります。もしくは文字列に変換します。

o 複数行の入力をしたい時には、基本的には部品「Text」を使います。
o 部品「Text」から改行コードが送られた場合、入力された改行コードは、そのままの形で出力します。


**** 使用方法
** 場所
o Element グループの String

** 端子
o 左の1番 = 文字列に変換したい値を入力します。本部品の入力欄に入れた値を使用する時は、使用しません。
o 右の1番 = 文字列を出力します。

** 主なプロパティ
o (ありません)
o 現在の値を記憶しています。


**** 使用例
o 外から入力
--------
左の1番 <- "Miku3" (文字列)
右の1番 -> "Miku3" (文字列)
--------


o 入力欄で入力
--------
左の1番 <- 指定なし
入力欄 <- "Miku3" (文字列)
右の1番 -> "Miku3" (文字列)
--------



**** 機能
o 左側の端子を接続していない時は、入力欄に入っている文字列を送ります。
    + 入力欄は1行です。複数行の手入力を行いたい時は、部品「Text」を使います。
o 左側の端子を接続している時は、左側の部品から送られてきた値を文字列に変換します。
    + 入力する値が論理型(= Boolean 型)の時、True もしくは False という文字列に変換します。
    + 部品「Text」から改行コードが送られた場合、入力された改行コードは、そのままの形で出力します。

** 操作の要点
p 入力欄に値を入れると、その値を記憶します。
o 左側の端子は、他の部品から送られてくる値を文字列に変換したい時に使います。
o 改行を入力する事は出来ませんが、接続する部品によっては「\n」で代用する事が出来ます。。
    + 「\」を入力した時の表示はバックスラッシュ(= 「/」の反対)になります。


**** 確認したバージョン
o SynthMaker 2.0.5 Professonal Edition
o FL STUDIO 10 Producer Edition   Version 10.0.9 (Signature Bundle)   32ビット版


==
関連ページ:
    ▼Elementグループ = 部品作成と定数、型変換に関する部品群
    ▼String グループ = 文字列操作を行う部品群
    ▼主な部品
    ▼SynthMaker
    ▼制作メモ
    > Text = 複数行の文字列を送る。もしくは文字列に変換する
    Int = 整数値を送る。もしくは整数値に変換する
    Float = 実数値を送る。もしくは実数値に変換する
    +
    Boolean = 論理値(True / False)を送る。もしくは論理値に変換する
(2012年7月13日追加。使用例)
(2012年7月8日訂正。バックスラッシュ)
(2012年7月6日追加。改行文字を入れる方法)

Boolean = 論理値(True / False)を送る。もしくは論理値に変換する - SynthMaker

SynthMaker。Elementグループの部品
○SM2 ○FL10
論理値(True / False)を送ります。もしくは論理値に変換します。


**** 使用方法
** 場所
o Element グループの Boolean

** 端子
o 左の1番 = 論理値に変換したい値を入力します。固定値を設定する時は使用しません。
o 右の1番 = 論理値を出力します。

** 主なプロパティ
o (ありません)
o 現在の値を記憶しています。


**** 使用例
o 外から入力
--------
左の1番 <- True (論理値)
右の1番 -> True (論理値)
--------


o 入力欄(のクリック)で入力
--------
左の1番 <- 指定なし
入力欄 <- False (論理値)
右の1番 -> False (論理値)
--------

    + True / False の切り替えは、入力欄のクリックで行います。


**** 機能
o 左側の端子を接続していない時は、論理値(True / False)を送ります。
o 左側の端子を接続している時は、左側の部品から送られてきた値を論理値に変換します。
    + 入力する値が数値型(Int 型/Float型)の時、0 なら False。0以外で True
    + 入力する値が文字列型(String 型)の時、"True" なら True。"True"以外で False

** 操作の要点
p 入力欄に表示されている値をクリックすると、値を切り替える事が出来ます。
o 左側の端子は、他の部品から送られてくる値を論理値(True / False)に変換したい時に使います。


**** メモ
o 変換結果が予期しない値になる時は、入力経路を確認します。
o 例えば、「0.1 を送っている筈なのに False になる」場合は、この部品に値が届く前に、int 型(= 整数型)や String型に変換されています。


**** 確認したバージョン
o SynthMaker 2.0.5 Professonal Edition
o FL STUDIO 10 Producer Edition   Version 10.0.9 (Signature Bundle)   32ビット版


==
関連ページ:
    ▼Elementグループ = 部品作成と定数、型変換に関する部品群
    ▼主な部品
    ▼SynthMaker
    ▼制作メモ
    > Maths グループの Array Builder = 配列を作る
    Module = 中身が空の部品を作る
    Module Input = 部品の入力端子を作る
(2012年7月14日追加。使用例)