Native Instruments Reaktor 5 Core Reference

Core Reference
The information in this document is subject to change without notice and does not repre sent a commitment on the part of Native Instruments GmbH. The software described by this document is subject to a License Agreement and may not be copied to other media. No part of this publication may be copied, reproduced or otherwise transmitted or record ed, for any purpose, without prior written permission by Native Instruments GmbH, herein after referred to as Native Instruments. All product and company names are ™ or ® trade marks of their respective owners.
Document authored by: Native Instruments Product Version: 5.5 (06/2010) Document version: 1.1 (06/2010)
Special thanks to the Beta Test Team, who were invaluable not just in tracking down bugs, but in making this a better product.

Disclaimer

Germany
Native Instruments GmbH Schlesische Str. 28 D-10997 Berlin Germany
info@native-instruments.de www.native-instruments.de
USA
Native Instruments North America, Inc. 5631 Hollywood Boulevard Los Angeles, CA 90028 USA
sales@native-instruments.com www.native-instruments.com

Contact

© Native Instruments GmbH, 2010. All rights reserved.

Table of Contents

Table of Contents
1 First Steps in Reaktor Core
1.1 What is Reaktor Core 16
1.2 Using Core Cells 17
1.3 Using Core Cells in a Real Example 20
1.4 Basic Editing of Core Cells 23
2 Getting Into Reaktor Core
2.1 Event and Audio Core Cells 30
2.2 Creating Your First Core Cell 31
2.3 Audio and Control Signals 46
2.4 Building Your First Reaktor Core Macros 53
2.5 Using Audio as Control Signal 61
2.6 Event Signals 63
2.7 Logic Signals 68
3 Reaktor Core Fundamentals: The Core Signal Model
3.1 Values 71
3.2 Events 71
3.3 Simultaneous Events 74
3.4 Processing Order 76
3.5 Event Core Cells Reviewed 78
4 Structures with Internal State
16
30
71
85
4.1 Clock Signals 85
4.2 Object Bus Connections 86
4.3 Initialization 90
4.4 Building an Event Accumulator 92
4.5 Event Merging 94
4.6 Event Accumulator with Reset and Initialization 95
REAKTOR 5.5 - Core Reference - 4
4.7 Fixing the Event Shaper 103
5 Audio Processing at Its Core
5.1 Audio signals 107
5.2 Sampling Rate Clock Bus 109
5.3 Connection Feedback 110
5.4 Feedback Around Macros 113
5.5 Denormal Values 118
5.6 Other Bad Numbers 122
5.7 Building a 1-pole Low Pass Filter 123
6 Conditional Processing
6.1 Event Routing 127
6.2 Building a Signal Clipper 129
6.3 Building a Simple Sawtooth Oscillator 131
7 More Signal Types
7.1 Float Signals 133
7.2 Integer Signals 135
7.3 Building an Event Counter 138
7.4 Building a Rising Edge Counter Macro 139
8 Arrays
Table of Contents
107
127
133
144
8.1 Introduction to Arrays 144
8.2 Building an Audio Signal Selector 147
8.3 Building a Delay 155
8.4 Tables 162
9 Building Optimal Structures
9.1 Latches and Modulation Macros 168
9.2 Routing and Merging 169
9.3 Numerical Operations 170
9.4 Conversions Between Floats and Integers 171
REAKTOR 5.5 - Core Reference - 5
168
Table of Contents
10 Appendix A. Reaktor Core User Interface
10.1 A.1. Core Cells 173
10.2 A.2. Core Modules/Macros 173
10.3 A.3. Core Ports 174
10.4 A.4. Core Structure Editing 174
11 Appendix B. Reaktor Core Concept
11.1 B.1. Signals and Events 175
11.2 B.2. Initialization 176
11.3 B.3. OBC Connections 176
11.4 B.4. Routing 176
11.5 B.5. Latching 176
11.6 B.6. Clocking 177
12 Appendix C. Core Macro Ports
12.1 C.1. In 178
12.2 C.2. Out 178
12.3 C.3. Latch (input) 178
12.4 C.4. Latch (output) 178
12.5 C.5. Bool C (input) 179
12.6 C.6. Bool C (output) 179
13 Appendix D. Core Cell Ports
173
175
178
180
13.1 D.1. In (Audio Mode) 180
13.2 D.2. Out (Audio Mode) 180
13.3 D.3. In (Event Mode) 180
13.4 D.4. Out (Event Mode) 180
14 Appendix E. Built-in Busses
14.1 E.1. SR.C 182
14.2 E.2. SR.R 182
15 Appendix F. Built-in Modules
REAKTOR 5.5 - Core Reference - 6
182
183
15.1 F.1. Const 183
15.2 F.2. Math > + 183
15.3 F.3. Math > - 183
15.4 F.4. Math > * 184
15.5 F.5. Math > / 184
15.6 F.6. Math > |x| 184
15.7 F.7. Math > –x 184
15.8 F.8. Math > DN Cancel 185
15.9 F.9. Math > ~log 185
15.10 F.10. Math > ~exp 185
15.11 F.11. Bit > Bit AND 186
15.12 F.12. Bit > Bit OR 186
15.13 F.13. Bit > Bit XOR 186
15.14 F.14. Bit > Bit NOT 186
15.15 F.15. Bit > Bit << 187
15.16 F.16. Bit > Bit >> 187
15.17 F.17. Flow > Router 187
15.18 F.18. Flow > Compare 188
15.19 F.19. Flow > Compare Sign 188
15.20 F.20. Flow > ES Ctl 189
15.21 F.21. Flow > ~BoolCtl 189
15.22 F.22. Flow > Merge 189
15.23 F.23. Flow > EvtMerge 190
15.24 F.24. Memory > Read 190
15.25 F.25. Memory > Write 190
15.26 F.26. Memory > R/W Order 191
15.27 F.27. Memory > Array 191
15.28 F.28. Memory > Size [ ] 192
Table of Contents
REAKTOR 5.5 - Core Reference - 7
15.29 F.29. Memory > Index 192
15.30 F.30. Memory > Table 192
15.31 F.31. Macro 193
16 Appendix G. Expert Macros
16.1 G.1. Clipping > Clip Max / IClip Max 194
16.2 G.2. Clipping > Clip Min / IClip Min 194
16.3 G.3. Clipping > Clip MinMax / IClipMinMax 194
16.4 G.4. Math > 1 div x 194
16.5 G.5. Math > 1 wrap 195
16.6 G.6. Math > Imod 195
16.7 G.7. Math > Max / IMax 195
16.8 G.8. Math > Min / IMin 195
16.9 G.9. Math > round 196
16.10 G.10. Math > sign +- 196
16.11 G.11. Math > sqrt (>0) 196
16.12 G.12. Math > sqrt 196
16.13 G.13. Math > x(>0)^y 196
16.14 G.14. Math > x^2 / x^3 / x^4 197
16.15 G.15. Math > Chain Add / Chain Mult 197
16.16 G.16. Math > Trig-Hyp > 2 pi wrap 197
16.17 G.17. Math > Trig-Hyp > arcsin / arccos / arctan 197
16.18 G.18. Math > Trig-Hyp > sin / cos / tan 198
16.19 G.19. Math > Trig-Hyp > sin –pi..pi / cos –pi..pi / tan –pi..pi 198
16.20 G.20. Math > Trig-Hyp > tan –pi4..pi4 198
16.21 G.21. Math > Trig-Hyp > sinh / cosh / tanh 198
16.22 G.22. Memory > Latch / ILatch 198
16.23 G.23. Memory > z^-1 / z^-1 ndc 199
16.24 G.24. Memory > Read [] 199
Table of Contents
194
REAKTOR 5.5 - Core Reference - 8
16.25 G.25. Memory > Write [] 199
16.26 G.26. Modulation > x + a / Integer > Ix + a 200
16.27 G.27. Modulation > x * a / Integer > Ix * a 200
16.28 G.28. Modulation > x – a / Integer > Ix – a 200
16.29 G.29. Modulation > a – x / Integer > Ia – x 201
16.30 G.30. Modulation > x / a 201
16.31 G.31. Modulation > a / x 201
16.32 G.32. Modulation > xa + y 201
17 Appendix H. Standard Macros
17.1 H.1. Audio Mix-Amp > Amount 203
17.2 H.2. Audio Mix-Amp > Amp Mod 203
17.3 H.3. Audio Mix-Amp > Audio Mix 203
17.4 H.4. Audio Mix-Amp > Audio Relay 204
17.5 H.5. Audio Mix-Amp > Chain (amount) 204
17.6 H.6. Audio Mix-Amp > Chain (dB) 204
17.7 H.7. Audio Mix-Amp > Gain (dB) 205
17.8 H.8. Audio Mix-Amp > Invert 205
17.9 H.9. Audio Mix-Amp > Mixer 2 … 4 205
17.10 H.10. Audio Mix-Amp > Pan 206
17.11 H.11. Audio Mix-Amp > Ring-Amp Mod 206
17.12 H.12. Audio Mix-Amp > Stereo Amp 206
17.13 H.13. Audio Mix-Amp > Stereo Mixer 2 … 4 207
17.14 H.14. Audio Mix-Amp > VCA 207
17.15 H.15. Audio Mix-Amp > XFade (lin) 208
17.16 H.16. Audio Mix-Amp > XFade (par) 208
17.17 H.17. Audio Shaper > 1+2+3 Shaper 209
17.18 H.18. Audio Shaper > 3-1-2 Shaper 209
17.19 H.19. Audio Shaper > Broken Par Sat 209
Table of Contents
203
REAKTOR 5.5 - Core Reference - 9
17.20 H.20. Audio Shaper > Hyperbol Sat 210
17.21 H.21. Audio Shaper > Parabol Sat 210
17.22 H.22. Audio Shaper > Sine Shaper 4 / 8 210
17.23 H.23. Control > Ctl Amount 211
17.24 H.24. Control > Ctl Amp Mod 211
17.25 H.25. Control > Ctl Bi2Uni 211
17.26 H.26. Control > Ctl Chain 212
17.27 H.27. Control > Ctl Invert 212
17.28 H.28. Control > Ctl Mix 212
17.29 H.29. Control > Ctl Mixer 2 213
17.30 H.30. Control > Ctl Pan 213
17.31 H.31. Control > Ctl Relay 213
17.32 H.32. Control > Ctl XFade 214
17.33 H.33. Control > Par Ctl Shaper 214
17.34 H.34. Convert > dB2AF 214
17.35 H.35. Convert > dP2FF 215
17.36 H.36. Convert > logT2sec 215
17.37 H.37. Convert > ms2Hz 215
17.38 H.38. Convert > ms2sec 215
17.39 H.39. Convert > P2F 216
17.40 H.40. Convert > sec2Hz 216
17.41 H.41. Delay > 2 / 4 Tap Delay 4p 216
17.42 H.42. Delay > Delay 1p / 2p / 4p 217
17.43 H.43. Delay > Diff Delay 1p / 2p / 4p 217
17.44 H.44. Envelope > ADSR 218
17.45 H.45. Envelope > Env Follower 219
17.46 H.46. Envelope > Peak Detector 219
17.47 H.47. EQ > 6dB LP/HP EQ 219
Table of Contents
REAKTOR 5.5 - Core Reference - 10
17.48 H.48. EQ > 6dB LowShelf EQ 220
17.49 H.49. EQ > 6dB HighShelf EQ 220
17.50 H.50. EQ > Peak EQ 220
17.51 H.51. EQ > Static Filter > 1-pole static HP 221
17.52 H.52. EQ > Static Filter > 1-pole static HS 221
17.53 H.53. EQ > Static Filter > 1-pole static LP 221
17.54 H.54. EQ > Static Filter > 1-pole static LS 221
17.55 H.55. EQ > Static Filter > 2-pole static AP 222
17.56 H.56. EQ > Static Filter > 2-pole static BP 222
17.57 H.57. EQ > Static Filter > 2-pole static BP1 222
17.58 H.58. EQ > Static Filter > 2-pole static HP 223
17.59 H.59. EQ > Static Filter > 2-pole static HS 223
17.60 H.60. EQ > Static Filter > 2-pole static LP 223
17.61 H.61. EQ > Static Filter > 2-pole static LS 224
17.62 H.62. EQ > Static Filter > 2-pole static N 224
17.63 H.63. EQ > Static Filter > 2-pole static Pk 224
17.64 H.64. EQ > Static Filter > Integrator 225
17.65 H.65. Event Processing > Accumulator 225
17.66 H.66. Event Processing > Clk Div 225
17.67 H.67. Event Processing > Clk Gen 225
17.68 H.68. Event Processing > Clk Rate 226
17.69 H.69. Event Processing > Counter 226
17.70 H.70. Event Processing > Ctl2Gate 226
17.71 H.71. Event Processing > Dup Flt / IDup Flt 227
17.72 H.72. Event Processing > Impulse 227
17.73 H.73. Event Processing > Random 227
17.74 H.74. Event Processing > Separator / ISeparator 227
17.75 H.75. Event Processing > Thld Crossing 228
Table of Contents
REAKTOR 5.5 - Core Reference - 11
17.76 H.76. Event Processing > Value / IValue 228
17.77 H.77. LFO > MultiWave LFO 228
17.78 H.78. LFO > Par LFO 229
17.79 H.79. LFO > Random LFO 229
17.80 H.80. LFO > Rect LFO 229
17.81 H.81. LFO > Saw(down) LFO 230
17.82 H.82. LFO > Saw(up) LFO 230
17.83 H.83. LFO > Sine LFO 230
17.84 H.84. LFO > Tri LFO 231
17.85 H.85. Logic > AND 231
17.86 H.86. Logic > Flip Flop 231
17.87 H.87. Logic > Gate2L 231
17.88 H.88. Logic > GT / IGT 232
17.89 H.89. Logic > EQ 232
17.90 H.90. Logic > GE 232
17.91 H.91. Logic > L2Clock 232
17.92 H.92. Logic > L2Gate 233
17.93 H.93. Logic > NOT 233
17.94 H.94. Logic > OR 233
17.95 H.95. Logic > XOR 233
17.96 H.96. Logic > Schmitt Trigger 234
17.97 H.97. Oscillators > 4-Wave Mst 234
17.98 H.98. Oscillators > 4-Wave Slv 235
17.99 H.99. Oscillators > Binary Noise 235
17.100 H.100. Oscillators > Digital Noise 235
17.101 H.101. Oscillators > FM Op 236
17.102 H.102. Oscillators > Formant Osc 236
17.103 H.103. Oscillators > MultiWave Osc 236
Table of Contents
REAKTOR 5.5 - Core Reference - 12
17.104 H.104. Oscillators > Par Osc 237
17.105 H.105. Oscillators > Quad Osc 237
17.106 H.106. Oscillators > Sin Osc 237
17.107 H.107. Oscillators > Sub Osc 4 238
17.108 H.108. VCF > 2 Pole SV 238
17.109 H.109. VCF > 2 Pole SV C 238
17.110 H.110. VCF > 2 Pole SV (x3) S 239
17.111 H.111. VCF > 2 Pole SV T (S) 239
17.112 H.112. VCF > Diode Ladder 240
17.113 H.113. VCF > D/T Ladder 240
17.114 H.114. VCF > Ladder x3 240
18 Appendix I. Core Cell Library
18.1 I.1. Audio Shaper > 3-1-2 Shaper 242
18.2 I.2. Audio Shaper > Broken Par Sat 242
18.3 I.3. Audio Shaper > Hyperbol Sat 243
18.4 I.4. Audio Shaper > Parabol Sat 243
18.5 I.5. Audio Shaper > Sine Shaper 4/8 243
18.6 I.6. Control > ADSR 244
18.7 I.7. Control > Env Follower 245
18.8 I.8. Control > Flip Flop 245
18.9 I.9. Control > MultiWave LFO 245
18.10 I.10. Control > Par Ctl Shaper 246
18.11 I.11. Control > Schmitt Trigger 246
18.12 I.12. Control > Sine LFO 247
18.13 I.13. Delay > 2/4 Tap Delay 4p 247
18.14 I.14. Delay > Delay 4p 247
18.15 I.15. Delay > Diff Delay 4p 248
18.16 I.16. EQ > 6dB LP/HP EQ 248
Table of Contents
242
REAKTOR 5.5 - Core Reference - 13
18.17 I.17. EQ > HighShelf EQ 248
18.18 I.18. EQ > LowShelf EQ 249
18.19 I.19. EQ > Peak EQ 249
18.20 I.20. EQ > Static Filter > 1-pole static HP 249
18.21 I.21. EQ > Static Filter > 1-pole static HS 250
18.22 I.22. EQ > Static Filter > 1-pole static LP 250
18.23 I.23. EQ > Static Filter > 1-pole static LS 250
18.24 I.24. EQ > Static Filter > 2-pole static AP 251
18.25 I.25. EQ > Static Filter > 2-pole static BP 251
18.26 I.26. EQ > Static Filter > 2-pole static BP1 251
18.27 I.27. EQ > Static Filter > 2-pole static HP 252
18.28 I.28. EQ > Static Filter > 2-pole static HS 252
18.29 I.29. EQ > Static Filter > 2-pole static LP 252
18.30 I.30. EQ > Static Filter > 2-pole static LS 253
18.31 I.31. EQ > Static Filter > 2-pole static N 253
18.32 I.32. EQ > Static Filter > 2-pole static Pk 253
18.33 I.33. Oscillator > 4-Wave Mst 254
18.34 I.34. Oscillator > 4-Wave Slv 254
18.35 I.35. Oscillator > Digital Noise 255
18.36 I.36. Oscillator > FM Op 255
18.37 I.37. Oscillator > Formant Osc 256
18.38 I.38. Oscillator > Impulse 256
18.39 I.39. Oscillator > MultiWave Osc 256
18.40 I.40. Oscillator > Quad Osc 257
18.41 I.41. Oscillator > Sub Osc 257
18.42 I.42. VCF > 2 Pole SV C 258
18.43 I.43. VCF > 2 Pole SV T 258
18.44 I.44. VCF > 2 Pole SV x3 S 259
Table of Contents
REAKTOR 5.5 - Core Reference - 14
18.45 I.45. VCF > Diode Ladder 259
18.46 I.46. VCF > D/T Ladder 260
18.47 I.47. VCF > Ladder x3 260
Table of Contents
REAKTOR 5.5 - Core Reference - 15

