Packagesora.graybox.synth
Classpublic final class SynthesizerFM4
InheritanceSynthesizerFM4 Inheritance MultiTimberSynthBase Inheritance Object

FMシンセサイザーのGrayBoxモジュール.

このシンセサイザーの仕様について
    
=== FM4シンセサイザーの仕様 ===
[発音方式]
  ・4オペレーターFM音源(PM音源)方式
  ・PCMウェーブテーブル方式(サンプラー)
[ボイスパート数]
  ・16 パート(MIDIチャンネル)
[同時発音数]
  ・1 ~ 1024 ポリフォニック
[オーディオ出力]
  ・2 チャンネル(L,R)
[音色プリセット数]
  ・インストゥルメントプリセット(プログラムチェンジ・マップ) 128
  ・インストゥルメントプリセット(ドラム・マップ) 128
  ・サンプラープリセット(ドラム・マップ) 128
[システムエクスクルーシブ]
  ・対応 (デフォルトでは無効)(有効、無効の切り替え可能)
[RPN,NRPN]
  ・対応 (NRPはデフォルトでは無効)(NRPは有効、無効の切り替え可能)
==============================

[発音方式について]
・FM音源(PM音源)方式
  オペレーター数 : 2
  波形テーブル数 : 8
  
・PCMウェーブテーブル方式(サンプラー)
  サンプルデータ数 : 128
  ステレオ対応

これらの音源は下記の条件で切り替えができます。

  FM変調方式  -> ボイスパートがインストゥルメントモード、
                 またはパーカッションモードでのとき。
                          
  サンプラー  -> ボイスパートがサンプラーモードのとき。
  
[ボイスパートのモードについて]
・モード0 (ミュート)
  発音は行われませんが、ピッチベンドチェンジなどのコントロールは受け付けます。

・モード1 (インストゥルメントモード)
  FM音源による発音。
  プログラムチェンジ[0~127]に、音色のプリセットナンバー[0~127]が割り当てされる。
  (tonePresets[0~127]がプログラムチェンジ[0~127]に割当)

・モード2 (パーカッションモード)
  FM音源による発音。
  ノートナンバー[0~127]に、音色のプリセットナンバー[128~255]が割り当てされる。
  (tonePresets[128~255]がノートナンバー[0~127]に割当)
  
・モード3 (サンプラーモード)
  PCMサンプラーによる発音。1サンプル1音色。
  ノートナンバー[0~127]に、サンプラー音色のプリセットナンバー[0~127]が割り当てされる。
  (samplerPresets[0~127]がノートナンバー[0~127]に割当)
  
モード変更は、.setPartMode()メソッドを使用する方法と、
プログラム実行中にMIDIメッセージ(NRPN、SysEx)を受信して変更する方法があります。

================================================================================
  
[RPN]
MSB LSB : parameter             : DataEntry
 00  00 : PitchBend Sensitivity : 0 - 127

[NRPN]
MSB LSB : parameter             : DataEntry
 00  00 : Master Volume         : 0 - 127
 20  00 : Default Part Mode     : 0 - 3
                                  (0 = Mute, 1 = Instrument, 2 = Percussion, 3 = Sampler)
 21  00 : Part Mode             : 0 - 3
                                  (0 = Mute, 1 = Instrument, 2 = Percussion, 3 = Sampler)

[システム・エクスクルーシブ・メッセージ]

F0h     : SysEx Status
7Dh     : Manufacture ID ()
10h     : Device ID [ Constant 10h ]
22h     : Model ID [ SynthesizerFM4 ]
Address : Data Offset Address (Start Address)
...     : data
F7h     : EOX(End Of Exclusive)

)マニュファクチャーIDに"7Dh"(ユニバーサルメッセージ)を使用しています。
般のMIDIファイルを読み込ませるような用途に使われる場合は競合にご注意ください。

[アドレスマップ]

