Dynamic orchestration

TOR / Modules / Assisted Orchestration / Orchidea / Tutorials / What is assisted orchestration


Orchidea is able to perform dynamic orchestration, in order to follow a time evolving target. The basic principle is to cut a dynamic target into static segments and reconnect them after the orchestration. The current segmentation model uses thresholds and timegates on specific spectral features to determine onsets. Timegates are specified in seconds, thresholds are absolute values between 0 and 1.

Use threshold 0 to segment at any minimal spectral variation and increase it to reduce the sensitivity. If threshold is > 1 than there will be no onsets and target is considered static. The values for timegates depend on the specific problem.

There are two different policies to segment the target (attribute @segmentation): frames and flux. The former will produce segments of equal length (called frames) while the latter will use a specific 'novelty' measure to cut the target in significant chunks. In most of the cases you may want to use the second policy, the flux.

The output of the segmentation stage, is a set of segments that are treated as independent orchestration targets; a connection model is applied after orchestration (see below)


Dynamic Orchestration, Example 1

In order to speed up the search for dynamic orchestrations, we suggest to reduce the number of epochs and the population size to 100. Moreover, it is a good practice to reduce the number of solutions stored (or even to avoid storing them altogether and just save the final connection.

 

To maximize the common notes/instruments between segments, a continuity model is implemented after the independent orchestration of each segment: if an instrument persists with the same note across two or more segments, all notes are connected. This is an important features of the orchidea toolbox.

 
 

There are two policies to connect the solutions in time (attribute @connection): best and closest. The former will connect the best solution of each segment (the solution that best matches the target). The latter, instead, will connect the solutions that minimize movements for each instrument (for example by keeping the same instrument and the same note across segments).

 
 

Dynamic Orchestration, Example 2: A strange target

Previous
Previous

Static orchestration

Next
Next

Orchidea Video Tutorials