First Steps in Reaktor Core

1 First Steps in Reaktor Core

1.1 What is Reaktor Core

Reaktor Core is a new level of functionality within Reaktor with a new and different set of features. Because there is also an older level of functionality, we will hereinafter refer to these two levels as the “primary-level structure” we will mean the structure of an instrument or macro, but not the structure of an ensemble. The features of Reaktor Core are not directly compatible with those of the primary level, so some interfacing is required between them, and that comes in the form of cells exist inside primary-level structures, and they look similar and behave similarly to pri mary-level built-in modules. Here is an example structure, using a HighShelf EQ core cell, which differs from the primary-level built-in module version in that it has frequency and boost controls:
core level and the primary level, respectively. Also when we say
core cells. Core
Inside of core cells are Reaktor Core structures. Those provide an efficient way to imple ment custom low-level DSP functionality as well as to build larger-scale signal-processing structures using such functionality. We will take a detailed look at these structures later. Although one of the main purposes of Reaktor Core is to build low level DSP structures, it is not limited to that. For users with little DSP programming experience, we have provided a library of pre-built modules, which you can connect inside core structures, just as you do with ordinary modules and macros in primary-level structures. We have also provided you with a library of pre-built core cells, which are immediately available for you to use in pri mary-level structures.
REAKTOR 5.5 - Core Reference - 16
First Steps in Reaktor Core