[00 00 00] ~ [00 7F 7F] : システムコモンパラメーター
[01 00 00] ~ [01 7F 7F] : (予約領域)
[02 00 00] ~ [02 7F 7F] : ボイスパートパラメーター
[03 00 00] ~ [03 7F 7F] : (予約領域)
[04 00 00] ~ [04 7F 7F] : 音色プリセットテーブルパラメーター[0~127]
[05 00 00] ~ [05 7F 7F] : 音色プリセットテーブルパラメーター[128~255]
[06 00 00] ~ [06 7F 7F] : サンプラー音色プリセットテーブルパラメーター[0~127]
[07 00 00] ~ [3F 7F 7F] : (予約領域)

[ スタートアドレス[00] ]
Address : parameter           : value
00 00   : Master Volume       : 0 - 127
00 01   : Key Reference Pitch : 0 - 127 (-64 ~ 0 ~ 63)
                              : Pitch = 440.0 + value 0.5

[ スタートアドレス[02] ]
  n : パートナンバー
  
Address : parameter         : value
0n 00   : Default Part Mode : 0 - 3 
                              (0 = Mute, 1 = Instrument, 2 = Percussion, 3 = Sampler)
0n 01   : Part Mode         : 0 - 3
                              (0 = Mute, 1 = Instrument, 2 = Percussion, 3 = Sampler)

[ スタートアドレス[04] ]
  xx : プリセットナンバー(プログラムチェンジ対応) [0 - 7F]

Address : parameter       : value
xx 00   : Preset Name     : ASCII CODE
 ~ 0F   : 
xx 10   : ---             : ---
 ~ 18   :
xx 19   : key             : 0 - 127
xx 1A   : pan             : 0 - 127
xx 1B   : lfoWave         : 0 - 3
xx 1C   : lfoFreq (LSB)   : 0 - 127
xx 1D   : lfoFreq (MSB)   : 0 - 127
xx 1E   : fl              : 0 - 127
xx 1F   : strc            : 0 - 15

xx 20   : ---             : ---
xx 21   : ---             : ---
xx 22   : ---             : ---
xx 23   : tlVelCtrl_0     : 0 - 7
xx 24   : mul_0           : 0 - 15
xx 25   : tune_0 (LSB)    : 0 - 127
xx 26   : tune_0 (MSB)    : 0 - 127
xx 27   : lms_0           : 0 - 15
xx 28   : wave_0          : 0 - 7
xx 29   : tl_0            : 0 - 127
xx 2A   : ar_0            : 0 - 127
xx 2B   : dr_0            : 0 - 127
xx 2C   : sl_0            : 0 - 127
xx 2D   : rr_0            : 0 - 127
xx 2E   : kf_0            : 0 - 3
xx 2F   : kfStart_0       : 0 - 127

xx 30 ..: (OP1)
xx 40 ..: (OP2)
xx 50 ..: (OP3)

[ スタートアドレス [05] ]
  xx : プリセットナンバー(ノートナンバー対応) [0 - 7F]
  
Address : parameter       : value
------------- 同上 -------------
  
[ スタートアドレス[06] ]
  xx : プリセットナンバー(ノートナンバー対応) [0 - 7F]
  
Address : parameter       : value
xx 00   : Preset Name     : ASCII CODE
 ~ 0F   : 
xx 10   : smplNum         : 0 - 127
xx 11   : pan             : 0 - 127
xx 12   : octv            : 0 - 15
xx 13   : tune (LSB)      : 0 - 127
xx 14   : tune (MSB)      : 0 - 127
xx 15   : tl              : 0 - 127
xx 16   : ar              : 0 - 127
xx 17   : dr              : 0 - 127
xx 18   : sl              : 0 - 127
xx 19   : rr              : 0 - 127


