Saturday, June 7, 2014

Teleology in Algorithmic Composition Software

"Also characteristic... is Schenker's emphasis on organic and teleological (purpose and goal rather than cause and effect) interpretations of the world around him." - 
- http://www.schenkerguide.com/historicalcontext.html


This is closely connected with Schenker's "organicism":


Schenker suggested various ways in which music could be understood as organic:
• he proposed that music can be understood as growing and developing in successive layers from a simple seed - the fundamental structure 
• he suggested that the fundamental descent spanned and generated a whole work and thus helped make it a coherent whole 
• he showed how works were unified by patterns that recurred on different layers of the piece - known as parallelisms 
• his explanation of how tonal music is derived from the harmonic series explicitly refers to music's natural tendency for growth
- http://www.schenkerguide.com/organicism.html


'music is never comparable to mathematics or architecture, but only to language, a kind of tonal language' (Heinrich Schenker - Free Composition, p. 5)


(concerning the ideas of Rupert Sheldrake) 
"Organisms are clearly more than just complex machines: no machine has ever been known to grow spontaneously from a machine egg or to regenerate after damage! Unlike machines, organisms are more than the sum of their parts; there is something within them that is holistic and purposive, directing their development toward certain goals."
- http://www.theosophy-nw.org/theosnw/science/prat-shl.htm



The Transformation Engine runs like most computer software as a "cause and effect" engine. The chord changes - a cause - and therefore the pitch choices of the diminutions change (via the mode tables.)

How to build a more "goal-oriented" system?

1) Perhaps use the voice-pitch from the next chord while creating diminutions based on the current chord? Would need to separate 

atomadr hsstruct LOAD.VOICE#s
from  hsstruct dup +ModeTable.00 LOAD.MT.HARMONIC    \ close to verbatim
hsstruct dup +ModeTable.01 LOAD.MT.MELODIC     \ most generous
hsstruct dup +ModeTable.02 LOAD.MT.VERBATIM    \ used to be LOAD.MT.GTR
etc. 
in INSTALL.CHORD.INTO.HARMONIC.STRUCTURE



2) A "pre-influence" parameter that could be set per chord, to adjust the when it comes into effect before the chord actually changes.

Monday, March 3, 2014

Plogue Bidule (0.9734) - broken Window Behaviour on OSX 10.9



Bidule Preferences - stored in ~/Library/Preferences/
in the form of two files: com.plogue.bidule.plist and  com.plogue.bidulewx