Using Core Cells

In the future, Native Instruments will put less emphasis on creating new primary-level mod ules. Instead, we will use our new Reaktor Core technology and provide them in the form of core cells. For example, you will already find a set of new filters, envelopes, effects, and so on in the core cell library.
1.2 Using Core Cells
The core cell library can be accessed from primary-level structures by right-clicking on the background and using the Core Cell submenu:
As you can see, there are all different kinds of core cells; they can be used in the same way as primary-level built-in modules.
An important limitation of core cells is that you are not allowed to use them inside event loops. Any event loop occurring through a core cell will be blocked by Reaktor.
You can also insert core cells that are not in the library. To do that, use the Load… com mand from the Core Cell menu:
REAKTOR 5.5 - Core Reference - 17
First Steps in Reaktor Core
Using Core Cells
You may also want to save core cells you’ve created or modified, so that you can load them into other structures. To save a core cell, right-click on it and select Save Core Cell As:
REAKTOR 5.5 - Core Reference - 18
First Steps in Reaktor Core
Using Core Cells
Rather than using the Load… command, you can have your core cells appear in the menu by putting them into the Core Cells subdirectory of your user library folder. Better still, you can further organize them into subgroups. Here’s an example:
“My Documents\Reaktor 5” is the user library folder in this example. On your computer there may be a different path, depending on the choice you’ve made during installation and any changes you’ve made in Reaktor’s preferences. Inside the user library folder there’s a folder named “Core Cells”. (Create it manually if it doesn’t exist.) Inside the Core Cells folder, notice the folder structure consisting of the Effects, Filters, and Oscillators folders. Inside those folders are core cell files that will be displayed in the user part of the Core Cell menu:
REAKTOR 5.5 - Core Reference - 19
First Steps in Reaktor Core

