Polyphonic Blocks - Example

Bento Box Oscillator Converted to Poly

(11 Votes)
1.0 (Updated 9 years ago)
13.3MB
October 23, 2015
Reaktor 6
Other Test Area

DESCRIPTION

This upload is a simple proof of concept showing how a module conforming to the Blocks Framework can be made polyphonic. Once created, the code for a polyphonic Block can be made mono simply by setting the number of voices to 1.

The only changes made from the original code is to the Panel display elements - this means in theory we could update the Blocks Template files so that anything made with them could be easily switched to polyphonic simply by encapsulating the code in a macro rather than an instrument.

A video tutorial is coming soon to Reaktortutorials.com

Here is a quick overview of steps:

- Copy entire Block code and place it inside a macro instead of an instrument
- Select all code, right click and choose the 'set selection to poly' command
- Set MOD ASSIGN macro to monophonic
- Set all controls that don't have modulation (IE buttons) to mono
- Set all LABEL/VALUE macros inside modulation knobs to mono
- Replace all mod rings with poly displays (check the video for a full explanation)
- Set everything except the RING SHOW macro within any Freq/Pitch macro to mono.
- In PANEL macro, run A and B modulation signals thru an audio voice combiner before feeding them into the MOD ASSIGN macro.

by salamanderanagram, 2015

COMMENTS  (7)

Omar Misa
9 years ago
Thanks for this information.
Joey Valizan
9 years ago
Still, I'd be very curious about how you would implement it. The main issue I'm finding with my voice assignment process is lingering values from the last iteration of voice assignment. I'm currently using the gate to increment the voice selected number and so far this causes this issue.
Joey Valizan
9 years ago
Still, I'd be very curious about how you would implement it. The main issue I'm finding with my voice assignment process is lingering values from the last iteration of voice assignment. I'm currently using the gate to increment the voice selected number and so far this causes this issue.
Joey Valizan
9 years ago
Still, I'd be very curious about how you would implement it. The main issue I'm finding with my voice assignment process is lingering values from the last iteration of voice assignment. I'm currently using the gate to increment the voice selected number and so far this causes this issue.
salamanderanagram
9 years ago
Joey I don't think that's worth doing in this instance, but the way I've made a mono to poly converter that matches reaktor in the past has been to create a timer for each voice that counts the amount of time since a note was last released on that voice. when you get a new note, you then route it to the voice that has been off the longest.
Joey Valizan
9 years ago
The thing to do now would be to make this instrument accept inputs, particularly from monophonic blocks. To do this you need make those mono inputs into poly, which can be achieved by using a 'to voice' module to switch voices at some kind of interval. As your example shows, a polyphonic oscillator would require an envelope. Otherwise, you will end up with a cluster of pitches. I've been messing with this too and getting a mono-to poly converter to work just like reaktors' polyphony system has been very challenging..
Jonathan Canupp
9 years ago
Excellent work, Mr. Anagram!
now