================================================================================
[MIDI インプリメンテーション・チャート]
Model : GrayBox Synthesizer FM4 (SynthesizerFM4 Class Object)
date : 2023.01.05
Version : 22.12.0
Function                    Transmitted         Recognized      Remarks
--------------------------------------------------------------------------------
Basic       Default         X                   1-16
Chanel      Changed         X                   X
--------------------------------------------------------------------------------
Mode        Default         X                   Mode 3
            Messages        X                   Mode 3
            Altered                X
--------------------------------------------------------------------------------
Note                        X                   0-127
Number      True Voice             0-127
--------------------------------------------------------------------------------
Veclocity   Note On         X                   0-127
            Note OFF        X                   X
--------------------------------------------------------------------------------
After       Key’s           X                   X
touch       Channel         X                   X
--------------------------------------------------------------------------------
Pitch Bend                  X                   O
--------------------------------------------------------------------------------
Control     1               X                   O           Modulation
Change      6,38            X                   O           Data Entry (MSB,LSB)
            7               X                   O           Volume
            10              X                   O           Panpot
            11              X                   O           Expression
            96,97           X                   O           Data Inc,Dec
            98,99           X                   O         NRPN (LSB,MSB)
            100,101         X                   O         RPN  (LSB,MSB)
--------------------------------------------------------------------------------
Program                     X                   O
Change      Variable Range         0-127       TonePreset[0 - 127] (Part Mode 1)
--------------------------------------------------------------------------------
System Exclusive            X                   O 
--------------------------------------------------------------------------------
System      Song Position   X                   X
Common      Song Select     X                   X
            Tune Request    X                   X
--------------------------------------------------------------------------------
System      Clock           X                   X
RealTime    Commands        X                   X
--------------------------------------------------------------------------------
Aux         All Sound Off   X                   O (120)
Messages    Reset All-      X                   O
            -Controllers
            Local On/Off    X                   X
            All Notes Off   X                   O (123)
            Active Sensing  X                   X
            System Reset    X                   X
--------------------------------------------------------------------------------
Notes       ) Switchable O,X

--------------------------------------------------------------------------------
Mode 1: OMNI ON,  POLY   Mode 2: OMNI ON,  MONO       O : Yes
Mode 3: OMNI OFF, POLY   Mode 4: OMNI OFF, MONO       X : No
================================================================================

See also

sora.graybox.synth.MultiTimberSynthBase
sora.graybox.synth.VoicePart
sora.graybox.synth.TonePresetFM4
sora.graybox.synth.SamplerPreset
sora.graybox.synth.SampleData


Public Properties
 PropertyDefined By
 InheritedmidiInPorts : int = 0xFFFF
MIDIメッセージの入力対象ポートを示すビットフラグ(16bit)です.
MultiTimberSynthBase
 InheritedmidiOutPorts : int = 0xFFFF
MIDIメッセージの送信対象ポートを示すビットフラグ(16bit)です.
MultiTimberSynthBase
 InheritedreceiveSysEx : Boolean = false
システムエクスクルーシブメッセージを受け取るかを示すフラグ.
MultiTimberSynthBase
  samplerPresets : Vector.<SamplerPreset> = null
サンプラーの音色プリセットテーブルです.
SynthesizerFM4
  tonePresets : Vector.<TonePresetFM4> = null
インストゥルメントの音色プリセットテーブルです.
SynthesizerFM4
 InheritedvoiceParts : Vector.<VoicePart> = null
ボイスパート(MIDIチャンネルパラメーター).
MultiTimberSynthBase
Protected Properties
 PropertyDefined By
 Inherited_deiceID : int = 0x10
MultiTimberSynthBase
 Inherited_evBuff : MidiEvent
MultiTimberSynthBase
 Inherited_manufacID : int = 0x7D
MultiTimberSynthBase
 Inherited_masterVolume : Number = 1.0
MultiTimberSynthBase
 Inherited_masterVolumeTable : Vector.<Number> = null
MultiTimberSynthBase
 Inherited_maxPMN : int = 0