Using Core Cells in a Real Example

The menu contents are scanned once during Reaktor startup, so after putting new files in to these folders, you should restart Reaktor. Empty folders are not displayed in the menu; a folder must contain some files to be dis played. Under no circumstances should you put your own files into the system library. The system library may be changed or even completely replaced when installing updates, in which case your files will be lost. The user library is the right place for any content that is not included in the software itself.
1.3
Using Core Cells in a Real Example
Here we are going to take a Reaktor instrument built using only primary-level modules and modify it by putting in a few core cells. In the Core Tutorial Examples folder in your Reak tor installation, find the One Osc.ens ensemble and open it. This ensemble consists of on ly one instrument, which has the internal structure shown:
REAKTOR 5.5 - Core Reference - 20
First Steps in Reaktor Core
Using Core Cells in a Real Example
As you can see this is a very simple subtractive synthesizer consisting of one oscillator, one filter and one envelope. We are going to replace the oscillator with a different, more powerful one. Right-click on the background and select Core Cell > Oscillator > MultiWave Osc:
The most important feature of this oscillator is that it simultaneously provides different an alog waveforms that are locked in phase. We are going to replace the Sawtooth oscillator with the MultiWave Osc and use a mix of its waveforms instead of a single sawtooth wave form. Fortunately, there’s already a mixer macro available from Insert Macro > Classic Modular > 02-Mixer Amp > Mixer– Simple–Mono:
REAKTOR 5.5 - Core Reference - 21
First Steps in Reaktor Core
Using Core Cells in a Real Example
Connect the mixer and the oscillator together and use their combination to replace the sawtooth oscillator:
Switch to the panel view. Now you can use the four faders of the mixer to vary the wave form mix. Let’s do one more modification to the instrument and add a Reaktor Core-based chorus ef fect. We say Reaktor Core based, because although the chorus itself is built as a core cell, the part containing panel controls for this chorus is still built using the primary-level fea tures. That’s because at this time Reaktor Core structures cannot have their own control panels – the panels have to be built on the primary level. Select Insert Macro > Building Blocks > Effects > SE-IV Chorus and insert it after the Voice Combiner module:
If you look inside the chorus you can see the chorus core cell and the panel controls:
REAKTOR 5.5 - Core Reference - 22
First Steps in Reaktor Core