file1=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/StringOrch_V6_Template-001.bidule
file2=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/PINK_NOISE_SURROUND.bidule
file3=/Volumes/OSX 10.7.5 HDD/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/Scrooge2012Preset.bidule
file4=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/HarmoniaDemoOCADtest02.bidule
file5=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/HarmoniaDemoOCADtest01.bidule
file6=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/EMBLEMS HARMONIC SYNTH v002.bidule
file7=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/REAKTOR HARMONIC SYNTH QUAD v008.bidule
file8=/Applications/Plogue Bidule 0.9726/User_Layouts _BD/Add PB to BC.bidule
file9=/Applications/Plogue Bidule 0.9726/User_Layouts _BD/Scrooge2012Preset.bidule
[History]
760105261_1635085685_1315531572_0_2=97
1464424009_1635085685_1464422482_0_2=53
MidiInput_24=1
AudioDuplex_3=7
MidiInput_47=1
MidiInput_0=113
MidiInput_1=118
com.plogue.MIDIMonitor2=75
com.plogue.MonoITUMixer16=76
com.plogue.AudioFileOutput_6=58
com.plogue.MidiSplitter=407
1094800160_1635085685_1130918449_0_2=334
com.plogue.MIDIPCToParam=41
com.plogue.MIDIMessageFilter=57
com.plogue.MonoMixer4=36
MidiInput_2=70
MidiInput_6=44
MidiInput_4=74
MidiInput_5=59
com.plogue.MIDIToValue=10
1802721110_1635083896_1129730357_5_5=93
AudioOutput_7=7
MidiInput_3=54
com.plogue.AudioFileOutput_2=34
com.plogue.StereoMixer4=14
com.plogue.MonoITUMixer8=51
AudioOutput_1=5
AudioOutput_0=1
AudioDuplex_0=90
com.plogue.MonoMixer8=11
760105261_1635085685_1315531572_0_4=42
AudioOutput_6=6
AudioOutput_4=28
com.plogue.Comment=95
1245791051=7
1094800160_1635085685_1397970020_0_2=3
MidiInput_23=7
MidiInput_19=4
AudioOutput_5=25
1197560402_1635085685_1195463233_0_2=2
1094800160_1635085685_1397969969_0_2=61
1197560402_1635085685_1195463233_0_4=1
760105261_1635085685_1315530296_0_2=1
1094800160_1635085685_1413559379_0_2=7
1281718377_1635083896_1281584433_2_2=1
1802721110_1635083896_1464087117_1_1=10
1802721110_1635083896_1128415576_1_2=1
1280602733=3
com.plogue.MidiChannelFilter=2
1314222953_1635085685_1299145836_0_2=12
1802721110_1635083896_1398030675_2_2=11
1802721110_1635083896_1127236947_2_2=2
1397978229=12
1802721110_1635083896_1129730358_6_6=71
1802721110_1635083896_1414419032_1_2=1
1802721110_1635083896_1195593293_1_1=124
1430808152_1635085685_1397572658_0_2=1015
1919243824_2_2=1
com.plogue.FrequencyValueDisplay=1
com.plogue.SpectralToMidi=1
1464419401_1635083896_1630694688_1_1=1
com.plogue.AudioBuffer=1
com.plogue.AudioFileInput_1=7
AudioDuplex_1=24
com.plogue.FFT=1
com.plogue.MIDINoteCreator=1
com.plogue.SpectralToFreqAmp=1
com.plogue.BinaryLogicOperator=7
com.plogue.Variable=23
com.plogue.UnitConverter=6
com.plogue.BinaryOperator=9
com.plogue.BiquadFilter=3
com.plogue.EnvelopeFollower=1
com.plogue.UnaryOperator=12
com.plogue.RecursiveFunction=1
com.plogue.Change=9
com.plogue.Constant=12
1397572658_2_2=1
com.plogue.MIDIMonitor=21
1397578034_1_1=1
1397572658_1_1=1
AudioOutput_8=1
com.plogue.MonoITUMixer24=4
MidiInput_7=3
MidiInput_11=2
1281718377_1635083896_1281583153_2_2=6
1802721110_1635083896_1278296915_2_2=10
MidiInput_10=2
com.plogue.StereoMixer8=10
1634758764_1635085685_1684828960_0_2=2
com.plogue.AudioFileOutput_4=9
com.plogue.MonoITUMixer32=36
1094800160_1635085685_1400128817_0_2=18
MidiInput_8=35
com.plogue.MIDINoteLatch=4
com.plogue.AudioMatrix=4
com.plogue.AudioLevelMeter=3
com.plogue.AudioFileInput_2=6
1802721110_1635083896_1380209235_2_2=1
1802721110_1635083896_1280393555_2_2=4
com.plogue.AudioFileOutput_1=6
1802721110_1635083896_1162560077_1_1=3
1802721110_1635083896_1162561368_1_2=1
1802721110_1635083896_1162565208_1_2=8
1802721110_1635083896_1162565203_2_2=1
com.plogue.MIDIPCFilter=1
1802721110_1635083896_1280393549_1_1=2
1802721110_1635083896_1278296909_1_1=2
com.plogue.SpectralFileLooper=1
com.plogue.Oscillator=8
com.plogue.BasicAudioFilePlayer=2
com.plogue.Accum=2
com.plogue.SampleAndHold=4
com.plogue.LogicGate=4
com.plogue.groups.PseudoGranulator=1
com.plogue.AudioFileLooper=2
com.plogue.AudioFileLooper2=2
com.plogue.AudioFileGranulator=2
1802721110_1635083896_1297494605_1_1=1
1802721110_1635083896_1397249101_1_1=2
1802721110_1635083896_1280262477_1_1=1
1802721110_1635083896_1397838925_1_1=1
1634758764_1635083896_1953329268_1_1=2
com.plogue.MIDIToSync=2
MidiVirtual_0=2
com.plogue.MonoITUMixer4=2
1802721110_1635083896_1380209229_1_1=5
1802721110_1635083896_1313165645_1_1=5
1802721110_1635083896_1464750925_1_1=1
1802721110_1635083896_1278430517_5_5=2
1412580425=1
1414483506_1635085685_1412580684_0_2=1
com.plogue.StereoMixer16=1
760105261_1635085685_1315524405_0_2=109
com.plogue.MIDI.ValueDisplay.Terminal=20
MidiInput_46=1
MidiInput_69=1
MidiInput_92=1
MidiInput_115=1
MidiInput_138=1
MidiInput_161=1
MidiInput_184=1
MidiInput_207=1
MidiInput_230=1
MidiInput_253=1
MidiInput_276=1
MidiInput_300=1
MidiInput_323=1
MidiInput_347=1
MidiInput_371=1
MidiInput_395=1
MidiInput_419=1
MidiInput_443=1
MidiInput_467=1
MidiInput_491=1
MidiInput_515=1
MidiInput_539=1
MidiInput_563=1
MidiInput_587=1
MidiInput_590=1
MidiInput_26=13
1280080435=1
1433157998=1
1400139057=1
1415672628=3
1464424009=4
1400128817=1
MidiInput_27=1
1481395779=3
1094800160_1635085685_1430343217_0_2=3
com.plogue.MIDICCLatch=2
com.plogue.MIDICCFilter=3
com.plogue.MIDIPitchbendValueFilter=1
com.plogue.MIDI.ValueDisplay=2
com.plogue.MIDICCToParams=3
com.plogue.MIDIMessageRemapper=1
com.plogue.MIDICCRemapper=3
com.plogue.MIDICCCreator=3
com.plogue.Function=9
com.plogue.MIDIMap=1
com.plogue.MIDICCExtractor=3
com.plogue.MIDIPitchbendExtractor=3
com.plogue.MIDIMessageExtractor=3
MidiOutput_13=2
com.plogue.ValueList=1
com.plogue.Clip=1
2054240050=1
760105261_1635085685_1315524658_0_2=2
1398227277_1635085685_1398896705_0_2=2
1094800160_1635085685_1400139057_0_2=1
1315525173=1
1802721110_1635083896_1129727315_2_2=5
760105261_1635085685_1315525173_1_4=1
2020372033_1635085685_2019639627_0_2=1
com.plogue.Noise=3
com.plogue.MultiGain8=2
MidiInput_12=2
MidiInput_13=2
MidiInput_14=2
MidiInput_15=2