MultiTimberSynthBase
 Inherited_maxPolyphony : int = 0
MultiTimberSynthBase
 Inherited_modelID : int = 0
MultiTimberSynthBase
 Inherited_nrpnCtrlFlag : Boolean = false
MultiTimberSynthBase
 Inherited_nton : int = 0
MultiTimberSynthBase
 Inherited_ntonM : int = 0
MultiTimberSynthBase
 Inherited_referencePitch : Number = 440.0
MultiTimberSynthBase
 Inherited_rpnCtrlFlag : Boolean = true
MultiTimberSynthBase
 Inherited_sampleRate : Number = 44100.0
MultiTimberSynthBase
 Inherited_voiceUnits : Vector.<VoiceUnitBase> = null
MultiTimberSynthBase
Public Methods
 MethodDefined By
  
SynthesizerFM4(maxPoly:int = 32, refPitch:Number = 440.0, masVol:Number = 1.0, privateTableData:Boolean = true)
SynthesizerFM4オブジェクトを構築します.
SynthesizerFM4
 Inherited
allPartReset(modeReset:Boolean = false):void
すべてのボイスパートのパラメーターをリセットします.
MultiTimberSynthBase
 Inherited
allSoundOff(part:int = -1):void
発音中のすべてのサウンドを停止します。 コントロールチェンジ120のオールサウンドオフと同等の機能です.
MultiTimberSynthBase
 Inherited
allSoundStop(part:int = -1):void
発音中のすべてのサウンドを即時停止します。 この操作によってプチノイズが入る可能性があります.
MultiTimberSynthBase
 Inherited
channelAfterTouch(ch:int, val:int):void
チャンネルアフタータッチメッセージを入力します.
MultiTimberSynthBase
  
clearSampleData(id:int):void
サンプラー用サンプルデータをクリアします.
SynthesizerFM4
 Inherited
このメソッドはGrayBox.attachModule()メソッドで ホストにモジュールが正常に接続されたとき呼ばれます.
MultiTimberSynthBase
 Inherited
controleChange(ch:int, cc:int, val:int):void
コントロールチェンジメッセージを入力します.
MultiTimberSynthBase
 Inherited
このメソッドはGrayBox.detachModule()他、 いくつかのメソッドでモジュールがホストから接続解除されたとき呼ばれます.
MultiTimberSynthBase
  
[override] 波形データ、音色プリセット、サンプルデータをクリアします.
SynthesizerFM4
 Inherited
getDefaultPartMode(part:int):int
ボイスパートの、モードの既定値を取得します.
MultiTimberSynthBase
 Inherited
デバイスIDナンバーを取得します.このIDナンバーは主にSysExメッセージ処理に使用されます。
MultiTimberSynthBase
 Inherited
マニュファクチャーIDナンバーを取得します.このIDナンバーは主にSysExメッセージ処理に使用されます。
MultiTimberSynthBase
 Inherited
マスターボリュームの値を取得します.
MultiTimberSynthBase
 Inherited
最大発音ボイス数を取得します.
MultiTimberSynthBase
 Inherited
モデルIDナンバーを取得します.このIDナンバーは主にSysExメッセージ処理に使用されます。
MultiTimberSynthBase
 Inherited
getNRPNCtrlFlag():Boolean
NRPNを使ったコントロールのフラグ値を取得します.
MultiTimberSynthBase
 Inherited
getPartMode(part:int):int
ボイスパートのモードの値を取得します.
MultiTimberSynthBase
 Inherited
発音中のボイス数を取得します.
MultiTimberSynthBase
 Inherited
音程の基準ピッチの値を取得します.
MultiTimberSynthBase
 Inherited
getRPNCtrlFlag():Boolean
RPNを使ったコントロールのフラグ値を取得します.
MultiTimberSynthBase
  
サンプラー用サンプルデータを取得します.
SynthesizerFM4
 Inherited
