MIDI
MIDI 脚本设备 API 参考
MIDI 脚本是一种开发者和用户为任何 MIDI 控制器创建原生支持的方式。 脚本是一段代码,存储在纯文本文件中,FL Studio 使用代码在控制器和 FL Studio 之间转换命令。 这种通信可以双向进行,这样控制器便可以访问 FL Studio 代码中的功能(如下文所示),并且 FL Studio 可以将数据发送回控制器(例如点亮打击垫或显示轨道名称)。
FL Studio MIDI 脚本基于 Python。 您无需安装任何内容,FL Studio 将直接处理脚本。 在下文所示的文件夹中创建脚本后,已创建脚本的设备将在 MIDI 设置选项卡下的控制器类型菜单中显示。 从该菜单中,可以选择控制器并正常使用。
注:MIDI 脚本旨在供硬件制造商和高级用户为 MIDI 控制器创建自定义支持。 如果您是编程的新手,那么 MIDI 脚本可能令人困惑。 这是正常现象,只要坚持不懈,终将获得回报!
支持论坛
FL Studio 注册客户可以访问 MIDI 控制器脚本论坛讨论脚本和共享脚本。
脚本位置
FL Studio 将在以下位置查找 MIDI 脚本:
- 已创建脚本的设备 - 主脚本文件位于 … 文档\Image-Line\FL Studio\Settings\Hardware\devicename\device.py 中。
- devicename 是 MIDI 控制器的名称,device*.py 是该设备的实际脚本。
- 在任意文本编辑器中打开和编辑 .py 文件。 在此之前,请备份所有原始文件。
- MIDI 设置选项卡下控制器类型菜单中显示的设备名称在 .py 脚本的第一行中定义,例如 #name=AKAI FL Studio Fire
- 映射文件夹 - 从控制器到 FL Studio 或插件的用户创建链接位于 … 文档\Image-Line\FL Studio\Settings\Mapping\Generic\Controller presets\devicename (User).flmapping 中
- 设备(启动映射)页面 - … 文档\Image-Line\FL Studio\Settings\Hardware\devicename\Page(number).scr
注:您不需要安装 Python 编译器来编辑和维护这些脚本,可以使用任何文本编辑器打开和编辑它们。 FL Studio MIDI 脚本基于 FL Studio 触发的事件(脚本事件)和对这些事件的响应 (回调)。
脚本模块
脚本函数(回调)根据 FL Studio 目标功能(播放列表、样式、设备…)在模块中组织。 要在脚本中使用回调,您必须在脚本顶部使用 'import' 来包含回调模块:
脚本函数
回调是在 FL Studio 中执行功能或作用于组件的函数。 例如,您可以使用回调函数为乐器通道命名,将其向上/向下移动或删除。 或者,更简单地将 FL Studio 中的走带控制按钮重新映射至您的控制器。 也就是说,回调使您能够深度控制 FL Studio 及其操作方式。 要在脚本中使用函数,请使用以下语法:
- module.functionName(arguments) - 其中 'module' 是模块名称。 注:函数名称使用小驼峰命名法。
脚本事件
脚本事件是 FL Studio 调用的函数,如果脚本需要响应事件,则将事件函数添加到脚本:
- def eventName(arguments) - 在此函数内编写响应代码。 注:事件名称使用驼峰命名法。
脚本事件
名称 |
参数 |
文档 |
OnInit |
- |
在脚本启动时调用。 |
OnDeInit |
- |
在脚本停止之前调用。 |
OnIdle |
- |
不时调用。 可用于完成一些小任务,大部分与 UI 相关。 例如:更新活动指示器。 |
OnMidiIn |
eventData |
收到 MIDI 消息时首先调用。 如果您不希望进行进一步处理,请将事件的 handled 属性设置为 true。 (事件属性仅限于:handled、timestamp、status、data1、data2、port、sysex、pmeflags) |
OnMidiMsg |
eventData |
为 OnMidiIn 未处理的短 MIDI 消息调用。 |
OnMidiOutMsg |
eventData |
为短 MIDI 输出消息调用。 (事件属性限制为:handled、status、data1、data2、port、midiId、midiChan、midiChanEx)
|
OnNoteOn |
eventData |
为 OnMidiMsg 未处理的音符开消息调用。 |
OnNoteOff |
eventData |
为 OnMidiMsg 未处理的音符关消息调用。 |
OnControlChange |
eventData |
为 OnMidiMsg 未处理的音符 CC 消息调用。 |
OnProgramChange |
eventData |
为 OnMidiMsg 未处理的程序更改消息调用。 |
OnPitchBend |
eventData |
为 OnMidiMsg 未处理的弯音更改消息调用。 |
OnKeyPressure |
eventData |
为 OnMidiMsg 未处理的按键压力消息调用。 |
OnChannelPressure |
eventData |
为 OnMidiMsg 未处理的通道压力消息调用。 |
OnSysEx |
eventData |
为 OnMidiMsg 未处理的音符 sysex 消息调用。 |
OnRefresh |
长标志 |
在出现脚本可能需要响应的更改时调用。
|
OnDoFullRefresh |
- |
与 OnRefresh 相同,但应更新所有内容。 |
OnUpdateBeatIndicator |
长值 |
节拍指示器发生变化时调用。 “value”具有新值。 (TODO:需要详细说明“value”) |
OnDisplayZone |
- |
当播放列表区更改时调用 |
OnUpdateLiveMode |
长 lastTrack |
当演奏模式发生变化时调用。 |
OnDirtyMixerTrack |
- |
当混音器轨道更改时调用 |
OnUpdateMeters |
- |
当需要更新峰值指示器时调用 |
OnWaitingForInput |
- |
(TODO:需要说明) |
OnSendTempMsg |
- |
(TODO:需要说明) |
模块和函数
播放列表模块
[TODO] 模块说明
命令 |
参数 |
结果 |
文档 |
trackCount |
- |
长 |
返回当前轨道计数。 |
getTrackName |
长索引 |
字符串 |
返回“index”处轨道的名称。 |
setTrackName |
长索引,字符串名称 |
- |
将“index”处轨道的名称更改为“name”。 |
getTrackColor |
长索引 |
长 |
以 RGBA 值返回“index”处轨道的颜色。 |
setTrackColor |
长索引,长颜色 |
- |
将“index”处轨道的颜色更改为“color”值。 |
isTrackMuted |
长索引 |
长 |
如果“index”处的轨道已静音,则返回 true。 |
muteTrack |
长索引 |
- |
切换“index”处轨道的静音状态。 |
isTrackSolo |
长索引 |
长 |
如果“index”处的轨道当前为独奏,则返回 true。 |
soloTrack |
长索引 |
- |
切换“index”处轨道的独奏状态。 |
getTrackActivityLevel |
长索引 |
浮点 |
以归一化值返回“index”处轨道的活动级别。 |
getTrackActivityLevelVis |
长索引 |
浮点 |
以归一化值返回“index”处轨道的视觉活动级别。 |
liveDisplayZone |
长左、长上、长右、长下 |
- |
将播放列表中的显示区域设置为指定的坐标。 |
lockDisplayZone |
长索引,长值 |
- |
锁定“index”处的显示区域。 |
liveDisplayZone |
长左、长上、长右、长下(长持续时间) |
- |
现场显示区域。 |
getLiveLoopMode |
长索引 |
长 |
获取现场循环模式。 |
getLiveTriggerMode |
长索引 |
长 |
获取现场触发模式. 结果是常量之一
|
getLivePosSnap |
长索引 |
长 |
获取现场位置吸附。 结果是常量之一
|
getLiveTrigSnap |
长索引 |
长 |
获取现场触发吸附。 结果是常量之一
|
getLiveStatus |
长索引,(长模式) |
长 |
获取“index”处轨道的现场状态。 结果取决于模式。
|
getLiveBlockStatus |
长索引,长 blockNum,(长模式) |
长 |
获取“index”处的轨道和“blockNum”块的现场块状态。 结果取决于模式。
|
getLiveBlockColor |
长索引,长 blockNum |
长 |
获取“index”处的轨道和“blockNum”块的现场块颜色 |
triggerLiveClip |
长索引,长 subNum,长标志,(浮点力度) |
- |
触发“index”处的轨道和“blockNum”块的现场剪辑
|
refreshLiveClips |
长索引,长值 |
- |
刷新“index”处轨道的现场剪辑。 |
incLivePosSnap |
长索引,长值 |
- |
增加“index”处轨道的现场位置吸附 |
incLiveTrigSnap |
长索引,长值 |
- |
增加“index”处轨道的现场触发吸附。 |
incLiveLoopMode |
长索引,长值 |
- |
增加“index”处轨道的现场循环模式 |
incLiveTrigMode |
长索引,长值 |
- |
增加“index”处轨道的现场触发模式 |
getVisTimeBar |
- |
长 |
获取时间小节。 |
getVisTimeTick |
- |
长 |
获取时间刻。 |
getVisTimeStep |
- |
长 |
获取时间步进。 |
通道模块
[TODO] 模块说明
命令 |
参数 |
结果 |
文档 |
channelNumber |
- |
长 |
返回第一个选定通道的索引。 |
channelCount |
- |
长 |
返回通道数量。 |
getChannelName |
长索引 |
字符串 |
返回“index”处通道的名称。 |
setChannelName |
长索引,字符串名称 |
- |
将“index”处通道的名称更改为“name”。 |
getChannelColor |
长索引 |
长 |
返回“index”处通道的颜色。 |
setChannelColor |
长索引,长颜色 |
- |
将“index”处通道的颜色更改为“color”值。 |
isChannelMuted |
长索引 |
长 |
如果“index”处的通道已静音,则返回 true。 |
muteChannel |
长索引 |
- |
切换“index”处通道的静音状态。 |
isChannelSolo |
长索引 |
长 |
如果“index”处的通道为独奏,则返回 true。 |
soloChannel |
长索引 |
- |
切换“index”处通道的独奏状态。 |
getChannelVolume |
长索引 |
浮点 |
返回“index”处通道的归一化音量。 |
setChannelVolume |
长索引,浮点音量 |
- |
将“index”处通道的音量更改为“volume”值。 |
getChannelPan |
长索引 |
浮点 |
以 -1.0 到 +1.0 之间的值返回“index”处通道的声像值。 |
setChannelPan |
长索引,浮点声像 |
- |
将“index”处通道的声像值更改为“pan”值。 该值应在 -1.0 到 +1.0 之间。
|
isChannelSelected |
长索引 |
长 |
如果“index”处的通道已被选择,则返回 true。 |
selectChannel |
长索引 |
- |
切换“index”处通道的选择。 |
selectAll |
- |
- |
选择当前通道组中的所有通道。 |
deselectAll |
- |
- |
取消选择当前通道组中的所有通道。 |
getChannelMidiInPort |
长索引 |
长 |
返回“index”处通道的 MIDI 端口。 |
getChannelIndex |
长索引 |
长 |
返回“index”处通道的索引。 |
getTargetFxTrack |
长索引 |
长 |
返回“index”处通道的目标效果轨道。 |
isHighLighted |
- |
长 |
当“index”处的通道高亮显示时,返回 true。 |
通道录制事件
|
processRECEvent |
长索引,长值,长标志 |
长 |
处理录制事件。 值:最小 = 0,最大 = 65536
|
incEventValue |
长索引,长步进,双共振 |
长 |
增大录制事件值。 |
getRecEventId |
长索引 |
长 |
返回“index”处通道的录制事件。 |
通道网格位
|
idGridBitAssigned |
长索引 |
长 |
如果为“index”处的通道分配了网格位,则返回 true。 |
getGridBit |
长索引,长位置 |
长 |
返回“index”处通道的“position”处的网格位。 |
setGridBit |
长索引,长位置,长值 |
- |
设置“index”处通道的“position”处的网格位值。 |
getStepParam |
长步进,长参数,长偏移,长 startPos,(长 padsStride) |
长 |
获取“step”处步进的步进参数
|
getCurrentStepParam |
长索引,长步进,长参数 |
- |
获取“index”处通道和“step”处步进的当前步进参数。
|
getGridBitWithLoop |
长索引,长位置 |
- |
获取“index”处通道带有循环的网格位。 |
其他
|
showCSForm |
长索引 |
- |
显示“index”处通道的 CS 窗体。 |
showEditor |
长索引 |
- |
显示“index”处通道的编辑器。 |
focusEditor |
长索引 |
- |
为“index”处的通道聚焦编辑器。 |
midiNoteOn |
长索引,长音符,长力度,(长通道) |
- |
为“index”处的通道设置 MIDI 音符。 |
编配模块
[TODO] 模块说明
命令 |
参数 |
结果 |
文档 |
jumpToMarker |
长索引,长选择 |
- |
选择一个标记。 将“index”设置为 -1,以选择上一个标记,或设置为 +1,以选择下一个标记。 将“select”设置为 true 以同时选择标记。
|
getMarkerName |
长索引 |
字符串 |
返回所请求标记的名称。 如果标记不存在,则返回一个空字符串。
|
addAutoTimeMarker |
长时间,字符串名称 |
- |
在“time”处添加一个自动时间标记,其名称设置为“name” |
liveSelection |
长时间,长停止 |
- |
在“time”处设置现场选择点。 将“stop”设置为 true,以使用选择的结束点(而不是开始点)。
|
liveSelectionStart |
- |
长 |
返回当前现场选择的开始时间。 |
currentTime |
长吸附 |
长 |
返回当前编配中的当前时间。 将“snap”设置为 true,以将返回的值吸附到网格。
|
currentTimeHint |
长模式,长时间 |
字符串 |
返回当前编配中所请求“time”的提示字符串。 “mode”为 0 表示样式模式,为 1 表示歌曲模式。
|
selectionStart |
- |
长 |
返回当前编配中当前选择的开始时间。 |
selectionEnd |
- |
长 |
返回当前编配中当前选择的结束时间。 |
设备模块
[TODO] 模块说明
命令 |
参数 |
结果 |
文档 |
midiOutMsg |
长消息 |
- |
将 MIDI 信息发送至链接的输出设备。 “message”包含要发送的值,通道和命令位于低字节,而第一和第二个数据值位于后两个字节中。
|
midiOutNewMsg |
长 slotIndex,长消息 |
- |
将 MIDI 消息发送至链接的输出设备,但仅当值已更改时发送。 “message”包含要发送的值。 “slotIndex”是调用者选择的值,应该与用于比较的之前消息的值相同。
|
sendMsgGeneric |
int64 id,字符串消息,字符串 lastMsg |
字符串 |
将文本字符串作为 SYSEX 消息发送至链接的输出设备。 “id”包含消息的前 6 个字节(从 0xF0 开始)。 自动添加结束值 0xF7。 “message”是要发送的文本 “lastMsg”是此函数的上一次调用返回的字符串。
|
midiOutSysex |
字符串消息 |
- |
将 SYSEX 消息发送至链接的输出设备。 |
processMIDICC |
eventData |
- |
让 FL 处理 CC 消息。 “event”是传递给调用它的 On… 函数的对象。
|
directFeedback |
eventData |
- |
将收到的消息发送至链接的输出设备。 “event”是传递给调用它的 On… 函数的对象。
|
isAssigned |
- |
长 |
如果有链接的输出设备,则返回 true。 |
getPortNumber |
- |
长 |
返回链接的输出设备的端口号。 |
findEventID |
长 controlId,(长标志) |
长 |
返回 controlId 的事件 id。 "flags"可以是下列之一:FEID_Flags_Skip_Unsafe = 1(跳过不安全(使用公式)链接)
|
getLinkedValue |
长 controlID |
浮点 |
返回链接至指定控件 ID 的 FL Studio 控件的值。 如果没有链接的控件,则结果为 -1。
|
getLinkedInfo |
长 controlID |
长 |
返回有关链接至指定控件 ID 的 FL Studio 控件的信息。 如果没有链接的控件,则结果为 -1,否则结果为 常量中的一个或多个
|
createRefreshThread |
- |
- |
启动整个 MIDI 设备的线程刷新。 |
destroyRefreshThread |
- |
- |
停止之前启动的线程刷新。 |
fullRefresh |
- |
- |
触发之前启动的线程刷新。 如果不存在,则立即触发刷新。 |
isDoubleClick |
长索引 |
长 |
如果不久前使用相同的索引调用了该函数,则返回 true,指示双击。 |
repeatMidiEvent |
eventData,长延迟,长速率 |
- |
开始重复发送之前发送的消息。 将在“delay”毫秒后第一次发送,之后每隔“rate”毫秒发送一次。 |
stopRepeatMidiEvent |
- |
- |
停止重复使用 repeatMidiEvent 发送的消息。 |
setHasMeters |
- |
- |
装置具有指示器 |
baseTrackSelect |
长索引,长步进 |
- |
基础选择轨道。 |
hardwareRefreshMixerTrack |
长索引 |
- |
硬件刷新“index”处的混音器轨道,使用 -1 全部刷新 |
样式模块
[TODO] 模块说明
命令 |
参数 |
结果 |
文档 |
patternNumber |
- |
长 |
返回当前样式编号。 |
patternCount |
- |
长 |
返回样式数量。 |
patternMax |
- |
长 |
返回最大样式编号。 |
getPatternName |
长索引 |
字符串 |
返回“index”处样式的名称。 |
setPatternName |
长索引,字符串名称 |
- |
将“index”处样式的名称更改为“name”。 |
getPatternColor |
长索引 |
长 |
返回“index”处样式的颜色。 |
setPatternColor |
长索引,长颜色 |
- |
将“index”处样式的颜色更改为“color”。 |
getPatternLength |
长索引 |
长 |
返回“index”处样式的长度,以节拍为单位。 |
getBlockSetStatus |
长左、长上、长右、长下 |
长 |
返回现场块状态。 结果是 LB_Status_Simplest 选项常量之一
|
ensureValidNoteRecord |
长索引,(长 playNow) |
- |
确保“index”处样式的音符有效。 |
jumpToPattern |
长索引 |
- |
跳转到“index”处的样式 |
findFirstNextEmptyPat |
长标志,长 x,长 y |
- |
查找 (x, y) 位置的第一个空样式 |
用户界面模块
除非另有说明,否则这些函数会返回处理请求的方式。
命令 |
参数 |
结果 |
文档 |
jog |
长值 |
长 |
通用点动控件。 可用于选择内容。 “value”是一个增量。 |
jog2 |
长值 |
长 |
备用点动控件。 可用于重定位内容。 “value”是一个增量。 |
strip |
长值 |
长 |
触敏条。 “value”为 -65536(最左侧)到 65536(最右侧)。 |
stripJog |
长值 |
长 |
点动模式下的触敏条。 “value”是一个增量。 |
stripHold |
长值 |
长 |
触敏条处于按住模式。 “value”为 0 表示释放,1 和 2 表示一指或两指居中模式,-1 和 -2 表示一指或两指点动模式。
|
previous |
- |
长 |
通用轨道选择。 |
next |
- |
长 |
通用轨道选择。 |
moveJog |
长值 |
长 |
用于重定位条目。 “value”是一个增量。 |
up |
- |
长 |
通用的向上移动方式。 |
down |
- |
长 |
通用的向下移动方式。 |
left |
- |
长 |
通用的向左移动方式。 |
right |
- |
长 |
通用的向右移动方式。 |
horZoom |
长值 |
长 |
按增量“value”水平缩放。 |
verZoom |
长值 |
长 |
按增量“value”垂直缩放。 |
snapOnOff |
- |
长 |
切换吸附值。 |
getSnapMode |
长值 |
长 |
返回吸附模式。 |
snapMode |
长值 |
长 |
选择另一种吸附模式。 “value”是一个增量:-1 为上一个模式,1 为下一个模式。
|
cut |
- |
长 |
如果可能,则剪切选定内容。 |
copy |
- |
长 |
如果可能,则拷贝选定内容。 |
paste |
- |
长 |
如果可能,则粘贴之前拷贝的数据。 |
insert |
- |
长 |
按插入键。 |
delete |
- |
长 |
按删除键。 |
enter |
- |
长 |
按回车键。 |
escape |
- |
长 |
按 Esc 键。 |
yes |
- |
长 |
按 'Y' 键。 |
not |
- |
长 |
按 'N' 键。 |
nextWindow |
- |
长 |
聚焦下一窗口。 |
selectWindow |
长 shift |
长 |
按 TAB 键。 将“shift”设置为 true,使其像按 Shift + TAB 一样起作用。
|
isClosing |
- |
长 |
如果应用程序正在关闭,则返回 true |
getProgTitle |
- |
字符串 |
返回程序标题 |
getVersion |
- |
字符串 |
返回程序版本 |
getHintMsg |
- |
字符串 |
返回程序提示消息 |
setHintMsg |
字符串消息 |
- |
设置程序提示消息 |
getFocusedFormCaption |
- |
字符串 |
返回聚焦窗口的标题 |
getHintValue |
长值,长最大值 |
字符串 |
返回值提示 |
getTimeDispMin |
- |
长 |
当时间显示设置为 'minutes' 时,返回 true |
setTimeDispMin |
- |
- |
将时间显示设置为分钟 |
getFocused |
长索引 |
长 |
返回“index”处窗口的焦点状态 结果是常量之一
|
getVisible |
长索引 |
长 |
返回“index”处窗口的可见状态 结果是常量之一
|
showWindow |
长索引 |
- |
按“index”显示窗口
|
launchAudioEditor |
长重用,字符串文件名,长索引,字符串预设值,字符串 presetGUID |
长 |
为“index”处的轨道启动音频编辑器,并返回编辑器状态 将“reuse”设置为 true 以重用打开的音频编辑器(如果有) “filename”是音频文件的路径
|
isInPopupMenu |
- |
长 |
当应用程序弹出菜单处于活动状态时返回 true |
closeAllMenu |
- |
- |
关闭所有应用程序菜单 |
isMetronomeEnabled |
- |
长 |
如果已启用节拍器,则返回 true。 |
isStartOnInputEnabled |
- |
长 |
如果已启用输入时开始,则返回 true。 |
isPrecountEnabled |
- |
长 |
如果已启用倒计时,则返回 true。 |
isLoopRecEnabled |
- |
长 |
如果已启用循环录制,则返回 true。 |
crDisplayRect |
长左、长上、长右、长下,长持续时间 |
- |
显示通道机架选择矩形。 |
走带控制模块
[TODO] 模块说明
命令 |
参数 |
结果 |
文档 |
globalTransport |
长命令,长值,长pmeflags,长标志 |
长 |
使用适当的参数调用 GlobalTransport 函数。
|
start |
- |
- |
开始播放。 |
stop |
- |
- |
停止播放。 |
record |
- |
- |
开始录制。 |
isRecording |
- |
长 |
如果录制已激活,则返回 true。 |
getLoopMode |
- |
长 |
返回当前的循环模式。 结果可以是以下之一:样式模式 = 0,歌曲模式 = 1。
|
setLoopMode |
长模式 |
- |
更改循环模式。 “mode”为 0 表示样式模式,为 1 表示歌曲模式。
|
getSongPos |
- |
浮点 |
以归一化值 (0..1) 返回歌曲位置。 |
setSongPos |
浮点位置 |
- |
设置歌曲位置。 “position”是归一化值 (0..1)。
|
getSongPosHint |
- |
字符串 |
返回当前歌曲位置的提示。 |
rewind |
长按 |
- |
倒回歌曲位置。 “pressed”表示按钮已按住 (1) 或未按住 (0)。
|
fastForward |
长按 |
- |
快进歌曲位置。 “pressed”表示按钮已按住 (1) 或未按住 (0)。
|
setPlaybackSpeed |
浮点速度 |
- |
设置播放速度乘数。 |
isPlaying |
- |
长 |
如果程序正在播放,则返回 true。 |
markerJumpJog |
长值,长标志 |
- |
跳转到标记位置。 “value”是一个增量。
|
markerSelJog |
长值,长标志 |
- |
选择一个标记。 “value”是一个增量。
|
getHWBeatLEDState |
- |
长 |
返回硬件节拍 LED 的状态。 |
continuousMovePos |
长速度,长按 |
- |
开始连续移动。 “pressed”表示按钮已按住 (1) 或未按住 (0)。
|
continuousMove |
长速度,长按 |
- |
开始连续移动。 “pressed”表示按钮已按住 (1) 或未按住 (0)。
|
混音器模块
[TODO] 模块说明
命令 |
参数 |
结果 |
文档 |
trackNumber |
- |
长 |
返回当前选定混音器轨道的索引。 |
getTrackInfo |
长模式 |
长 |
返回轨道信息。
|
setTrackNumber |
长 trackNumber,(长标志) |
- |
设置当前选定混音器轨道。 |
trackCount |
- |
长 |
返回轨道数量。 |
getTrackName |
长索引 |
字符串 |
返回“index”处轨道的名称。 |
setTrackName |
长索引,字符串名称 |
- |
将“index”处轨道的名称更改为“name”。 |
getTrackColor |
长索引 |
长 |
返回“index”处轨道的颜色。 |
setTrackColor |
长索引,长颜色 |
- |
将“index”处轨道的颜色更改为“color”。 |
isTrackArmed |
长索引 |
长 |
如果“index”处的轨道已准备,则返回 true。 |
armTrack |
长索引 |
- |
切换“index”处轨道的准备状态。 |
isTrackSolo |
长索引 |
长 |
如果“index”处的轨道为独奏,则返回 true。 |
soloTrack |
长索引 |
- |
切换“index”处轨道的独奏状态。 |
isTrackEnabled |
长索引 |
- |
如果“index”处的轨道已启用,则返回 true。 |
isTrackAutomationEnabled |
长索引,长 plugIndex |
- |
如果“index”处的轨道已启用自动化,则返回 true。 |
enableTrack |
长索引 |
- |
切换“index”处轨道的启用状态。 |
getTrackPluginId |
长索引,长 plugIndex |
长 |
返回“index”处轨道上插件索引为 plugIndex 的插件的插件 ID。 |
isTrackPluginValid |
长索引,长 plugIndex |
长 |
如果“index”处轨道上存在插件索引为 plugIndex 的插件,则返回 true。 有效 |
getTrackVolume |
长索引 |
浮点 |
返回“index”处轨道的归一化音量。 |
setTrackVolume |
长索引,浮点音量 |
- |
将“index”处轨道的音量更改为“volume”的(归一化)值。 |
getTrackPan |
长索引 |
浮点 |
以 -1.0 到 +1.0 之间的值返回“index”处轨道的声像值。 |
setTrackPan |
长索引,浮点声像 |
- |
更改“index”处轨道的声像调整。 “pan”在 -1.0 到 1.0 之间。 |
isTrackSelected |
长索引 |
长 |
如果“index”处的轨道已被选择,则返回 true。 |
selectTrack |
长索引 |
- |
切换“index”处轨道的选择。 |
selectAll |
- |
- |
选择所有混音器轨道。 |
deselectAll |
- |
- |
取消选择所有混音器轨道。 |
setRouteTo |
长索引,长 destIndex,长值 |
- |
将“index”处轨道的路由设置为“destIndex”。 |
getRouteSendActive |
长索引,长 destIndex |
长 |
如果从轨道“index”发送至轨道“destIndex”的路由有效,则返回 true。 |
afterRoutingChanged |
- |
- |
向 FL 通知路由更改。 |
getEventValue |
长索引,(长值),(长 smoothTarget) |
长 |
从 MIDI 返回事件值。 |
remoteFindEventValue |
长索引,(长标志) |
浮点 |
返回事件值。 |
getEventIDName |
长索引,(长 shortName) |
- |
返回事件名称(将简称的 shortName 设置为 True)。 |
getEventIDValueString |
长索引,长值 |
字符串 |
以字符串返回事件值。 |
getAutoSmoothEventValue |
长索引,(长锁定) |
长 |
返回自动平滑事件值。 |
automateEvent |
长索引,长值,长标志(长速度),(长 isIncrement),(浮点共振) |
长 |
自动化事件 |
getTrackPeaks |
长索引,长模式 |
浮点 |
返回“index”处轨道的峰值
|
getTrackRecordingFileName |
长索引 |
字符串 |
返回“index”处轨道的录制文件名 |
linkTrackToChannel |
长模式 |
- |
将轨道链接至通道 “mode”可以是以下之一:ROUTE_ToThis = 0,ROUTE_StartingFromThis = 1
|
getSongStepPos |
- |
长 |
返回歌曲步进位置。 |
getCurrentTempo |
长 asInt |
长/浮点 |
返回当前速度。 将“asInt”设置为 true,以获取尽可能长的结果
|
getRecPPS |
- |
长 |
返回录制 pps。 |
getSongTickPos |
(长模式) |
长/浮点 |
返回歌曲刻位置。
|
LaunchMapPages 模块
[todo] 我们需要在此处说明 LaunchMapPages 模块
LaunchMapPages 参考
命令 |
参数 |
结果 |
文档 |
init |
字符串 deviceName,长宽度,长高度 |
- |
初始化启动映射页面。 |
createOverlayMap |
长 offColor,长 onColor,长宽度,长高度 |
- |
创建叠加映射。 |
length |
- |
长 |
返回启动映射页面长度。 |
updateMap |
长索引 |
长 |
更新“index”处的启动映射页面。 |
getMapItemColor |
长索引,长 itemIndex |
长 |
返回“index”处页面的“itemIndex”处的颜色 |
getMapCount |
长索引 |
长 |
返回“index”处页面的条目长度 |
getMapItemChannel |
长索引,长 itemIndex |
长 |
返回“index”处页面的“itemIndex”处的目标通道 |
getMapItemAftertouch |
长索引,长 itemIndex |
长 |
返回“index”处页面的“itemIndex”处条目的触后 |
processMapItem |
eventData,长索引,长 itemIndex,长力度 |
- |
处理“index”处页面的“itemIndex”处的映射条目 |
releaseMapItem |
eventData,长索引 |
- |
释放“index”处页面的“itemIndex”处的映射条目 |
checkMapForHiddenItem |
- |
- |
检查 Launchpad 隐藏条目。 |
setMapItemTarget |
长索引,长 itemIndex,长目标 |
长 |
设置“index”处页面的“itemIndex”处条目的目标。 |
类型
eventData
参数 |
类型 |
文档 |
handled |
布尔 (r/w) |
设置为 True 以停止事件传播 |
timestamp |
时间 (r) |
事件的时间戳 |
status |
长 (r/w) |
MIDI 状态 |
data1 |
长 (r/w) |
MIDI 数据 1 |
data2 |
长 (r/w) |
MIDI 数据 2 |
port |
长 (r) |
MIDI 端口 |
note |
长 (r/w) |
MIDI 音符编号 |
velocity |
长 (r/w) |
MIDI 力度 |
pressure |
长 (r/w) |
MIDI 压力 |
progNum |
长 (r/w) |
MIDI 程序编号 |
controlNum |
长 (r/w) |
MIDI 控件编号 |
controlVal |
长 (r/w) |
MIDI 控件值 |
pitchBend |
长 (r/w) |
MIDI 弯音值 |
sysex |
字节 (r/w) |
MIDI sysex 数据 |
isIncrement |
布尔 (r/w) |
MIDI 是增量状态 |
res |
双 (r/w) |
MIDI 共振 |
inEv |
长 (r/w) |
MIDI inEv |
outEv |
长 (r/w) |
MIDI outEv |
midiId |
长 (r/w) |
MIDI midiID |
midiChan |
长 (r/w) |
MIDI midiChan |
midiChanEx |
长 (r/w) |
MIDI midiChanEx |
pmeflags |
长 (r) |
MIDI pmeflags |
常量
OnRefresh 标志
参数 |
值 |
文档 |
HW_Dirty_Mixer_Sel |
1 |
混音器选择 |
HW_Dirty_Mixer_Display |
2 |
混音器显示 |
HW_Dirty_Mixer_Controls |
4 |
混音器控件 |
HW_Dirty_RemoteLinks |
16 |
远程链接 |
HW_Dirty_FocusedWindow |
32 |
聚焦窗口 |
HW_Dirty_Performance |
64 |
演奏布局 |
HW_Dirty_LEDs |
256 |
LED |
现场状态模式
参数 |
值 |
文档 |
LB_Status_Default |
0(默认值) |
结果将是以下一项或多项:任何填充 = 1,任何计划 = 2,任何播放 = 4 |
LB_Status_Simple |
1 |
结果将是以下之一:空 = 0,已填充 = 1,无播放(或已计划)= 2,无计划(且未播放)= 3 |
现场块状态模式
参数 |
值 |
文档 |
LB_Status_Default |
0(默认值) |
结果将是以下一项或多项:已填充 = 1,已计划 = 2,正在播放 = 4 |
LB_Status_Simple |
1 |
结果将是以下之一:空 = 0,已填充 = 1,正在播放(或已计划)= 2,已计划(且未播放)= 3 |
LB_Status_Simplest |
2 |
结果将是以下之一:空 = 0,已填充 = 1,正在播放或已计划 = 2 |
现场块状态标志
参数 |
值 |
文档 |
LB_Status_Filled |
1 |
已填充 |
LB_Status_Scheduled |
2 |
已计划 |
LB_Status_Playing |
4 |
正在播放 |
现场循环模式
参数 |
值 |
文档 |
LiveLoop_Stay |
0 |
(TODO:需要说明) |
LiveLoop_OneShot |
1 |
(TODO:需要说明) |
LiveLoop_MarchWrap |
2 |
(TODO:需要说明) |
LiveLoop_MarchStay |
3 |
(TODO:需要说明) |
LiveLoop_MarchStop |
4 |
(TODO:需要说明) |
LiveLoop_Random |
5 |
(TODO:需要说明) |
LiveLoop_ExRandom |
6 |
(TODO:需要说明) |
现场触发模式
参数 |
值 |
文档 |
LiveTrig_Retrigger |
0 |
(TODO:需要说明) |
LiveTrig_Hold |
1 |
(TODO:需要说明) |
LiveTrig_HMotion |
2 |
(TODO:需要说明) |
LiveTrig_Latch |
3 |
(TODO:需要说明) |
现场吸附
参数 |
值 |
文档 |
LiveSnap_Off |
0 |
关 |
LiveSnap_Fourth |
1 |
1/4 个节拍 |
LiveSnap_Half |
2 |
1/2 个节拍 |
LiveSnap_One |
3 |
1 个节拍 |
LiveSnap_Two |
4 |
2 个节拍 |
LiveSnap_Four |
5 |
4 个节拍 |
LiveSnap_Auto |
6 |
自动 |
触发现场剪辑标志
参数 |
值 |
文档 |
TLC_MuteOthers |
1 |
(TODO:需要说明) |
TLC_Fill |
2 |
(TODO:需要说明) |
TLC_Queue |
4 |
(TODO:需要说明) |
TLC_Release |
32 |
(TODO:需要说明) |
TLC_NoPlayCheck |
64 |
(TODO:需要说明) |
TLC_NoHardwareUpdate |
1073741824 |
(TODO:需要说明) |
TLC_SecondPass |
2147483648 |
(TODO:需要说明) |
TLC_ColumnMode |
128 |
(TODO:需要说明) |
TLC_WeakColumnMode |
256 |
(TODO:需要说明) |
TLC_TriggerCheckColumnMode |
512 |
(TODO:需要说明) |
TLC_TrackSnap |
0 |
(TODO:需要说明) |
TLC_GlobalSnap |
8 |
(TODO:需要说明) |
TLC_NoSnap |
16 |
(TODO:需要说明) |
TLC_SubNum_Normal |
0 |
(TODO:需要说明) |
TLC_SubNum_ClipPos |
65536 |
(TODO:需要说明) |
TLC_SubNum_GroupNum |
131072 |
(TODO:需要说明) |
TLC_SubNum_Read |
196608 |
(TODO:需要说明) |
TLC_SubNum_Leave |
262144 |
(TODO:需要说明) |
录制事件
参数 |
值 |
文档 |
REC_Chan_Vol |
0 |
(TODO:需要说明) |
REC_Chan_Pan |
1 |
(TODO:需要说明) |
REC_Chan_FCut |
2 |
(TODO:需要说明) |
REC_Chan_FRes |
3 |
(TODO:需要说明) |
REC_Chan_Pitch |
4 |
(TODO:需要说明) |
REC_Chan_FType |
5 |
(TODO:需要说明) |
REC_Chan_PortaTime |
6 |
(TODO:需要说明) |
REC_Chan_Mute |
7 |
(TODO:需要说明) |
REC_Chan_FXTrack |
8 |
(TODO:需要说明) |
REC_Chan_GateTime |
9 |
(TODO:需要说明) |
REC_Chan_Crossfade |
10 |
(TODO:需要说明) |
REC_Chan_TimeOfs |
11 |
(TODO:需要说明) |
REC_Chan_SwingMix |
12 |
(TODO:需要说明) |
REC_Chan_SmpOfs |
13 |
(TODO:需要说明) |
REC_Chan_StretchTime |
14 |
(TODO:需要说明) |
REC_Chan_OfsPan |
16 |
(TODO:需要说明) |
REC_Chan_OfsVol |
17 |
(TODO:需要说明) |
REC_Chan_OfsPitch |
18 |
(TODO:需要说明) |
REC_Chan_OfsFCut |
19 |
(TODO:需要说明) |
REC_Chan_OfsFRes |
20 |
(TODO:需要说明) |
录制事件标志
参数 |
值 |
文档 |
REC_UpdateValue |
1 |
更新值 |
REC_GetValue |
2 |
检索值 |
REC_ShowHint |
4 |
更新提示(如果有) |
REC_UpdatePlugLabel |
16 |
更新插件参数的标签 |
REC_UpdateControl |
32 |
更新滚轮/旋钮 |
REC_FromMIDI |
64 |
(TODO:需要说明) |
REC_Store |
128 |
(TODO:需要说明) |
REC_SetChanged |
256 |
设置已更改标志 |
REC_SetTouched |
512 |
设置为已接触事件 |
REC_Init |
1024 |
(TODO:需要说明) |
REC_NoLink |
2048 |
不检查是否已链接滚轮 |
REC_InternalCtrl |
4096 |
由内部控制器发送 |
REC_PlugReserved |
8192 |
插件自由使用 |
REC_Smoothed |
16384 |
平滑控制器,与内部控制器几乎相同 |
REC_NoLastTweaked |
32768 |
来自最后调整 |
REC_NoSaveUndo |
65536 |
撤消之前的更改时使用 |
步进参数
参数 |
值 |
文档 |
pPitch |
0 |
更新值 |
pVelocity |
1 |
检索值 |
pRelease |
2 |
更新提示(如果有) |
pFinePitch |
3 |
更新插件参数的标签 |
pPan |
4 |
更新滚轮/旋钮 |
pModX |
5 |
(TODO:需要说明) |
pModY |
6 |
(TODO:需要说明) |
pShift |
7 |
设置已更改标志 |
全局走带控制命令
参数 |
值 |
文档 |
FPT_Jog |
0 |
(点动)通用点动(可用于选择内容) |
FPT_Jog2 |
1 |
(点动)备用通用点动(可用于重定位内容) |
FPT_Strip |
2 |
触敏点动条,最左..最右对应的值为 -65536..65536 |
FPT_StripJog |
3 |
(点动)点动模式下的触敏点动 |
FPT_StripHold |
4 |
值为 0 表示释放,1 和 2 表示一指或两指居中模式,-1 和 -2 表示一指或两指点动模式(然后将发送 FPT_StripJog) |
FPT_Previous |
5 |
(按钮) |
FPT_Next |
6 |
(按钮) |
FPT_PreviousNext |
7 |
(点动)通用轨道选择。 |
FPT_MoveJog |
8 |
(点动)用于重定位条目 |
FPT_Play |
10 |
(按钮)播放/暂停 |
FPT_Stop |
11 |
(按钮) |
FPT_Record |
12 |
(按钮) |
FPT_Rewind |
13 |
(按住) |
FPT_FastForward |
14 |
(按住) |
FPT_Loop |
15 |
(按钮) |
FPT_Mute |
16 |
(按钮) |
FPT_Mode |
17 |
(按钮)通用 | 录制模式 |
|
FPT_Undo |
20 |
(按钮)撤消/重做最后编辑,| 在撤消历史记录中下移 |
FPT_UndoUp |
21 |
(按钮)在撤消历史记录中上移(如果没有撤消历史记录,则无需执行) |
FPT_UndoJog |
22 |
(点动)在历史记录中撤消(如果没有撤消历史记录,则无需执行) |
FPT_Punch |
30 |
(按住)现场选择 |
FPT_PunchIn |
31 |
(按钮) |
FPT_PunchOut |
32 |
(按钮) |
FPT_AddMarker |
33 |
(按钮) |
FPT_AddAltMarker |
34 |
(按钮)添加备用标记 |
FPT_MarkerJumpJog |
35 |
(点动)标记跳转 |
FPT_MarkerSelJog |
36 |
(点动)标记选择 |
FPT_Up |
40 |
(按钮) |
FPT_Down |
41 |
(按钮) |
FPT_Left |
42 |
(按钮) |
FPT_Right |
43 |
(按钮) |
FPT_HZoomJog |
44 |
(点动) |
FPT_VZoomJog |
45 |
(点动)
|
FPT_Snap |
48 |
(按钮)吸附开/关 |
FPT_SnapMode |
49 |
(点动)吸附模式 |
FPT_Cut |
50 |
(按钮) |
FPT_Copy |
51 |
(按钮) |
FPT_Paste |
52 |
(按钮) |
FPT_Insert |
53 |
(按钮) |
FPT_Delete |
54 |
(按钮) |
FPT_NextWindow |
58 |
(按钮)TAB |
FPT_WindowJog |
59 |
(点动)窗口选择 |
FPT_F1 |
60 |
按钮 |
FPT_F2 |
61 |
按钮 |
FPT_F3 |
62 |
按钮 |
FPT_F4 |
63 |
按钮 |
FPT_F5 |
64 |
按钮 |
FPT_F6 |
65 |
按钮 |
FPT_F7 |
66 |
按钮 |
FPT_F8 |
67 |
按钮 |
FPT_F9 |
68 |
按钮 |
FPT_F10 |
69 |
按钮 |
FPT_Enter |
80 |
(按钮)输入/接受 |
FPT_Escape |
81 |
(按钮)Esc 键/取消 |
FPT_Yes |
82 |
(按钮)是 |
FPT_No |
83 |
(按钮)否 |
FPT_Menu |
90 |
(按钮)通用菜单 |
FPT_ItemMenu |
91 |
(按钮)条目编辑/工具/上下文菜单 |
FPT_Save |
92 |
(按钮) |
FPT_SaveNew |
93 |
(按钮)另存为新版本 |
FPT_PatternJog |
100 |
(点动)样式 |
FPT_TrackJog |
101 |
(点动)混音器轨道 |
FPT_ChannelJog |
102 |
(点动)通道 |
FPT_TempoJog |
105 |
(点动)速度(以 0.1BPM 为增量) |
FPT_TapTempo |
106 |
(按钮)速度敲击 |
FPT_NudgeMinus |
107 |
(按住)速度微移 - |
FPT_NudgePlus |
108 |
(按住)速度微移 + |
FPT_Metronome |
110 |
(按钮)节拍器 |
FPT_WaitForInput |
111 |
(按钮)等待输入以开始播放 |
FPT_Overdub |
112 |
(按钮)叠录录制 |
FPT_LoopRecord |
113 |
(按钮)循环录制 |
FPT_StepEdit |
114 |
(按钮)步进编辑模式 |
FPT_CountDown |
115 |
(按钮)录制前倒计时 |
FPT_NextMixerWindow |
120 |
(按钮)当前混音器轨道中插件窗口之间的选项卡 |
FPT_MixerWindowJog |
121 |
(点动)混音器窗口选择 |
FPT_ShuffleJog |
122 |
主随机摇摆(以 1 为增量) |
全局走带控制标志
参数 |
值 |
文档 |
GT_Cannot |
-1 |
未处理 |
GT_None |
0 |
无 |
GT_Plugin |
1 |
(处理方式)聚焦插件 |
GT_Form |
2 |
(处理方式)聚焦窗体 |
GT_Menu |
4 |
(处理方式)菜单 |
GT_Global |
8 |
(已处理)全局 |
GT_All |
15 |
全部 |
GT_Delayed |
5 |
延迟处理(仅返回值) |
PME 标志
参数 |
值 |
文档 |
PME_System |
2 |
可以完成系统任务(播放/暂停.. 大多为安全的任务) |
PME_System_Safe |
4 |
可以完成关键的系统任务(添加标记.. 显示模态窗口时无法完成的操作) |
PME_PreviewNote |
8 |
音符触发预览音符 | 控制内容 |
PME_FromHost |
16 |
当应用托管时 |
PME_FromMIDI |
32 |
来自 MIDI 事件 |
当前轨道标志
参数 |
值 |
文档 |
curfxScrollToMakeVisible |
1 |
滚动以使轨道可见 |
curfxCancelSmoothing |
2 |
取消平滑 |
curfxNoDeselectAll |
4 |
[todo] 需要说明 |
curfxMinimalLatencyUpdate |
8 |
[todo] 需要说明 |
轨道信息模式
参数 |
值 |
文档 |
TN_Master |
0 |
主 |
TN_FirstIns |
1 |
第一次插入 |
TN_LastIns |
2 |
上次插入 |
TN_Sel |
3 |
选定 |
IsIncrement 标志
参数 |
值 |
文档 |
II_Absolute |
0 |
绝对 |
II_Increment |
1 |
增量 |
II_Switch |
2 |
开关 |
轨道峰值模式
参数 |
值 |
文档 |
PEAK_L |
0 |
左 |
PEAK_R |
1 |
右 |
PEAK_LR |
2 |
左和右 |
PEAK_LR_INV |
3 |
左右反转 |
歌曲刻模式
参数 |
值 |
文档 |
ST_Int |
0 |
(TODO:需要说明) |
ST_Beat |
1 |
节拍 |
ST_PGB |
2 |
(TODO:需要说明) |
获取链接的信息结果标志
参数 |
值 |
文档 |
Event_CantInterpolate |
1 |
(TODO:需要说明) |
Event_Float |
2 |
(TODO:需要说明) |
Event_Centered |
4 |
(TODO:需要说明) |
查找空路径标志
参数 |
值 |
文档 |
FFNEP_FindFirst |
0 |
查找第一个样式 |
FFNEP_DontPromptName |
1 |
不提示样式名称 |
FL 窗口常量
参数 |
值 |
文档 |
widMixer |
0 |
混音器 |
widChannelRack |
1 |
通道机架 |
widPlaylist |
2 |
播放列表 |
widPianoRoll |
3 |
钢琴卷帘 |
widBrowser |
4 |
浏览器 |
变量
|