Skip to content

Workflow

Jean Bresson edited this page Mar 12, 2019 · 11 revisions

Download a simple example patch here

Video demo: https://youtu.be/XVEllB0TtVs

Load a CHORD-SEQ

Just connect the first output (self) of the chord-seq you want to quantify to the chord-seq input of the RQ box (see example patch just above), then evaluate it (unlock/b the box beforehand if necesssary).

The input chord-seq should be monophonic. That means that the chords and notes inside the chord-seq should not overlap (if they do, the algorithm will remove the overlap). But the system will perform correctly when the chord-seq contains chord objects that contain more than one note. If the notes inside a chord are not all of same duration, the algorithm will consider the chord's duration to be the duration of the longest note.

Segmment the input

To segment the input, you can then either :

  • Provide a list of segmentation marks as an input to RQ before evaluating it
  • Run an automatic segmentation algorithm by clicking the Segmentation button
  • Place the segmentation marks directly in the chord-seq view (either by selecting a chord and hit S, or with CMD+click)

Segmentation marks can be placed anywhere, not necessarily on a chord. The "Slur" field indicates if the last note of the previous segment overlaps with the current, and if so, displays the amount of overlap (in ms).

The segments should not be too long (about the size of a bar), and should correspond to constant-tempo regions for best results. Each segment will correspond to a bar in the final transcription.

Quantify

Click the Quantify button to run the algorithm on each segment.

Computations can take a long time when the segments are long, or when the schema is big.

See How to make it faster.

Select solutions

Select in the k-best panel the transcriptions you like.

To display the right panel, tick the "Show solutions" box.

To navigate through the solutions you can either :

  • Click on the k-best panel, and use the arrow keys (up-down to change solutions, left-right to change segments).
  • Double-click a particular segment in the chord-seq panel or in the editor panel to display its transcriptions in the k-best panel, and double-click a transcription in this panel.

The chosen solution will be automatically updated in the editor view.

Edit the transcription

Double clicking a chord or a group will display a list of other possible transcriptions for this chord/group. You can then choose a solution from this list by double-clicking it. You can also compute more solutions by clicking More.

You can also replace a subtree by any valid OM rhythm tree by selecting a chord or group, press "e" and type the subtree you want.

Be careful of the cursor mode you are in : chord to select a single chord, group to select a sub-tree.

Edition is only available when in "Edit mode".

Display parameters

  • The Edit/Render switch allows to display the solution in two modes : Edit mode, where the display might not be ideal, but edition of the solution is permitted, and Render mode, where the display is prettier, but edition is not permitted.

  • The Color mode option displays with a color code (red : bad, green : good) the precision of the current transcription for the selected chord or group in the editor view.

  • The Show pulses option displays in the chord-seq view the quantization grid on which onsets are aligned.

  • The Show solutions switch displays the k-best panel on the right.

Get the transcription out

To get the final transcription as an independent VOICE object, use the function get-voice, which takes the RQ object as input, and outputs a VOICE.

Get-voice has an optional input to state if you want the transcription as displayed in Edition mode or in Render mode (default : Render).

Do not forget to block the RQ box before evaluating it again, otherwise you will lose your work !

Note: the function get-k-best-list exports one or multiple transcriptions among those in the k-best panel. See internal documentation (D) for more information.