getSampleRate():Number
サンプリングレートの値を取得します.
MultiTimberSynthBase
  
getWaveForm(id:int, buffer:Vector.<Number>):void
波形テーブルから波形値を読み取り、バッファへ書き込みます(最大2048).
SynthesizerFM4
 Inherited
initialize():void
シンセサイザーを初期状態に戻します.
MultiTimberSynthBase
 Inherited
このメソッドはGrayBox.initiModules()メソッドから呼ばれます.
MultiTimberSynthBase
 Inherited
keyAfterTouch(ch:int, key:int, val:int):void
キーアフタータッチメッセージを入力します.
MultiTimberSynthBase
  
loadPCMData(id:int, dat:ByteArray, sampleFrames:int, ch:int, bitRate:int, sign:Boolean, bigEndian:Boolean):void
バイナリのPCMデータから波形を読み込み、サンプラー用サンプルデータを構築します.
SynthesizerFM4
  
loadPCMSamples(id:int, wave:Vector.<Number>, ch:int):void
PCMデータから波形を読み込み、サンプラー用サンプルデータを構築します.
SynthesizerFM4
 Inherited
noteOff(ch:int, key:int):void
ノートオフメッセージを入力します.
MultiTimberSynthBase
 Inherited
noteOn(ch:int, key:int, velo:int):void
ノートオンメッセージを入力します.
MultiTimberSynthBase
 Inherited
pitchBendChange(ch:int, lsb:int, msb:int):void
ピッチベンドメッセージを入力します.
MultiTimberSynthBase
 Inherited
pitchBendChangeW(ch:int, val:int):void
ピッチベンドメッセージを入力します.
MultiTimberSynthBase
 Inherited
process(procData:ProcessData):void
このメソッドはGrayBox.process()メソッドから呼ばれます.
MultiTimberSynthBase
 Inherited
programChange(ch:int, num:int):void
プログラムチェンジメッセージを入力します.
MultiTimberSynthBase
 Inherited
このメソッドはGrayBox.resetModules()メソッドから呼ばれます.
MultiTimberSynthBase
 Inherited
このメソッドはGrayBox.resumeProcess()メソッドから呼ばれます.
MultiTimberSynthBase
 Inherited
setDefaultPartMode(part:int, mode:int):void
ボイスパートの、モードの既定値を設定します.
MultiTimberSynthBase
 Inherited
setDeviceID(id:int):void
デバイスIDを設定します.このIDナンバーは主にSysExメッセージ処理に使用されます。
MultiTimberSynthBase
 Inherited
setManufacID(id:int):void
マニュファクチャーIDを設定します.このIDナンバーは主にSysExメッセージ処理に使用されます。
MultiTimberSynthBase
 Inherited
setMasterVolume(val:Number):void
マスターボリュームを設定します.
MultiTimberSynthBase
 Inherited
setMaxPolyphony(num:int):int
最大発音ボイス数を設定します.
MultiTimberSynthBase
 Inherited
setModelID(id:int):void
モデルIDを設定します.このIDナンバーは主にSysExメッセージ処理に使用されます。
MultiTimberSynthBase
 Inherited
setNRPNCtrlFlag(flag:Boolean):void
NRPNを使ったコントロールのフラグ値を設定します.
MultiTimberSynthBase
 Inherited
setPartMode(part:int, mode:int):void
ボイスパートのモードを設定します.
MultiTimberSynthBase
 Inherited
setReferencePitch(val:Number):void
音程の基準ピッチを設定します.
MultiTimberSynthBase
 Inherited
setRPNCtrlFlag(flag:Boolean):void
RPNを使ったコントロールのフラグ値を設定します.
MultiTimberSynthBase
  
setSampleData(id:int, sampleData:SampleData, deepCopy:Boolean = true):void
サンプラー用サンプルデータをコピーします.
SynthesizerFM4
 Inherited
setSampleRate(val:Number):void
サンプリングレートを設定します.
MultiTimberSynthBase
  
