コンテンツにスキップ

プラグイン

プラグインのパラメーターは 0〜1 に正規化された float32 で保存されています(プラグイン記録 参照)。reader はここに挙げたパラメーターを換算し、それ以外は --all で生値を出します。compose はプラグインに触れず、バイト単位でそのまま残します。

プラグインの置き場所:

場所 位置 記録
トラック/Bus の挿入スロット1〜6 FLStudioModelBA 種別・列・スロット 0〜5・所属 2 の bmd:<名前>:<ID>
トラック内蔵FX FLStudioModelBA スロット 6 Voice Isolation、7 Dialogue Leveler、8 Dialogue Separator、9 Music Remixer、10 Ducker
クリップ内蔵FX クリップ自身の FieldsBlob クリップと編集 参照

換算式

p は保存されている正規化値です。

プラグイン パラメーター 画面値
De-Esser BMDDeesser::RANGE(周波数) 700 · (9000 / 700)^p Hz、有効数字3桁で表示
BMDDeesser::AMOUNT 100 · p %
BMDDeesser::MODE 0=ナローバンド、0.5=センターベル
Deesser::REACTION 0.5=medium(観測した値のみ)
BMDDeesser::ESS_ONLY フラグ(「S のみ」)
Vocal Channel BMDVocalChannel::COMP_THRES −40 + 40p dB
BMDVocalChannel::COMP_RATIO 1.1 + 5.9p(x:1)
BMDVocalChannel::COMP_GAIN 20p dB
BMDVocalChannel::COMP_REACTION そのまま(0〜1)
HPF_IN/EQ_IN/COMP_IN フラグ(ハイパス・EQ・コンプレッサーの各部)
Limiter BMDLimiter::INPUT_GAIN −18 + 36p dB
BMDLimiter::THRESHOLD(上限) −24 + 24p dBTP
BMDLimiter::RELEASE 対応表:0.8829=190.55 ms(較正した値はこれのみ)
BMDLimiter::SOFT フラグ
Voice Isolation(トラック内蔵スロット6、またはクリップ) BMDVoiceIsolationControl::DRY_MIX 100 · p=量(37 → 0.3701、82 → 0.8201、55 → 0.55)
Dialogue Leveler(クリップ) UI_BAS_PRESET モード=3p:0 ダイナミクスを広く、1 中程度のレベルに最適化、2 低いレベルをより持ち上げる、3 ささやき声を持ち上げる
UI_ADV_RIDER_ON/UI_BAS_LIFTER_ON/UI_BAS_CLEANER_ON フラグ:大きな声を抑える/小さな声を持ち上げる/背景ノイズ低減
UI_BAS_OUTPUT_GAIN 6p dB(範囲 0〜6 dB)

フラグは p ≥ 0.5 で ON。対応表にない値は 未較正(raw=…) と出します。

対応表から生成

プラグイン パラメーター 出力名 種類 保存値 → 画面値 確度
Voice Isolation BMDVoiceIsolationControl::DRY_MIX amount linear 0 + (100 − 0) × p ² two_point
Dialogue Leveler UI_BAS_PRESET mode enum 0 → 0 ALLOW_WIDER_DYNAMICS, 0.333333 → 1 OPTIMIZE_MODERATE_LEVELS, 0.666667 → 2 MORE_LIFT_FOR_LOW_LEVELS, 1 → 3 LIFT_SOFT_WHISPERY_SOURCES direct
Dialogue Leveler UI_ADV_RIDER_ON reduce_loud flag 0.5 以上 = 有効 direct
Dialogue Leveler UI_BAS_LIFTER_ON lift_soft flag 0.5 以上 = 有効 direct
Dialogue Leveler UI_BAS_CLEANER_ON background_reduction flag 0.5 以上 = 有効 direct
Dialogue Leveler UI_BAS_OUTPUT_GAIN output_gain linear 0 + (6 − 0) × p dB ² two_point
De-Esser BMDDeesser::RANGE freq log 700 × (9000 / 700)^p Hz ² two_point
De-Esser BMDDeesser::MODE mode enum 0 → narrow band, 0.5 → centered bell ※ calib
De-Esser BMDDeesser::AMOUNT amount linear 0 + (100 − 0) × p % ² two_point
De-Esser Deesser::REACTION reaction enum 0.5 → medium ※ calib
De-Esser BMDDeesser::ESS_ONLY s_only flag 0.5 以上 = 有効 direct
Vocal Channel BMDVocalChannel::HPF_IN hp_on flag 0.5 以上 = 有効 direct
Vocal Channel BMDVocalChannel::EQ_IN eq_on flag 0.5 以上 = 有効 direct
Vocal Channel BMDVocalChannel::COMP_IN comp_on flag 0.5 以上 = 有効 direct
Vocal Channel BMDVocalChannel::COMP_THRES threshold linear -40 + (0 − -40) × p dB ² two_point
Vocal Channel BMDVocalChannel::COMP_RATIO ratio linear 1.1 + (7 − 1.1) × p :1 ² two_point
Vocal Channel BMDVocalChannel::COMP_REACTION response linear 0 + (1 − 0) × p direct
Vocal Channel BMDVocalChannel::COMP_GAIN gain linear 0 + (20 − 0) × p dB ² two_point
Limiter BMDLimiter::INPUT_GAIN input linear -18 + (18 − -18) × p dB ² two_point
Limiter BMDLimiter::THRESHOLD ceiling linear -24 + (0 − -24) × p dBTP ² two_point
Limiter BMDLimiter::RELEASE release enum 0.882927 → 190.55 ms ※ calib
Limiter BMDLimiter::SOFT soft flag 0.5 以上 = 有効 direct

一次式(min + (max − min) × p)は2点以上の画面値と、画面で見たつまみの目盛(範囲)で確定したもの(two_point)、対応表(calib)は画面で読んだ値だけを持っています。

トラック Voice Isolation の有効/無効

トラック内蔵の Voice Isolation(スロット6)には有効/無効のパラメーターがありません。タグから 272 バイト目の u32 状態フラグのビット 0x10 が有効/無効を表します。

ビット 0x10 意味
立っていない 有効
立っている 無効(量は保存されたまま)
  • 2つのトラックで画面から切り替えて確認:変わるのはその1バイトだけ(2つの記録は 768 バイト離れている)で、量は変わらない。
  • スクリプトAPI Timeline.SetVoiceIsolationState でも確認:無効にしたトラックについて API は量 0 を返すが、保存された量は残る。
  • パラメーターの登録表(目印 0x77668866)も変わるが、状態を読むのには不要。
  • 使っていない内蔵スロットも 0x10。挿入プラグイン(2 を観測)とほかの内蔵FX のフラグは未解読で、--all で state_flags として出します。

reader は Voice Isolation.enabled(ON/OFF)として出し、--expect でも使えます。

未解読

  • プラグインのバイパス(挿入スロット)。
  • トラック単位の Dialogue Leveler の設定:画面で設定するまでトラックの記録に UI_… のパラメーターがなく、API からも設定できない。
  • ほかのプラグインのパラメーター(Vocal Channel の EQ バンド、Dialogue Separator、Music Remixer、Ducker、他社製プラグイン):--all で生値。