Basic Editing of Core Cells

1.4 Basic Editing of Core Cells
Now we are about to learn a few things about editing core cells. We are going to start with something simple: modifying an existing core cell to your particular needs. First, double-click the MultiWave Osc to go inside:
REAKTOR 5.5 - Core Reference - 23
First Steps in Reaktor Core
Basic Editing of Core Cells
What you see now is a Reaktor Core structure. The three areas separated by vertical lines are for three different kinds of modules: inputs (on the left), outputs (on the right), and normal modules (center). Whereas normal modules can move in all directions, the inputs and outputs can only be moved vertically, and their relative order matches the order in which they appear outside. So, you can easily rearrange their outside order by moving them around. Try moving the FM input below the PW input:
You can double-click the background now to ascend to the outside, primary-level structure and see the changed port order:
Now go back to the core level and restore the original port order:
As you have probably already noticed, if you move modules around, the three areas of the core structure automatically grow to accommodate all modules inside them. However, they do not automatically shrink, which can lead to these areas sometimes becoming unneces sarily large:
REAKTOR 5.5 - Core Reference - 24
First Steps in Reaktor Core
Basic Editing of Core Cells
You can shrink them back by right-clicking on the background and selecting Compact Board command:
Now that we have learned to move the things around and rearrange the port order of a core cell, let’s try a few more options. For a core cell that has audio outputs it’s possible to switch the type of its inputs between audio and event (a more detailed explanation can be found later in this manual). In the above example, we used a MultiWave Osc module, all of whose inputs and outputs are au
REAKTOR 5.5 - Core Reference - 25
First Steps in Reaktor Core
Basic Editing of Core Cells
dio. However, in this example we don’t really need them as audio, because the only thing connected to the oscillator is a pitch knob. Wouldn’t it be more CPU efficient to have at least some of the ports set to event type? The obvious answer is, “yes, it would.” Here’s how to do that. Changing both P and PM inputs to event mode should produce the largest CPU improve ment. To do that double-click on the P port module to open its properties window:
Switch the properties window to the function page, if necessary, by clicking on the cog wheel tab. You should now see the Signal Mode property:
Change it to event. Note how the large dot at the left of the input module changes from black to red indicating that the input is now in event mode (it’s more easily visible after you deselect the port – just click elsewhere):
REAKTOR 5.5 - Core Reference - 26
First Steps in Reaktor Core
Basic Editing of Core Cells
Now click on the PM input to select it, and change it to event mode, too. If you want, you can change the two remaining inputs to event mode as well. Finally, double-click the structure background to return to the primary level and observe that the port colors have changed to red and the CPU usage has gone down.
Sometimes it doesn’t make sense to switch a port from one type to another. For example, it doesn’t make sense to switch an input that receives a real audio signal (meaning real audio, not just an audio-rate control signal like an envelope) to an event rate. In some cas es such switching could even ruin the functionality of the module. Going in the other di rection, it doesn’t make sense to change an event input that is really event sensitive, such as an envelope’s event trigger input (for example, gate inputs of Reaktor primary-level en velopes). If you change such an input to audio, it will no longer work correctly. In addition to cases in which port-type switching obviously does not make sense there may be cases in which it does make sense, but in which the modules will not work correctly if you switch their port types. Such cases are quite special, although they can also result from mistakes in the implementation or design of the module. Generally, port-type switch ing should work; hence the following switching rule:
In a well designed core cell, an audio-rate control input can typically be switched to event mode without any problem. An event input can be switched to audio only if it doesn’t have a trigger (or other event-sensitive) function.
Another way to save CPU is to disconnect the outputs that you don’t need, thereby deacti vating unused parts of the Reaktor Core structure. You have to do that from inside the structure – outside connections do not have any effect on deactivating the core structure elements. Suppose in our example we decide that we only need the sawtooth and pulse outputs. We can lower the CPU usage by going inside the MultiWave Osc and disconnecting the unused outputs. Disconnecting is simple in Reaktor Core, you click on the input port of the con
REAKTOR 5.5 - Core Reference - 27
First Steps in Reaktor Core
Basic Editing of Core Cells
nection, drag the mouse to the any empty part of the background and release it. For exam ple, click on the input port of the Tri output and drag the mouse into empty space on the background.
There’s another way to delete a connection. Click on the wire between the sine output of the MultiWave Osc and Sin output of the core cell, so that it gets selected (you can tell that it’s selected by its blue color):
Now you can press the Delete key to delete the wire:
After you deleted both wires, the CPU meter should go down a little more. If you change your mind, you can reactivate the outputs by clicking on either the input or the output that you want to reconnect and dragging the mouse to the other port. For exam ple, click on the Tri output of the MultiWave Osc and drag to the input of the Tri output module. The connection is back:
REAKTOR 5.5 - Core Reference - 28
First Steps in Reaktor Core
Basic Editing of Core Cells
Of course, numerous fine-tuning adjustments can be made to core cells. You will learn about many more options as you proceed through this manual.
REAKTOR 5.5 - Core Reference - 29

Getting Into Reaktor Core

2 Getting Into Reaktor Core

2.1 Event and Audio Core Cells

Core cells exist in two flavors: Event and Audio. Event core cells can receive only primary­level event signals at their inputs and produce only primary-level event signals at their out puts in response to such input events. Audio core cells can receive both event and audio signals at their inputs but provide only audio outputs:
Flavor Înputs Outputs Clock Src
Event Event Event Disabled
Audio Event/Audio Audio Enabled
Therefore audio cells can implement oscillators, filters, envelopes, effects and other stuff, while event cells are suitable only for event processing tasks. The HighShelf EQ and MultiWave Osc modules that you are already familiar with are ex amples of audio core cells (you can tell that by the fact that they have audio outputs):
And here is an example of an event core cell:
This module is a parabolic shaper for control signals, which can be used to implement ve locity curves or LFO signal shaping, for example.
REAKTOR 5.5 - Core Reference - 30
Loading...
+ 231 hidden pages