setWaveForm(id:int, buffer:Vector.<Number>):void
バッファから波形値を読み取り、波形テーブルへ書き込みます(最大2048).
SynthesizerFM4
 Inherited
このメソッドはGrayBox.startProcess()メソッドから呼ばれます.
MultiTimberSynthBase
 Inherited
このメソッドはGrayBox.stopProcess()メソッドから呼ばれます.
MultiTimberSynthBase
 Inherited
このメソッドはGrayBox.suspendProcess()メソッドから呼ばれます.
MultiTimberSynthBase
 Inherited
sysExMessage(msg:ByteArray):void
システムエクスクルーシブメッセージを入力します.
MultiTimberSynthBase
 Inherited
updateAudioChannels(ch:int):void
このメソッドはGraybox.setAudioChannels()メソッドで ホストのオーディオチャンネル数が更新されたとき呼ばれます.
MultiTimberSynthBase
 Inherited
updateBypassStatus(bypass:Boolean):void
このメソッドはGrayBox.bypassProcess()メソッドで モジュールスロットのバイパスステータスが更新されたとき呼ばれます.
MultiTimberSynthBase
 Inherited
updateProcessBlockSize(size:int):void
このメソッドはGraybox.setProcessBlockSize()メソッドで ホストのプロセスブロックサイズが更新されたとき呼ばれます。
MultiTimberSynthBase
 Inherited
updateSampleRate(sampleRate:Number):void
このメソッドはGraybox.setSampleRate()メソッドで ホストのサンプリングレート値が更新されたとき呼ばれます.
MultiTimberSynthBase
Protected Methods
 MethodDefined By
 Inherited
MultiTimberSynthBase
 Inherited
MultiTimberSynthBase
 Inherited
MultiTimberSynthBase
 Inherited
MultiTimberSynthBase
 Inherited
MultiTimberSynthBase
 Inherited
MultiTimberSynthBase
 Inherited
MultiTimberSynthBase
  
_recreateVU(maxPoly:int):void
[override]
SynthesizerFM4
  
[override]
SynthesizerFM4
 Inherited
MultiTimberSynthBase
Public Constants
 ConstantDefined By
  OVER_TONES : int = 16
[static]
SynthesizerFM4
  PG_PHASE_FP : int = 16
[static]
SynthesizerFM4
  WAVE_TABLE_SIZE : int
[static]
SynthesizerFM4
  WAVE_TABLE_SIZE_BITS : int = 11
[static]
SynthesizerFM4
Protected Constants
 ConstantDefined By
 Inherited_CC_FUNC : Vector.<Function>
MultiTimberSynthBase
 Inherited_RPN_FUNC : Vector.<Function>
MultiTimberSynthBase
Property Detail
samplerPresetsproperty
public var samplerPresets:Vector.<SamplerPreset> = null

サンプラーの音色プリセットテーブルです.

ボイスパートがサンプラーモード(モード3)のとき、 プリセットナンバー[0~127]のプリセットがノートナンバーにそれぞれ割り当てられます。

tonePresetsproperty 
public var tonePresets:Vector.<TonePresetFM4> = null

インストゥルメントの音色プリセットテーブルです.

ボイスパートがインストゥルメントモード(モード1)のとき、 プリセットナンバー[0~127]のプリセットがプログラムチェンジに割り当てられます。

ボイスパートがパーカッションモード(モード2)のとき、 プリセットナンバー[128~255]のプリセットがノートナンバーにそれぞれ割り当てられます。

Constructor Detail
SynthesizerFM4()Constructor
public function SynthesizerFM4(maxPoly:int = 32, refPitch:Number = 440.0, masVol:Number = 1.0, privateTableData:Boolean = true)

SynthesizerFM4オブジェクトを構築します.

Parameters
maxPoly:int (default = 32) — 最大発音数[1,2,4,8,16,32,64,128,256,512,1024]
 
