

SOLAR LUNE SUNVOX GENERATOR
new_module ( slot, SunVox :: Modules :: Synths :: GENERATOR ) carrier = SunVox. new_module ( slot, SunVox :: Modules :: Synths :: INPUT ) generator = SunVox. open_slot ( SunVox :: Slot :: One ) input = SunVox. start_engine ( config : "audiodriver=alsa|audiodevice=hw:0,0|audiodevice_in=hw:2,0", no_debug_output : true, one_thread : false ) slot = SunVox. Require "libsunvox" # Set the audiodevice and audiodevice_in to your device then speak into your microphone :) SunVox. send_event ( slot, 3, SunVox :: Note :: Off, 0, generator ) sleep 1 end end sleep send_event ( slot, 3, scale, 0, generator ) sleep 1 SunVox. send_event ( slot, 2, SunVox :: Note :: Off, 0, generator ) sleep 1 end note = rand ( scale_size ) SunVox. send_event ( slot, 1, SunVox :: Note :: Off, 0, generator ) SunVox. send_event ( slot, 0, SunVox :: Note :: Off, 0, generator ) SunVox. send_event ( slot, 2, scale, 0, generator ) sleep 0.75 SunVox. send_event ( slot, 1, scale, 0, generator ) sleep 0.25 / 2 SunVox. send_event ( slot, 0, scale, 0, generator ) sleep 0.25 / 2 SunVox. times do note = rand ( scale_size ) SunVox. make ( SunVox :: Note :: F4, SunVox :: Scales :: MINOR_HEXATONIC ) 1_000_000. make ( SunVox :: Note :: F3, SunVox :: Scales :: MINOR_HEXATONIC ) scale_size = scale. send_event ( slot, 0, SunVox :: Note :: FSharp1, 0, drum_synth ) sleep 0.25 end end spawn do scale = SunVox :: Scales. send_event ( slot, 0, SunVox :: Note :: FSharp1, 0, drum_synth ) sleep 0.25 SunVox. send_event ( slot, 0, SunVox :: Note :: FSharp1, 0, drum_synth ) sleep 0.5 end SunVox. send_event ( slot, 0, SunVox :: Note :: D5, 0, drum_synth ) sleep 0.5 end 2. send_event ( slot, 0, SunVox :: Note :: C5, 0, drum_synth ) sleep 0.25 else SunVox. send_event ( slot, 0, SunVox :: Note :: C5, 0, drum_synth ) sleep 0.25 SunVox. send_event ( slot, 0, SunVox :: Note :: None, 0, generator, ctl : 4, ctl_value : 0x1000 ) SunVox. send_event ( slot, 0, SunVox :: Note :: None, 0, generator, ctl : 2, ctl_value : 0 ) # Change Attack and release SunVox. connect_module ( slot, drum_synth, reverb ) # Set up the sound settings # Change waveform to noise SunVox. connect_module ( slot, reverb, SunVox :: OUTPUT_MODULE ) SunVox. connect_module ( slot, generator, reverb ) SunVox. new_module ( slot, SunVox :: Modules :: Synths :: DRUM_SYNTH ) # Connect the module to the output SunVox. new_module ( slot, SunVox :: Modules :: Effects :: REVERB ) drum_synth = SunVox. new_module ( slot, SunVox :: Modules :: Synths :: GENERATOR ) reverb = SunVox. open_slot ( SunVox :: Slot :: One ) generator = SunVox. start_engine ( config : "audiodevice=hw:0,0", no_debug_output : true, one_thread : false ) slot = SunVox. send_event ( slot, 0, SunVox :: Note :: Off, 0, generator_number ) sleep 3 end sleep send_event ( slot, 0, note, 0, generator_number ) sleep 0.3 SunVox. send_event ( slot, 0, SunVox :: Note :: None, 0, generator_number, ctl : 5, ctl_value : release ) # Send a note SunVox. send_event ( slot, 0, SunVox :: Note :: None, 0, generator_number, ctl : 4, ctl_value : attack ) # Change Release SunVox. times do attack_low = 0xb80 attack_high = 0x1540 release_low = 0x31c0 release_high = 0圆000 attack = Random.

send_event ( slot, 0, SunVox :: Note :: None, 0, generator_number, ctl : 2, ctl_value : 0 ) 100. connect_module ( slot, reverb_number, SunVox :: OUTPUT_MODULE ) # Set up the sound settings # Change waveform to noise SunVox. connect_module ( slot, generator_number, reverb_number ) SunVox. new_module ( slot, SunVox :: Modules :: Effects :: REVERB ) # Connect the module to the output SunVox. new_module ( slot, SunVox :: Modules :: Synths :: GENERATOR ) reverb_number = SunVox. open_slot ( SunVox :: Slot :: One ) generator_number = SunVox. start_engine ( no_debug_output : true, one_thread : true ) slot = SunVox.
