Channel
Channel
Bases: _FLObject
Represents a channel of one of the kinds in Kind
in the channel rack.
Source code in pyflp/channel/channel.py
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 |
|
au_sample_rate: Optional[int] = _UIntProperty()
class-attribute
AU-format sample specific.
color: Optional[colour.Color] = _ColorProperty()
class-attribute
default_name: Optional[str] = _StrProperty()
class-attribute
Default name of the channel.
The value of this depends on the type of plugin
:
- Native (stock) plugin: The factory name of the plugin.
- VST instruments: "Fruity Wrapper".
See name
also.
enabled: Optional[bool] = _BoolProperty()
class-attribute
Whether the channel is in enabled state.
filter_channel: Optional[int] = _IntProperty()
class-attribute
Display filter under which this channel is grouped. See Filter
.
icon: Optional[int] = _IntProperty()
class-attribute
index: Optional[int] = _UIntProperty()
class-attribute
kind: Optional[Kind] = _EnumProperty(Kind)
class-attribute
Type of channel. See Kind
.
layer_flags: Optional[int] = _IntProperty()
class-attribute
Flags associated with a Channel
of kind Kind.Layer
.
locked: Optional[bool] = _BoolProperty()
class-attribute
Whether the channel is locked in the channel rack. Paired with
the Channel.enabled
, it represents actual state of the channel.
name: Optional[str] = _StrProperty()
class-attribute
The value of this depends on the type of plugin
:
- Native (stock) plugin: User-given name. Default event is not stored.
- VST plugin (VSTi): The name obtained from the VST, or the user-given name. Default event (i.e VST plugin name) is stored.
See default_name
also.
pan: Optional[int] = _UIntProperty(max_=12800)
class-attribute
Min: 0, Max: 12800, Default: 6400.
root_note: Optional[int] = _IntProperty()
class-attribute
Miscellaneous settings -> Root note. Min: 0 (C0), Max: 131 (B10)
sample_path: Optional[str] = _StrProperty()
class-attribute
Absolute path of a sample file on the disk. Valid only if
Channel.kind
is ChannelKind.Sampler
or ChannelKind.Audio
.
Contains '%FLStudioFactoryData%' for stock samples.
sampler_flags: Optional[int] = _IntProperty()
class-attribute
Flags associated with Channel
of kind Kind.Sampler
.
stretch_time: Optional[int] = _UIntProperty()
class-attribute
Sampler/Audio -> Time stretching -> Time.
swing: Optional[int] = _UIntProperty()
class-attribute
Sampler/Instruemnt -> Miscellaneous functions -> Time -> Swing.
target_insert: Optional[int] = _IntProperty(min_=-1)
class-attribute
The index of the Insert
the channel is routed to.
use_loop_points: Optional[bool] = _BoolProperty()
class-attribute
Sampler/Audio -> Playback -> Use loop points.
volume: Optional[int] = _UIntProperty(max_=12800)
class-attribute
Min: 0, Max: 12800, Default: 10000.
zipped: bool = _BoolProperty()
class-attribute
Whether the channel is in zipped state.
EventID
Bases: enum.IntEnum
Event IDs used by Channel
.
Source code in pyflp/channel/channel.py
90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 |
|
AUSampleRate = DWORD + 25
class-attribute
See Channel.au_sample_rate
. Possibly obsolete.
Color = DWORD
class-attribute
See Channel.color
. Defaults to #485156.
CutSelfCutBy = DWORD + 4
class-attribute
See Channel.cut_group
. Default event (0, 0)
is not stored only for Layer channels.
DefaultName = TEXT + 9
class-attribute
See Channel.default_name
.
Delay = DATA + 1
class-attribute
See Channel.delay
. Implemented by ChannelDelayEvent
.
Enabled = 0
class-attribute
See Channel.enabled
.
EnvelopeLFO = DATA + 10
class-attribute
See Channel.env_lfos
. Impelemented by ChannelEnvelopeLFOEvent
FilterChannelNum = DWORD + 17
class-attribute
See Channel.filter_channel
.
Icon = DWORD + 27
class-attribute
Index of the icon used. See Channel.icon
.
Kind = 21
class-attribute
Stores ChannelKind
, used by Channel.kind
.
LayerChildren = WORD + 30
class-attribute
Stores index of a child Channel
. See Channel.children
.
Used by layer channels only. Each child has its own events.
LayerFlags = DWORD + 16
class-attribute
See Channel.layer_flags
.
LevelOffsets = DATA + 21
class-attribute
See Channel.level_offsets
. Implemented by ChannelLevelOffsetsEvent
.
Levels = DATA + 11
class-attribute
See Channel.levels
. Implemented by ChannelLevelsEvent
.
Locked = 32
class-attribute
See Channel.locked
. FL 12.3+.
Name = TEXT + 11
class-attribute
See Channel.name
. Default event is not stored.
New = WORD
class-attribute
Marks the beginning of a new channel.
Parameters = DATA + 7
class-attribute
See Channel.parameters
. Implemented by ChannelParametersEvent
.
Plugin = DATA + 5
class-attribute
See Channel.plugin
. Implemented by Plugin
.
Polyphony = DATA + 13
class-attribute
See Channel.polyphony
. Implemented by ChannelPolyphonyEvent
.
RootNote = DWORD + 7
class-attribute
See Channel.root_note
. Default event is not stored.
SamplePath = TEXT + 4
class-attribute
See Channel.sample_path
. Default event is not stored.
SamplerFlags = DWORD + 15
class-attribute
See Channel.sampler_flags
.
StretchTime = DWORD + 12
class-attribute
See Channel.stretch_time
.
Swing = WORD + 33
class-attribute
See Channel.swing
.
TargetInsert = 22
class-attribute
See Channel.insert
.
Tracking = DATA + 20
class-attribute
See Channel.tracking
. Implemented by ChannelTrackingEvent
.
UseLoopPoints = 19
class-attribute
Zipped = 15
class-attribute
See Channel.zipped
. Default event is not stored.
arp()
property
See ChannelArp
and ChannelParametersEvent
.
Source code in pyflp/channel/channel.py
345 346 347 348 |
|
children()
property
List of children index
es of a Layer.
Valid only if kind
is ChannelKind.Layer
.
Source code in pyflp/channel/channel.py
273 274 275 276 277 |
|
cut_group()
writable
property
Cut group in the form of (Cut self, cut by).
Source code in pyflp/channel/channel.py
356 357 358 359 |
|
delay()
property
See ChannelDelay
.
Source code in pyflp/channel/channel.py
307 308 309 310 |
|
env_lfos()
property
Channel AHDSR envelopes and LFOs for Panning, Volume, Pitch, Mod X (Cutoff)
and Mod Y (Resonance). See ChannelEnvelope
and ChannelEnvelopeEvent
.
Source code in pyflp/channel/channel.py
350 351 352 353 354 |
|
fx()
property
See ChannelFX
.
Source code in pyflp/channel/channel.py
279 280 281 282 |
|
level_offsets()
property
See ChannelLevelOffsets
.
Source code in pyflp/channel/channel.py
332 333 334 335 |
|
levels()
property
See ChannelLevels
.
Source code in pyflp/channel/channel.py
317 318 319 320 |
|
plugin()
property
The Plugin
associated with the channel. Valid
only if kind
is ChannelKind.Instrument
.
Source code in pyflp/channel/channel.py
267 268 269 270 271 |
|
polyphony()
property
See ChannelPolyphony
.
Source code in pyflp/channel/channel.py
312 313 314 315 |
|
tracking_vol()
property
Volume tracking. See ChannelTracking
.
Source code in pyflp/channel/channel.py
322 323 324 325 |
|
tracking_key()
property
Key tracking. See ChannelTracking
.
Source code in pyflp/channel/channel.py
327 328 329 330 |
|
ChannelArp
Saving
This object doesn't implement property setters yet!
Bases: _FLObject
Miscellaneous settings -> Arp section.
Source code in pyflp/channel/arp.py
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
|
direction: Optional[Direction] = _EnumProperty(Direction)
class-attribute
range: Optional[int] = _UIntProperty()
class-attribute
Range (in octaves).
chord: Optional[int] = _UIntProperty()
class-attribute
Index of the selected arpeggio chord.
repeat: Optional[int] = _UIntProperty()
class-attribute
Number of times a note is repeated.
time: Optional[float] = _FloatProperty()
class-attribute
Delay between two successive notes played.
gate: Optional[float] = _FloatProperty()
class-attribute
Results in a more staccato sound.
slide: Optional[bool] = _BoolProperty()
class-attribute
Whether arpeggio will slide between notes.
ChannelDelay
Event information
Size: 20 (all 32 bit unsigned integers)
Structure:
Parameter | Offset |
---|---|
feedback | 0 |
pan | 4 |
pitch_shift | 8 |
echo | 12 |
time | 16 |
Bases: _FLObject
Used by Channel.delay
.
Source code in pyflp/channel/delay.py
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
|
echo: Optional[int] = _IntProperty()
class-attribute
feedback: Optional[int] = _IntProperty()
class-attribute
pan: Optional[int] = _IntProperty()
class-attribute
pitch_shift: Optional[int] = _IntProperty()
class-attribute
time: Optional[int] = _IntProperty()
class-attribute
ChannelEnvelopeLFO
Event information
Size: 68 (per parameter; occurs 5x per channel)
Structure:
Parameter | Offset |
---|---|
__flags |
0 |
enabled | 4 |
env_predelay | 8 |
env_attack | 12 |
env_hold | 16 |
env_decay | 20 |
env_sustain | 24 |
env_release | 28 |
lfo_shape | 52 |
env_att_tns | 56 |
env_sus_tns | 60 |
env_rel_tns | 64 |
Note
__flags
holds flags for lfo_synced
and lfo_retrig
properties.
Todo
Some properties are yet to be discovered.
Bases: _FLObject
Used by Channel._env_lfos
.
Source code in pyflp/channel/envlfo.py
112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 |
|
lfo_synced: bool = _BoolProperty()
class-attribute
Whether LFO is synced with tempo.
lfo_retrig: bool = _BoolProperty()
class-attribute
Whether LFO is in retriggered mode.
enabled: bool = _BoolProperty()
class-attribute
Whether envelope section is enabled.
env_predelay: int = _UIntProperty(_AHDSR_VALIDATOR)
class-attribute
Min: 100 (0%), Max: 65536 (100%), Default: 100 (0%).
env_attack: int = _UIntProperty(_AHDSR_VALIDATOR)
class-attribute
Min: 100 (0%), Max: 65536 (100%), Default: 20000 (31%).
env_hold: int = _UIntProperty(_AHDSR_VALIDATOR)
class-attribute
Min: 100 (0%), Max: 65536 (100%), Default: 20000 (31%).
env_decay: int = _UIntProperty(_AHDSR_VALIDATOR)
class-attribute
Min: 100 (0%), Max: 65536 (100%), Default: 30000 (46%).
env_sustain: int = _UIntProperty(max_=128)
class-attribute
Min: 0 (0%), Max: 128 (100%), Default: 50 (39%).
env_release: int = _UIntProperty(_AHDSR_VALIDATOR)
class-attribute
Min: 100 (0%), Max: 65536 (100%), Default: 20000 (31%).
lfo_shape: LFOShape = _EnumProperty(LFOShape)
class-attribute
Sine, triangle or pulse. Default: LFOShape.Sine
.
env_att_tns: int = _IntProperty(_TNS_VALIDATOR)
class-attribute
Attack tension. Min: -128 (-100%), Max: 128 (100%), Default: 0 (0%).
env_sus_tns: int = _IntProperty(_TNS_VALIDATOR)
class-attribute
Sustain tension. Min: -128 (-100%), Max: 128 (100%), Default: 0 (0%).
env_rel_tns: int = _IntProperty(_TNS_VALIDATOR)
class-attribute
Release tension.
Min: -128 (-100%), Max: 128 (100%), Default: -101 / 0 (-79% / 0%).
LFOShape
Bases: enum.IntEnum
See ChannelEnvelope.lfo_shape
.
Source code in pyflp/channel/envlfo.py
120 121 122 123 124 125 126 |
|
Pulse = 2
class-attribute
Sine = 0
class-attribute
Triangle = 1
class-attribute
ChannelLevelOffsets
Event information
Size: 20 (all 32 bit signed integers)
Structure:
Parameter | Offset |
---|---|
pan | 0 |
volume | 8 |
mod_x | 12 |
mod_y | 16 |
Bases: _FLObject
Used by Channel.delay
.
Source code in pyflp/channel/level_offsets.py
62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
|
mod_x = _IntProperty()
class-attribute
mod_y = _IntProperty()
class-attribute
pan = _IntProperty()
class-attribute
volume = _IntProperty()
class-attribute
ChannelLevels
Event information
Size: 24 (all 32 bit signed integers)
Structure:
Parameter | Offset |
---|---|
pan | 0 |
volume | 4 |
pitch_shift | 8 |
Todo
Some properties are yet to be discovered.
Bases: _FLObject
Used by Channel.levels
.
Source code in pyflp/channel/levels.py
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
|
pan = _IntProperty()
class-attribute
pitch_shift = _IntProperty()
class-attribute
Pitch shift (in cents).
volume = _IntProperty()
class-attribute
ChannelPolyphony
Event information
Size: 9
Structure:
Parameter | Offset | Type |
---|---|---|
max | 0 | I |
slide | 4 | I |
flags | 8 | B |
Bases: _FLObject
Used by Channel.polyphony
. Implemented by ChannelPolyphonyEvent
.
Source code in pyflp/channel/polyphony.py
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
|
flags: Flags = _EnumProperty(Flags)
class-attribute
Mono and Porta buttons. See ChannelPolyphonyFlags
.
max: int = _IntProperty()
class-attribute
Maximum number of voices.
slide: int = _IntProperty()
class-attribute
Portamento time.
Flags
Bases: enum.IntFlag
Used by ChannelPolyphony.flags
.
Source code in pyflp/channel/polyphony.py
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
|
Mono = 1 << 0
class-attribute
Mono is enabled.
None_ = 0
class-attribute
No options are enabled.
Porta = 1 << 1
class-attribute
Porta is enabled.
U1 = 1 << 2
class-attribute
U2 = 1 << 3
class-attribute
U3 = 1 << 4
class-attribute
U4 = 1 << 5
class-attribute
U5 = 1 << 6
class-attribute
U6 = 1 << 7
class-attribute
ChannelTracking
Event information
Size: 16 (all 32 bit signed integers)
Structure:
Parameter | Offset |
---|---|
middle_value | 0 |
pan | 4 |
mod_x | 8 |
mod_y | 12 |
Bases: _FLObject
Used by Channel.tracking
.
Source code in pyflp/channel/tracking.py
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
|
middle_value: int = _IntProperty()
class-attribute
mod_x: int = _IntProperty()
class-attribute
mod_y: int = _IntProperty()
class-attribute
pan: int = _IntProperty()
class-attribute
ChannelFX
Bases: _FLObject
Sampler/Audio -> Pre-computed effects. Used by Channel.fx
.
Source code in pyflp/channel/fx.py
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 |
|
cutoff: Optional[int] = _UIntProperty(max_=1024)
class-attribute
Filter Mod X. Min = 0, Max = 1024, Default = 1024.
fade_in: Optional[int] = _UIntProperty(max_=1024)
class-attribute
Quick fade-in. Min = 0, Max = 1024, Default = 0.
fade_out: Optional[int] = _UIntProperty(max_=1024)
class-attribute
Quick fade-out. Min = 0, Max = 1024, Default = 0.
pre_amp: Optional[int] = _UIntProperty(max_=256)
class-attribute
Boost. Min: 0, Max: 256, Default: 0.
resonance: Optional[int] = _UIntProperty(max_=1024)
class-attribute
Filter Mod Y. Min = 0, Max = 1024, Default = 0.
stereo_delay: Optional[int] = _IntProperty()
class-attribute
EventID
Bases: enum.IntEnum
Event IDs used by ChannelFX
.
Source code in pyflp/channel/fx.py
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 |
|
CutOff = WORD + 7
class-attribute
See ChannelFX.cutoff
.
FadeIn = WORD + 12
class-attribute
See ChannelFX.fade_in
.
FadeOut = WORD + 11
class-attribute
See ChannelFX.fade_out
.
PreAmp = WORD + 10
class-attribute
See ChannelFX.boost
.
Resonance = WORD + 19
class-attribute
See ChannelFX.resonance
.
Reverb = DWORD + 11
class-attribute
See ChannelFX.reverb
and ChannelFXReverb
.
StereoDelay = WORD + 21
class-attribute
See ChannelFX.stereo_delay
.
reverb()
property
See ChannelFXReverb
.
Source code in pyflp/channel/fx.py
124 125 126 127 |
|
ChannelFXReverb
Bases: _FLObject
Sampler/Audio -> Pre-computed effects -> Reverb. Used by ChannelFX.reverb
.
Source code in pyflp/channel/fx.py
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
|
kind: Optional[Kind] = _Kind(Kind)
class-attribute
See Kind
.
mix: Optional[int] = _Mix(max_=256)
class-attribute
Reverb mix (dry/wet). Min: 0, Max: 256, Default: 0.
Filter
Bases: _FLObject
Channel display filter. Default: 'Unsorted', 'Audio'
and 'Automation'. Used by Channel.filter_channel
.
Source code in pyflp/channel/filter.py
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
|
name: str = _StrProperty()
class-attribute
Name of the filter channel.
EventID
Bases: enum.IntEnum
Event IDs used by FilterChannel
.
Source code in pyflp/channel/filter.py
28 29 30 31 32 33 |
|
Name = TEXT + 39
class-attribute
See FilterChannel.name
.