refPitch:Number (default = 440.0) — 基準ピッチ(Hz)
 
masVol:Number (default = 1.0) — マスターボリューム[0.0~1.0]
 
privateTableData:Boolean (default = true)trueでテーブルデータ(SynthDataオブジェクト)をこのオブジェクト固有で生成、保持して使用します。 falseで共有のテーブルデータを参照して使用します. 複数のシンセサイザーオブジェクトを使用する場合にテーブルデータを共有することでメモリ使用量を節約することができます。 ただしこの場合、必要が無くなった段階でSynthData.disposeInstance()を使用して解放する必要があります。

See also

Method Detail
_recreateVU()method
override protected function _recreateVU(maxPoly:int):void

Parameters

maxPoly:int

_resetKeyParams()method 
override protected function _resetKeyParams():void

clearSampleData()method 
public function clearSampleData(id:int):void

サンプラー用サンプルデータをクリアします.

Parameters

id:int

factoryDataReset()method 
override public function factoryDataReset():void

波形データ、音色プリセット、サンプルデータをクリアします.

getSampleData()method 
public function getSampleData(id:int):SampleData

サンプラー用サンプルデータを取得します.

Parameters

id:int — サンプルデータナンバー[0~127]

Returns
SampleData — SampleDataオブジェクト
getWaveForm()method 
public function getWaveForm(id:int, buffer:Vector.<Number>):void

波形テーブルから波形値を読み取り、バッファへ書き込みます(最大2048).

Parameters

id:int — 波形テーブルナンバー[0~7]
 
buffer:Vector.<Number>

loadPCMData()method 
public function loadPCMData(id:int, dat:ByteArray, sampleFrames:int, ch:int, bitRate:int, sign:Boolean, bigEndian:Boolean):void

バイナリのPCMデータから波形を読み込み、サンプラー用サンプルデータを構築します.

Parameters

id:int — サンプルデータナンバー[0~127]
 
dat:ByteArray — PCM波形データ
 
sampleFrames:int — サンプルフレーム数(チャンネルあたりサンプル数)
 
ch:int — チャンネル数(1~)
 
bitRate:int — サンプルビットレート(8,16,24,32)
 
sign:Boolean — 符号あり波形値の場合true
 
bigEndian:Boolean — データのバイトオーダーがビッグエンディアンの場合true

loadPCMSamples()method 
public function loadPCMSamples(id:int, wave:Vector.<Number>, ch:int):void

PCMデータから波形を読み込み、サンプラー用サンプルデータを構築します.

Parameters

id:int — サンプルデータナンバー[0~127]
 
wave:Vector.<Number> — PCM波形データ[浮動小数点数-1.0~1.0]
 
ch:int — チャンネル数(1~)

setSampleData()method 
public function setSampleData(id:int, sampleData:SampleData, deepCopy:Boolean = true):void

サンプラー用サンプルデータをコピーします.

deepCopytrueを渡して実行すると波形データをディープコピーします。 falseを渡して実行すると波形データの参照だけ渡します。

Parameters

id:int — サンプルデータナンバー[0~127]
 
sampleData:SampleData — コピー元SampleDataオブジェクト
 
deepCopy:Boolean (default = true)

setWaveForm()method 
public function setWaveForm(id:int, buffer:Vector.<Number>):void

バッファから波形値を読み取り、波形テーブルへ書き込みます(最大2048).

Parameters

id:int — 波形テーブルナンバー[0~7]
 
buffer:Vector.<Number>

Constant Detail
OVER_TONESConstant
public static const OVER_TONES:int = 16

PG_PHASE_FPConstant 
public static const PG_PHASE_FP:int = 16

WAVE_TABLE_SIZEConstant 
public static const WAVE_TABLE_SIZE:int

WAVE_TABLE_SIZE_BITSConstant 
public static const WAVE_TABLE_SIZE_BITS:int = 11