CCTV

Generative, self-composing and looping minimalistic piano player.

Like CCTV cameras, you can only record and observe. You can’t change what’s recorded, you can only influence how you’re viewing things; speed footage up/down, zoom in or switch to another angle, or maybe filter out some color or brightness. Oh, and you can do all this with MIDI CC values, hence… CCTV.

You can record short fragments of random CV into a few CV loopers, the patch then extracts notes, gates and velocity-info from those loopers and generates its own repetitive little patterns. By slowly increasing (or modulating) the playback speed of one CV Looper (with note-info) relative to the others (with gate- and velocity-info), the melodies slowly shift and evolve. You can also modulate the spread of the notes and the velocity spread, adding a lot of dynamic variation. The synth itself consists of a 2-voice piano-like synth, and a bass-voice and accent-voice that play musically related accompanying notes to the main melody, with controls for muting and/or changing their rhythmic relation to the main melody.

=====

[OVERVIEW]
-Input/Output: Stereo in/Stereo out (or Mono in/Stereo out)
-CPU load: Around 80%
-Build: Initial version built with firmware 2.0
-MIDI: Controls are set to CCs (I use channels 21/36, see CONTROLS section for details).

[REVISIONS]
1.1: Added MIDI CCs and a second CV looper to blend between.
1.0: Initial patch.

[PATCH STRUCTURE]
Left stomp triggers the REC button of 4x CV loopers, each with their own random module going into it. The first two loopers go into a multiplier-section which blends between them (so you can morph back-and-forth between two melodies) and the resulting CV signal goes into two Sample&Hold modules, which go into a quantizer. The 3rd CV looper goes into a comparator so it extracts ‘gate’ signals from the recorded random CV. The gate goes through a flip-flop and then trigger the two S&H modules and their corresponding ADSR envelopes, basically alternating between the two voices. The final CV looper determines the note velocity, and also goes into two S&H modules that are triggered by the alternating gates. The ADSR envelopes are multiplied with the velocity S&H values to create a feeling of variable note velocity.

The synth simply consists of 2 sine oscillators, with a little pulse width offset, no filter required, then into a reverb lite; with a short attack and medium release it sounds pretty much like a piano! There is also a “bass” and an “accent” oscillator, both are triangle waves (=a bit more harmonics to make them stand out in the low end), and they are fed the same note values as the main voices but tuned lower and triggered only every X-gates. This provides a nice rhythmic accompaniment and is highly dependent on what gate-patterns are extracted from the recorded CV loops.
The rest of the patch is just User Interface controls and some modulation options.

=====

[CONTROLS]
All the main controls are on PAGE0 and are labeled and starred (see below for a “Picture Manual” in the comments). The Stereo Output module with gain parameter and some additional controls are on PAGE1.

REC (hold to record new random CV data)
4-or-3 STEP (toggle 4 or 3 step variation for bass and accent notes)
MIX (sets the balance between dry and wet sound; goes fully wet; cc32)
RESEED (press to start reading note information from new point in the CV loop)
PLAY/PAUSE (press to pause or play main melody)
L1-VS-L2 (blends between 2 CV loopers for the main melody; cc29)

SPEED (sets the playback speed of all loopers; cc21)
GATES (sets the sensitivity of the gate CV loop; lower value generally leads to less gates; cc22)
MORPH (offsets the playback speed of the melody loops relative to the gate loop; cc23)
SPREAD (sets the spread of notes; higher value means the melody can reach higher notes; cc24)
MOD MORPH (toggles slow modulation of the MORH and SPREAD parameters)

VELOCITY (offsets the velocity for the main melody; cc25)
VEL. BASS (offsets the velocity for bass and accent notes; cc26)
DECAY (sets the decay length of the ADSR envelope; cc27)
REVERB (sets the reverb decay and mix; cc28)
MOD DYNAMICS (toggles slow modulation of the VELOCITY and B. VEL parameters)

LEFT stomp = same as REC pushbutton.
MID stomp = same as RE-SEED pushbutton.
RIGHT stomp = same as PLAY-PAUSE pushbutton.

Additional controls on PAGE1:

MOD SPREAD DEPTH (sets the depth* of SPREAD and MORPH modulation; cc30)
MOD DYNAMICS DEPTH (sets the depth* of VELOCITY and VEL. BASS modulation; cc31)
(*modulation speed is set by 3 LFOs on the “MOD” page)

SCALE (toggles between Major, Minor, M-natural; since ‘observed scale’ is dependent on root note – and root note is purely random here – the ‘observed scale’ is more-or-less set by trial-and-error)
TRANSPOSE (sets the overall tuning of the patch)
STEREO SPREAD (sets the panning spread; low notes on left, higher notes on right)

=====

[TIPS/TRICKS]
>>> Hit the left stomp to record some random CV. If you like it, start tweaking values. If not, record something new.

>>> If the loop is too stagnant, either adjust the MORPH control (the loop will begin to evolve), or enable the left MOD toggle (will will modulate both MORPH and SPREAD back and forth).

>>> For best minimalism-results, record a VERY short burst (almost a ‘tap’ is enough), or for more experimental and weirder stuff record for several seconds.

[THOUGHTS/IDEAS/PLANS]
I’m really proud of this one; although the source CV info for this patch is 100% random, it still sounds so very musical! Flurries of notes resurface periodically, gentle passages alternate with louder ones… This whole thing just breathes Reich, Glass or Ten Holt, and to me it’s so cool that a seemingly sterile computing platform can ‘compose’ such surprisingly human-sounding music. One of my best generative patches yet I think!

There’s no real future plans for this one; I thought about a potential MIDI sync function, but that’s a challenge with how it extracts Gates from the CV loops. Maybe it’ll evolve naturally later on, or maybe I’ll make a variation with more ‘synthy’ sounding voices…

If there’s any bugs/questions/remarks/requests or suggestions for improvement, please let me know!
Enjoy!

(image: Alberto Seveso)

One comments on “CCTV
  • Leave a Reply

      1576 PM
    • Platform:
    • Category: Effect Sequencer Sound Synthesizer
    • Revision: 1.1
    • License: Do What The F*ck You Want To Public License
    • Modified: 3 years ago
    • Views: 436
      Likes: 10
      Downloads: 976
    Download
    Chat