and also com.plogue.bidulewx  in the same location. Here's mine as of March 4 2014:

file1=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/BerlinStringsSimpleOrchestraUACC-03.bidule
file2=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/StringOrch_V6_Template-015.bidule
file3=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/StringOrch_V6_Template-012.bidule
file4=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/StringOrch_V6_Template-011.bidule
file5=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/StringOrch_V6_Template-010.bidule
file6=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/StringOrch_V6_Template-009.bidule
file7=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/StringOrch_V6_Template-008.bidule
file8=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/StringOrch_V6_Template-007.bidule
file9=/Users/bgdegazio/Documents/Plogue_User_Layouts _BD/StringOrch_V6_Template-006.bidule
[History]
com.plogue.Comment=113
MidiInput_0=86
com.plogue.MidiSplitter=354
AudioDuplex_1=21
760105261_1635085685_1315531572_0_2=682
com.plogue.MonoITUMixer16=248
com.plogue.MIDIMonitor2=105
1634758764_1635083896_1836213622_2_5=12
com.plogue.MonoITUMixer8=55
com.plogue.BasicCrossFader=1
com.plogue.Gain=39
1129730357=1
1802721110_1635083896_1129730357_5_5=269
AudioOutput_5=20
MidiInput_7=74
MidiInput_11=70
com.plogue.MonoITUMixer24=42
com.plogue.MonoITUMixer32=1
MidiOutput_0=1
MidiInput_5=78
AudioDuplex_0=187
com.plogue.AudioFileOutput_6=161
1802721110_1635083896_1129730358_6_6=35
AudioOutput_4=87
1634758764_1635085685_1684828960_0_2=19
MidiInput_6=25
MidiInput_1=50
1802721110_1635083896_1195463757_1_1=1
1802721110_1635083896_1129270605_1_1=1
1802721110_1635083896_1230392397_1_1=1
1802721110_1635083896_1380209229_1_1=1
760105261_1635085685_1315524405_0_2=1728
1430808152_1635085685_1397572658_0_2=134
com.plogue.MIDI.ValueDisplay=32
com.plogue.AudioFileOutput_2=31
MidiInput_3=200
MidiInput_4=54
1802721110_1635083896_1129727571_2_2=1
com.plogue.MonoMixer4=1
1802721110_1635083896_1279872305_2_2=1
1464424009=6
760105261_1635085685_1315531572_0_1=1
1094800160_1635085685_1130918449_0_2=12
1464424009_1635085685_1464422482_0_2=132
com.plogue.StereoMixer4=4
com.plogue.CSP5=2
com.plogue.AudioFileOutput_1=4
MidiInput_18=1
MidiInput_19=3
com.plogue.MIDICCFilter=8
com.plogue.MIDICCRemapper=8
com.plogue.MIDINoteVelocityRemapper=10
com.plogue.MIDIVoiceCounter=2
com.plogue.MIDIMap=1
com.plogue.LogicGate=8
com.plogue.MagnitudeValueDisplay.Terminal=1
com.plogue.Constant=29
com.plogue.MIDIActivity=3
com.plogue.Counter=3
com.plogue.AudioValueDisplay=1
com.plogue.Function=4
com.plogue.MIDINoteLatch=1
com.plogue.MIDIMessageExtractor=4
com.plogue.MIDINoteDynamicFilter=2
com.plogue.MidiNoteFilter=1
com.plogue.MIDI.ValueDisplay.Terminal=42
com.plogue.MIDIMessageCreator=4
com.plogue.MIDIMessageFilter=20
com.plogue.XY=1
com.plogue.MIDIGate=3
com.plogue.MIDIBasicDelay=2
com.plogue.MIDINoteExtractor=7
com.plogue.MIDINoteCreator=5
com.plogue.BinaryOperator=16
com.plogue.ADSREnvelope=1
com.plogue.groups.MIDIGate=1
com.plogue.Variable=2
com.plogue.Trigger=1
com.plogue.Gate=2
com.plogue.groups.ManualNote=1
com.plogue.MIDINoteCloser=2
com.plogue.VariableInt=2
com.plogue.MIDIDelay=1
com.plogue.Change=2
com.plogue.UnaryOperator=4
com.plogue.ValueList=2
com.plogue.UnitConverter=2
com.plogue.SyncExtractor=2
com.plogue.MIDIBasicChannelRemapper=4
com.plogue.MIDIChannelExtractor=4
com.plogue.groups.Arpeggiator=1
com.plogue.MIDICCCreator=2
com.plogue.MIDICCExtractor=2
com.plogue.groups.MIDI\ CC\ Lin\ to\ Log=1
com.plogue.MIDINoteOffVelocityRemapper=2
MidiInput_23=3
com.plogue.MIDIMonitor=166
MidiInput_26=13
MidiVirtual_4=1
MidiInput_27=1
MidiInput_28=1
MidiInput_29=1
MidiInput_30=1
MidiInput_14=45
com.plogue.StereoMixer8=10
MidiInput_8=50
1802721110_1635083896_1129727315_2_2=4
760105261_1635085685_1315531572_0_4=24
1634758764_1635083896_1836213622_2_4=3
1802721110_1635083896_1379095380_2_5=3
com.plogue.AudioFileOutput_4=13
1802721110_1635083896_1278296915_2_2=6
com.plogue.MidiChannelRemapper=7
760105261_1635085685_1315524405_0_4=135
MidiInput_10=45
MidiInput_2=5
1481395779=5
MidiInput_25=3
1802721110_1635083896_1095780429_1_1=1
2020372033_1635085685_2019639627_0_2=39
1398227277_1635085685_1398896705_0_2=15
1398227277_1635085685_1398896724_0_2=7
1398227277_1635085685_1398896706_0_2=3
1398227277_1635085685_1398896723_0_2=4
1398896705=1
1634758764_1635085685_1935764848_0_1=5
760105261_1635085685_1315524405_0_1=40
AudioOutput_6=13
com.plogue.groups.String_Orch_V5_0=1
MidiOutput_3=1
MidiOutput_27=1
MidiOutput_31=1
1634758764_1635086446_1634558569_1_5=1
com.plogue.Noise=4
com.plogue.SampleStack=1
com.plogue.Dummy_8=1
com.plogue.VariablesMulti2_8=1
com.plogue.VariablesMulti2_16=1
com.plogue.VariablesMulti_8=1
com.plogue.MultiGain4=1
com.plogue.MultiGain8=3
1400136295_1635085685_1885430899_0_2=3
760105261_1635085685_1315524405_0_32=1
AudioOutput_1=3
AudioOutput_2=1
AudioOutput_0=1
MidiInput_12=42
MidiInput_13=42
MidiInput_15=42
com.plogue.AudioFileOutput_5=1
1634758764_1635083896_1819502694_2_2=2
com.plogue.MonoMixer8=1