Home

Manual only.

image

Contents

1. 69 ALGORITHMIC CHORDS COMPONENT Ril Property Editor This component generates a series of chords Algorithmic Chords METE G firita sep Ss ll IE during the composition process Chord Options Chord Base Duration p o Root Progression Second MAJ Third Maj6 edd9 After algorithmic composition all the generated n a ES chords are available for editing see basic harmony component above Random Generator Seed 48446 Y qF ALGORITHMIC CHORDS COMPONENT VARIABLES Variable Value range Description Chord Option na The value refers to one of the numbered specified chord options on the setup page Diatonic chord Root 1to7 The value corresponds to one of the underlying scale pitches 1 root 2 second 3 third etc Chromatic Scale Oto 11 The value corresponds to a chromatic pitch O C 1 C Db 3 Root D e D Eb etc Harmonic Density Oto 4 Potentially adds additional pitches to the basic triad value 0 adds no pitches value 4 adds up to 4 pitches The specific number and type of added pitches follows general pitch extension guidelines Chord Duration 1 to 32 Chord durations values represent measures and are specified measures in terms of a duration multiplier combination This variable corresponds to the duration portion Duration Multiplier 1 to 16 Chord durations values represent measures and are specified in terms of a duration multiplier combinat
2. Texture functions use a change rate variable with the specified units to determine when to trigger a texture change When a texture change gets triggered the gt Instrumental Layers algorithm uses composition variables to determine a starting track and a number hi Instrumental Texture e Change Rate Units esca Attacks Beats Phrases Variables Variable Value Range Limit Yo Function Setup Change Rate 100 Note Attack Limit 100 Lead Track 100 Track Count 100 1 Il 16 of tracks to turn on all other tracks are turned off When the note attack limit value is set to greater than 0 it provides an additional upper limit on the number of attacks that can be generated simultaneously TEXTURE ORCHESTRAL RANGE Project and Group Component Texture Generator variable ig Orchestral Range Change Rate Units Attacks Beats Measures Phrases Variables Variable Value Range Limit Yo Function Setup Change Rate 100 Note Attack Limit 100 Center Pitch an 100 Pitch Octave Range 100 Texture functions use a change rate variable with the specified units to determine when to trigger a texture change When a texture change gets triggered the Orchestral Range texture algorithm uses composition variables to determine a center pitch and a pitch range All tracks with pitch ranges that fall within the generated criteria get turned on all other tracks are tu
3. Components can be dragged from one project component list to another projects component list This is most useful for importing musical source material produced in other projects or MIDI files 80 REFERENCES There are thousands of good music references available These are the books and websites which have found most useful over the years and which have most influenced the development of the theory underlying ArtSong In no particular order Schillinger System of Musical Composition Books I and II by Joseph Schillinger Da Capo Press Cambridge New York 1973 A Generative Theory of Tonal Music by Fred Lerdahl and Ray Jackendoff MIT Press Cambridge Massachusetts 1996 The Cognition of Basic Musical Structures by David Temperley MIT Press Cambridge Massachusetts 2001 Simple Composition by Charles Wuorinen C F Peters Corporation New York New York 1979 Music Composition by George Thaddeus Jones Harper Collins New York New York 1974 The Contemporary Arranger by Dan Sebesky Alfred Publishing Company Van Nuys California 1984 Jazz Composition amp Orchestration by William Russo University of Chicago Press Chicago Illinois 1968 Twentieth Century Harmony by Vincent Persichetti W W Norton amp Company New York New York 1961 The Material of Music Composition Books I IV by H Owen Reed and Robert G Sednell Addison Wesley Publishing New York 1980 Harmony 5 Edition by Walter Piston Re
4. Expand Intervals Oto 12 The data parameter is used to expand the intervals between successive notes Contract Intervals Oto 12 The data parameter is used to contract the intervals between successive notes Transpose Oto 12 The data parameter is used to transpose the pitch values of the notes in the theme Retrograde Oto 12 The note order of the theme is reversed Invert O to 12 Note pitches are inverted 50 BROWNIAN FUNCTIONS General All Brownian functions work in similar fashion The first value is set by the composition variable s starting value Successive values are determined by randomly stepping to the next highest or next lowest allowed value CHORD GENERATOR FUNCTIONS MIDI Track Component Chord Generator variable OTE There are five different Chord Generator functions an O Algorithmic Chord generator an Open and Closed Chord Variables generator and a Widened and Thickened Melody Variable Value Range Limit Yo Chord Size 100 generator Voice Spacing 100 E The Algorithmic chord generator has two composition variables for Chord Size and Voice Spacing The other o 100 functions have only a Chord Size variable The octave of the first generated pitch of each chord is specified by the starting value of the client track s MIDI pitch variable use the pitch starting value to vertically position the chord within the client track s pitch range Open and Closed Chord functi
5. the user properties not based on composition variables and a special MIDI Tracks setup grid Figure 23 Project Properties Editor Project Page 27 The Variables tab shown at right provides access to the project component s composition variables The Scaling variables are bit different then other variables Instead of being directly used by the project component the generated scaling factors are applied globally to all base variable value generation by any component For example setting the MIDI Velocity scaling to above 100 will increase the generated note volumes MIDI Velocity of every generated note Fu o O SA IAN Variables 0 0 vauiablo o e Value Range Figure 24 Project Properties Editor Variables Page The Project Name property page contains several tab sections with assignable properties Each tab section and its controls are described below Some Tabs are only available when editing the initial overall project configuration some Tabs are only available when editing a project Segment GENERAL TOOLBAR FOR PROJECT General ME Setup Script Project Length Track Count Default Scale _ Ending Beats 1 i s a 4 Hr e Project Length is the composition length in measures e Ending Beats sets a beat duration of the final note in the composition convenient for simple endings where you might want a more definitive
6. OVERVIEW The principal elements of ArtSong s composition system are a composition engine project components and composition variables The composition engine manages the overall composition process with a series of time based control messages to the various project components composition variables determine how each component responds to those control messages COMPOSITION VARIABLES AND DRIVING FUNCTIONS Composition variables are at the heart of all the dynamic processes decision making and data generation that occur during ArtSong s algorithmic composition process Composition variables extend traditional single valued properties with a user adjustable value range change limit and an optional assignable driving function or algorithm e The value range is the user specified operational range for a composition variable s value and includes a user specified starting value If an algorithmic function is not assigned to the variable its value will remain constant at the specified starting value When a function is assigned the value will vary according to the function within the specified operational range Variables have pre established minimum and maximum values This overall range is designed to accommodate a wide variety of compositional circumstances Please Note The large number of potential variable and variable range combinations available make it possible to create ArtSong configuratio
7. Add or edit individual note to focused track Adds multiple notes Click and drag to paint notes into the focused track Erase individual notes or click and drag to remove multiple notes from focused track Establishes the duration of added notes The Quick Menu s Editor Quantization value determines the quantization of component event start and end times in the Project Editor and Note Start Times in the Note Editor Toggles between displaying notes from all tracks to displaying notes from only the selected tracks Multiple selected notes can be lengthened or repositioned by depressing the Ctrl key while performing the operation Additional notes can be added to the current selection by depressing the Ctrl key while making the new selections Note Release m sand Figure 16 Controller Editing Controls Foot Controller Select MIDI controller to edit When set to Program as 7 l Change an additional dropdown box will appear Select brush to add or edit controller values Click and drag to add edit existing values Some controller types require existing note data Values are only added for value changes Select eraser to remove controller values Click and drag to erase a range of values for the specified controller 17 SELECTING COMPONENTS IN THE COMPONENT LISTS Most editing operations only work on the selected components within an optional selected time range Select a component by clicking on the
8. E Sequences are time ordered lists of notes A musical style refers to a type of music having distinguishing characteristic rhythm harmonies instrumentation etc such as rock amp roll funk jazz etc Tempo refers to the rate at which beats occur in time MIDI sequencers typically measure musical time in smaller units called ticks to provide a higher resolution for note positions and durations than provided by the classical note durations ArtSong uses a basic 240 ticks per standard quarter note Timbre refers to those aspects of a sound that allow us to distinguish one instrument from another i e distinguish a piano from a trumpet etc 87 Time Signature The time signature defines what classical note duration is considered a beat and how many beats are in a measure Voice A voice generally refers to the series of notes played by a particular instrument SYSTEM REQUIREMENTS ArtSong is a large computationally intensive program and works best with lots of RAM and a fast processor ArtSong v7 x requires Windows XP XP Pro Vista or Windows 7 with their most current service packs installed e 2GHz Pentium processor Dual Core 3 GHz or faster recommended e 1GBRAM recommend 2 GB or more e 1024 x 768 resolution graphics card monitor recommend 1280 x 1024 or better e Atleast 200 MB free disk space for installation ArtSong only needs about 32 MB but the installer requires additional s
9. a Eas the Ok button at the bottom of the dialog to select the events E X Cancel i Kl Select the Copy menu item to copy the selected events The PEY EHE Reference Time is used to set the relative event times of the Reference 26 04 237 copied events for the pasting operation the default is the ETE current selection start time XA Cancel Time 20 Select the Paste menu item to paste copied events hi Paste into the selected components The Start Time defaults to the beginning of the selection time but Start Paste can be adjusted Reset returns the time to the start of the selected time Set the Paste Count Paste Count value to the number of times to paste the events bi Algorithmic Edit co kE The Edit and Edit Paste menu items work with the z current selected events NOTE Edit Paste only works Transpose lo ET y Invert perform set any parameters and click Ok to perform the Minar le4 ET with selected Note Events Select the Edits you wish to operations Quantise Start M Quantise Duration The order of the editing can be changed by clicking and dragging the individual edit panels see below right bi Algorithmic Edit ea eeoeeeeeeeeccs o Invert ele e 000 o e Mirror 64 Quantise Start W Transpose 21 COMPONENT PROPERTY EDITOR Component property and algorithm changes are made in the components prope
10. a new project is created using the default template and the project displayed in a Project Editor General project management capabilities such as e opening or saving projects e inserting or deleting components e composing and playing compositions are provided by the Quick Menu and Project Toolbars located at the top of the main application window The menu and toolbars are described below If a default project template does not exist a blank project is created at startup If ArtSong is launched by clicking on a project file icon that project will be opened instead of a default project Figure2 ArtSong Quick Menu File Button Opens a menu of file options including a list of sample projects and the history list of recently saved projects Open File Ctrl O Open Template Shift Ctrl O New Blank Project Shift Ctrl N Save as Default Template Alt S ArtSong supports MIDI type O and 1 file formats mid in addition to project ampr and template tmpl files E he Undo and Editing Click to undo the most recent operation on component events A dropdown menu contains additional options for selecting and editing component and MIDI note events dd Quick Project Ctrl N Creates a new project from the default project template Quick Save Ctrl S Saves changes to the current project Opensa file save dialog if project has not yet been saved Editor Toggle F4 Toggles between th
11. artsong org purchase htm After purchasing ArtSong we will send you a unique registration code or license key that will unlock the trial version and give you full access to all the program features CONTACT Any questions please contact me at support artsong org
12. bar area circled above with the component focused or 3 Right click in the Project Editor s timeline and use the popup menu 15 MIDI NOTE EDITOR The MIDI Note Editor is provided for creating custom themes and editing imported MIDI files or composed projects Toggle between the Project Editor view and the MIDI Note view using the Editor Toggle button in the Quick Menu Figure 13 Location of Editor Toggle Control in Quick Menu The MIDI Note Editor is shown below with the MIDI Note pane and MIDI Controller panes labeled MIDI note data is displayed and edited in the MIDI Note Pane and MIDI controller data is displayed and edited in the MIDI Controller pane Editing controls are described in the following tables A Denno Note Ecktor Exava torrie sos x gt ere EE 9 Compose df 1 01 000 Z 2 04 000 q iJ E b t y 1 2 j 1 3 j y 4 j 1 5 j 1 6 i y 1 m s R E Example5 ampr ps 4 g al 5 5 Basic Harmony wi CA a E A ALC EE m s IE e MIDI Note Pane Mm F Synth Pad 1 s ESAS mis mi il o Synth Pad 2 E i Ln E z paja aja DR AD E SS a A BS O ala J Mis I e I H Percussion Group 11 mis Melody Pad 1 C4 mis T F Melody Pad 2 Note Release 127 III Edit Event 6 34 52 PM 7 Figure 14 MIDI Note Editor 16 Z Ar E Figure 15 Note Editing Controls Select note or range of notes to edit in focused track
13. component s name in the component list The image at left shows one selected focused component E NewProject 1 Multiple components can be selected by E 1 Selecting a first component and holding the Shift key Trumpet Synth 1 i A m while selecting a second component All components Strings between the two will be selected are Synth 2 f Trumpet Clarinet 2 Holding the Ctrl key while selecting individual Flute Bass components Synth 1 Synth 3 Strings Synth 2 Clarinet Bass Synth 3 SELECTING TIME RANGES FOR EDITING AND PLAYING Time ranges can be specified for selecting editing playing and composing using an editor s Measure Display control shown circled below for the Project Editor Project Editor NewP 18 Click in the Measure Display area of any editor to set a starting playtime that extends to the current end of the project A blue bar will appear to display the play range Play will start and loop over this Click and drag in the Measure Display area to set both a selection range and a play range The selection range will be represented by a yellow bar in the measure display area pose JE im 1 01 00 Ny er JJ Ree la e Holding the ALT key while clicking and dragging will clear the selection range and set a play range e Holding the CTRL key while clicking and dragging will set only a selection range e Double click to clear the
14. event When the mouse is released the components property editor will open to allow setup of the new event it IO Figure 9 Position Cursor at Component Event Start Time Y O Figure 10 Left Click and Drag to Desired Component Event End Time E Figure 11 Release Mouse Button to Create Event e Double click an existing component event to reopen its property editor 14 PROJECT EDITOR STATUS BAR Several component and instrument status effects are displayed in bottom status bar A status effect can be removed from all project components by clicking into the associated status panel Initial project tempo is also set from the bottom status bar Left click in the Tempo panel for a slider bar Shown below or right click on the Tempo panel for an input dialog Some components display multiple types of editable data in the project editor in addition to their component events For example the Basic Harmony algorithm displays component events generated scale events and chord events ae ae SS Se SS SS SSS eS SS Se ee eee ee ee a coctooockBooachoc a ee ee E y A OOA E E AL E dE I A E dL a a a The data type to edit is also displayed in the workspace status bar Mute Solo C mp Off Tempo 145 Progress Edit Event Figure 12 Workspace Status Bar To select a different data type to edit 1 Click on the specific event to edit in the component s timeline or 2 Left click in the status
15. for each composition cycle and not generate a new seed value The result is the same series of random values will be generated by the component for each composition cycle 26 PROJECT COMPONENT Each project has one Project Component displayed as the top component in component lists at the left of a Project Editor or MIDI Note Editor forms Use the Project Component property editor to set global composition properties such as project length starting meter tempo and base note durations Project segments can be added to the component timeline to create sections having different meters harmonies variable setting etc Project component events or segments are the only component events which are always measure aligned Project component events cannot be inserted at the beginning of the composition as this would result in two potentially conflicting initial time signatures Open the Project Properties editor by clicking the Project Properties button See Figure 3 or by double clicking the project component in the components list The Project Properties Editor is opened automatically for initial project setup after creating a new blank project Shift Ctrl N The Project Properties editor contains two property pages accessed by the two Tabs at the Project Len Tg Track Count Default Scale top of the editor ja H ij 9 Major Pentatonic The ProjectName page shown at left provides access to all
16. function period options IFS AND QUADRATIC ATTRACTOR FUNCTIONS General 5 bil IFS Attractor MIDI Pitch EE xPoston v EA F 15 p The Iterated Function System IFS and Quadratic attractor functions trace chaotic orbits and map their position or change in position to their composition variables Seta starting point for beginning iteration by right clicking on the attractor display These two attractor types produce different results In general the Quadratic attractor will produce almost identical value series each time the project is composed IFS attractors produce statistically similar series of values Click the Random button to generate a new attractor save a new attractor by entering a name into the drop down text box and click the Save button 54 MELODIC PATTERN MIDI Track Component Attack Generator variable ki Melodic Pattern Attack Generator The Melodic Pattern Attack Generator algorithm is os designed for generating repeating note patterns having a consistent pitch contour and rhythm Note attacks generated by this function are filtered by the Semitones pa client Track s Attack Probability variable 00 al ii m DE T aL Never During composition the first pitch in the pattern is determined by the client Track s MIDI pitch variable Pattern Length 8 Duration Units AP ATAR IA AA IIA remaining pitches are determined by the relative
17. it to a Track s Attack Generator variable in the Track s property editor Several setup options exist The specified starting point and mapping are used with each client Tracks pitch range and duration range variables to generate a note sequence The duration multiplier is applied to Ai IFS erie Starting Point Both IFS and quadratic function attractors generate an infinite series 82 1 x 0 050000 y 0 150000 of values The Attack Count provides the capability to set a J 0 specific number of iterations note attacks after which the value A sequence is restarted With Attack Count O the functions iterate normally Mapping Y gt Pitch x gt Duration C Y gt Duration gt Pitch Algorithmic Previews generate preview notes using a MIDI pitch range of 48 to 60 and a base duration range of 1 6 Base Duration BD units When applied to a client track the clients Track s pitch and duration variable settings are used 72 MANDELBROT AND JULIA SET MUSIC n 5 SS Mandelbrot and Julia Set images are typically o EE d fimasemo AT rd generated by relating the color of each point to the number of iterations required for the starting Real values to escape some preset limit Right click Sos and drag on the function to change the limits jo 113467 Set Point ll Up to 8 trajectory starting points can be spe
18. note MIDI Aftertouch value key pressure for generated note Note durations are specified in terms of a duration coefficient multiplier combination that is applied to a base duration unit This variable corresponds to the duration portion For each note generated an actual tick duration is determined by generating duration and multiplier values and then multiplying these together with the current base duration unit in effect at that point in the composition Note durations are specified in terms of a duration coefficient multiplier combination that is applied to a base duration unit This variable corresponds to the multiplier portion Sets the probability that the generated note duration will be subdivided Sets the duration subdivisor for above The percentage of the generated note duration time that the note actually sounds Note displays always include articulation High 100 articulation values correspond to Legato while shorter values correspond to Staccato The 100 to 200 range extension is provided for special sustain effects 40 Chord Probability Chord Generator Effects Probability Effects Generator 0 to 100 Na 0 to 100 Nna Sets the probability that a generated attack will result in a chord being created Select a Chord Generator function Sets the probability that a generated note will be ornamented Select an Effects G
19. notes are generated in the client track The most important options are the Transpose and Coupling options which can be used to adjust the pitch range of the incoming source notes to the pitch range of the client track Out of range pitches will not be generated in the client track The various options can be combined to produce melody harmonization counterpoint parallel melodies homo rhythmic passages etc 64 VALUES LIST General This function allows you to specify a specific sequence of hi Values List Non Harmonic variable values The list value sequence will be repeated HE sha Add Delete m MESUES Click the Clear button to completely remove all list values Click the Randomize button to append a random number of random values random values are selected from the specified range of the underlying variable Click the Add or Delete buttons to increase or decrease the length of the values list respectively Please Note The range of the underlying variable MUST be set to include any values specified in the list or else the user specified value will be truncated to the high or low values of the underlying variables value range when the value is applied during the algorithmic generation process 65 OVERVIEW OF ALGORITHM COMPONENTS The large global mapping algorithmic components of earlier program versions have mostly been replaced by built in algorithms and driving functions However several algorithm compo
20. of generator functions They do not use variable range information COMPONENTS AND COMPONENT EVENTS The various types of data used by or created by the composition process and the associated composition variables are organized into different types of specialized components An ArtSong composition project is a collection of components e The Project Component contains the data and variables pertaining to the overall composition e g composition length meter tempo form phrasing etc Each ArtSong project has only one Project Component e MIDI Track and Controller Components contain MIDI note and controller data respectively as well as the composition variables used to generate the data A project should always have at least one track There is no built in upper limit to the total number of tracks a project may contain there can be practical limitations depending upon available computer memory and processing speed e There are a number of components generically referred to as Algorithm Components which provide various services or perform particular operations during the composition process For example o Harmony algorithms such as the Basic Harmony generate scale and chord data which will automatically be used by the composition engine when present 7 In addition to an initial configuration all components may have component events also referred to as segments or sections in their project timeline to dynamica
21. of a Tracks Instrument panel This status is not saved with the segment data The column with the blue on off turns note generation on ir off for this track during the the current segment this status IS saved with the segment data PLEASE NOTE that using Instrumental Texture algorithms can interfere and may cause expected behavior e The Preset column of the grid contains a dropdown list of Track presets that can be used to initialize a track s composition variables If configuring the initial project settings sometimes also referred to as the default project segment adding a Track Preset in the grid is the same as adding it in the Track Editor it is loaded immediately and the pitch range columns are updated to reflect the Preset s pitch range For interior user added segments presets and instrument changes are not actually made until the segment s start time is reached during the composition process e The Low and High columns can be used to override the designed pitch range settings in a loaded Preset e The MIDI channel patch volume and pan settings set the tracks instrument settings for the segment When configuring the initial project settings the default Project segment MIDI instrument changes are implemented immediately For interior sections the MIDI Instrument changes can be turned on or off default see the circled area in Figure 24 When off any specified MIDI instrument cha
22. rhythmic cadence normal non controlled ending e Track Count sets the number of instruments in the project convenient when using the Projects Track Grid see below for setup Set the value to O fora e Default Scale sets a default scale to be used if no other harmonic components exist This control will not be present when editing a segment Please see below 28 GENERAL TOOLBAR FOR SEGMENT Segment Length Segment Scale Ending Beats 0 43 I Major is Project segments added to the Projects component timeline can be used to create musical sections with different algorithms meter harmony etc This tab is only present when editing a project segment e Segment Length is the event length in measures e Ending Beats sets a beat duration for the final note in the section e Segment Scale is the default scale for the section METER TOOLBAR mon eN Meter setup Script e Time Signature establishes the basic meter in terms of number of beats per measure and the note value equal to one beat 2 half note beat 4 quarter note beat 8 eighth note beat etc e Beat Grouping sets the default grouping for time signatures having multiple potential beat groupings e g the 5 beats in 5 4 can be either grouped as 2 3 or 3 2 SETUP SCRIPT TOOLBAR General Meter Script to execute prior to beginning composition process Pe Browse Clear e Assigns a composition script to t
23. start of each theme based on the thematic sequence as determined by the Project Components Form Generator function the values of the above composition variables are evaluated e The Variation Probability variable is used to determine whether to use the varied or unvaried version of the theme e The Tranpose variable provides an additional option to transpose all the pitches in the chosen theme version e The Delay variable determines when note generation should actually begin relative to the start of the theme 58 hi 1 Apply Theme The Part Definition Option is a bit more complicated This variable value is used Primary Counter Melody Staccato Melody SubFiguration Staccato Primary Melody Legato Primary Counter Melody Primary Counter Melody DO O NOU Ah W N 10 Counter Melody Staccato to select a row from the grid on the Shared Part Descriptions tab Each row of this grid contains additional options for applying the theme to the track e Click the Randomize button to generate a random set of Part Descriptions e Click the Clear Button to reset all the Part Descriptions e A set of Part Descriptions can be saved and reused In the Table below Theme refers to either the Base Theme or the Varied Theme Pitch Option Primary Melody Primary Counter Melody Melody Counter Melody Rhythm Description The
24. that while pitches can be transposed up or down by an octave and remain the same pitch class time can only go forward so time point classes must always be positioned sequentially in time For example Example Coefficients Row 241 Modulus 5 Time Points 78 TEXT TO MIDI hit Property Editor Text to Music 1 EE 4 inital setup E D AR P system Tot WWhpHKxysqCBphiWHmHhBphBCmWWhChlphhKIWH mMHhWKWqCBCmBphegBsBphWkKWhxxWKsqKIWKWChI WWhIWHmHhWKWWKWpHKxysIWHmHhBphpHKxyssC hyqChlhoWKsphhKqKleqBsBCmpHKxysBCmWWhqKIw KWsChyqsChyqBCmpHKxyshxxWKsphhKIWHmHhWKW BCmMBCmWKWIWHmHhWKWWKWpHKxysBCmpHKxysB CmaKIWKwWqCHpHWqyWWhphhKhboWKs Random Generator Seed 78950 ry cP TA Systems Text Generator ceHpxBKWhisHgBhym Generator CeHpxBkWhisHgBhym E qa Tterate Qi Reset The Text to MIDI algorithm converts a series of ascii text characters into note MIDI pitch and rhythm information Existing Text files can be loaded and mapping rules established for each ascii character in the file The first pitch is determined by the client Track s starting pitch value subsequent pitches are determined by apply a contour and Pitch Interval to the previous pitch Note Pitches are filtered through the client Track s harmony related variables Text can be directly entered into the text area loaded from a text file or generated using the L System Text function Ee The L System text function allow
25. the activity which will consume the most time and effort of anything you will do in ArtSong Presets are a convenient way to recycle some of that effort for re use elsewhere in your current project or in other future projects Creating presets and using them in different circumstances is a good way to stimulate experimentation and new ideas Presets are simply a components internal configuration saved to a file which can be loaded by other similar components to create or restore that same internal configuration Each component type maintains its own separate library of Presets all components of the same type share that library For example all MIDI Track components share the same library of Track Presets Algo Percussion 2 mm E d Algo Percussion 2 E Variahlac Figure 21 Track Component Property Editor Toolbar Component presets are created loaded or deleted from the Preset area at the top of the component Property Editor A component s Preset Management tools include a dropdown combo list of available saved presets for that specific type of component a Save button and an Erase button e Selecting a preset with the combo box will automatically load that preset loading a present essentially means the component takes on the internal configuration of the component when the preset was created e E Click the Save button to create a new preset with the current component settings and using the specified na
26. the length of the component event 75 SERIAL ALGORITHM l Property Editor Serial with Time Points 1 GE i inital setup tch Prime R The Serial Algorithm provides generic ordered and unordered row based composition capabilities te Random 742851493806 Initial Octave Positions and Resultant Melody Octave Range PE Random 010100010011 j2 y GO A 1 DO0 G 1 FO0 C 0 EO0 A1 D 0 B0 C1 F L Pitch Prime Row text box using The series of pitch classes comprising the initial or prime row is specified in the hexadecimal notation Right click in the text box for some additional editing options Random Generator Seed A serial melody is defined positions to each pitch class this melody comprises an ordered set of pitch values which are used sequentially during composition Transforms List Es Add Delete Matrix X Cancel E C E A E D B DF A G G The Matrix button provides an alternative means of Ps jc ore G B E Af Ge F A De c D R G A G B F D E Ri specifying the transform using traditional notation Decimal Value Pitch Class Hex Value 0 C 0 1 CH Cb 1 2 D 2 3 DH Eb 3 by applying relative octave 4 E 4 5 F 5 6 F Gb 6 7 G 7 8 G Ab 8 9 A 9 10 A Bb A 11 B B A Row Transforms textbox lists the transforms to be applied to the prime row pitch classes for each cycle Ad
27. 9 MM ht mn E me TE PS lt Low High gt Boo Attack Type String Generate accented attack Generate normal attack Generate rest or skip when applied to sub figurations Hold last note Similar to O above except the duration of the last note is held over until the next generated attack This algorithm provides several different probability distribution functions to generate random values for parameter mappings Some distribution functions have adjustable parameters A generated sample value distribution for variable values is displayed RANDOM ATTACKS MIDI Track Component Attack Generator variable This algorithm provides several different probability distribution functions which used to generate note attack points The function subdivides the phrase length by the current base duration value to determine a total number of potential attacks The density is applied to the total to determine how many attacks to generate The distribution function determines where those attacks occur within the phrase SCRIPT FUNCTION General The Script Function uses a Basic or Pascal language script that implements function Generate to generate a new composition variable value rr P The drop down combo list ac Pesca tosco Ferdies d is populated with the Me use SCeeccceeesee names of all the available algorithm scripts for the specified language when function Gene
28. Cadences have rhythmic melodic and harmonic aspects 82 Chord Chord Progression Chord Voicing Duration Harmony Instrumentation Key Signature A chord refers to a group of notes usually more than 2 played at the same time Chords are generally represented by alphabetical chord symbols which indicate chord root and type The root is the note upon which the chord is build The type is determined by the number of notes and the nature of the intervals between the root and the other notes The process of naming the notes indicated by a chord symbol is called spelling the chord A chord progression is a series of chords Arelated concept is the root progression which is the series of chord roots Chord voicing refers to how the individual notes that spell a chord are placed relative to one another For example a C Major Chord spelled C E G can be voiced in different ways C5 E5 G5 or C5 G5 E6 the numeral represents octave See Note Duration Harmony refers to the study of chord structures chord progressions and their interrelationships The application of instruments to parts related to Orchestration and Arranging The Key Signature refers to the sharps or flats placed at the beginning of a composition to denote the scale upon which the music is based 83 Measure Meter Metric Strength Note Note Duration A measure is a unit of musical organization consisting of a particular number
29. DI Output Opens dialog for selecting a default MIDI output device and setting some preview and MIDI looping resend instrument options Script Editor F12 Opens the ArtSong script editor There is also a dropdown list of utility scripts Figure 4 Insert Toolbar z Insert Track Ctrl Ins Inserts a new MIDI Track component into in the project Edit Component F6 Opens the property editor for the currently focused component P Edit Instrument F7 Opens the Instrument editor for the currently focused MIDI Track or MIDI Controller component yi Insert Group Shift Ctrl Inserts a new empty component group into the project Ins qz Copy Component Ctrl Alt Inserts a copy of the currently focused component into the Ins project Fi Insert Algorithm Displays a dropdown menu of algorithms which can be inserted into the project ra Insert Template Displays a dropdown menu of templates which can be inserted into the project m Delete Component Ctrl Del Deletes the currently focused component from the project HJJ Chords and Scales F8 Opens an editor for defining custom chords and scales 11 PROJECT EDITOR Composition projects are created and setup in a Project Editor which provides both a visual display of project structure and access to the editors for the various project elements The Project Editor contains a tree view list of components an instrument control panel for each MIDI track and controller compone
30. LE The function provides a simple percussion algorithm to generate drum patterns Pitches generated by this function do not get processed through the track s harmonic context variables The drop down pitch lists uses a basic General MIDI drum kit MIDI channel 10 is usually the channel reserved for percussion so Tracks using this algorithm to generate percussion should be assigned to that channel Attack rates are related to the active Rate Frequency Meter and Base Duration see table 1 Measure below Actual note generation will be affected by the Track s Attack 2 Beat Group Probability variable and the Attack Filter string below 3 Beat 4 Base Duration Beat Subdivisor Note volumes are generated using the gt Base Duration 2 client tracks MIDI Velocity variable l The function s Volume Modifier can 6 Base Duration 4 be used to adjust the balance of the individual percussion instruments The Attack Filter string provides additional control over the Attack Filter generated pattern The table at the right enumerates the A Generate accented attack allowed character values for the string 1 Generate normal attack 0 Generate rest 48 ALGORITHMIC PHRASES Project Component Phrase Generator variable Mal Phrasing and Cadences s The Algorithmic Phrase algorithm creates phrases Phrasing Variables Me tE elle a AS ma a ending cadence These phrases are requir
31. MA o seentees 90 INTRODUCTION TO ARTSONG ArtSong is a versatile MIDI based algorithmic music composition system for Windows computers You can use ArtSong to e Compose and harmonize melodies e Compose countermelodies and counterpoint e Generate chord progressions e Generate bass parts e Compose chord pads and accompaniment patterns e Control musical form and thematic sequence e Compose a variety of harmonic and rhythmic support parts Originally developed for fractal music composition the program has expanded its algorithm base and now includes a wide variety of algorithms such as IFS and Quadratic function attractors Fourier Series several types of random distributions cyclic pattern generators contour and envelope curves Image to MIDI Text to MIDI Julia Sets user specified value sequences and a powerful scripting environment for development of custom algorithms and editing utilities ArtSong parameterizes over 100 time dependant properties and composition arrangement decisions covering a wide range of composition situations Each parameterization uses a custom dynamic variable which can be assigned a value range and an algorithmic driving function providing a high degree of composer control and expression Complete MIDI sequencing and editing capabilities are provided though they are not meant as a replacement for a professional quality MIDI sequencer or digital audio workstation
32. MIDI pitch and Points 1 x 10 y 30 X Random Generator Seed 41217 rhythm information The algorithm supports the RGB HSV and HSL color coordinate systems wd Load Image ET Up to 8 starting points can be specified right click Re Red component to position the point specified in the Starting Duration fren Red Component Points drop down list The algorithm is used by assigning it to a Track s Attack Generator variable in the Track s property editor Several setup options exist The specified starting point and X Y Speed mappings control the movement of a point over the image Thecolor at that point combined with the specified pitch and duration mapping are used with the client Tracks pitch range and duration range variables to generate a note sequence The duration multiplier is applied to the generated durations as normal but is only updated for each new cycle The algorithm generates an infinite series of values The Attack Count provides the capability to set a specific number of iterations note attacks after which the value sequence is restarted With Attack Count O the functions iterate normally 74 PERCUSSION KIT eee The Percussion Kit algorithm is provided to allow easy creation of basic percussion patterns In 16 0 Bluesy Rhythm order to use this Algorithm it must be added to sat ae s paro 2 r Midi ame gii Track a the project and each cl
33. Music Julia Set Music and the Image to MIDI also provide a Theme Generating function when part of a project 1 The Algorithmic Theme function bi Algorithmic Theme Generator ese allows you to specify an Attack Variables Generator function an Attack ag Probability and a Pitch Attack Probability am 100 Generator This works similarly seertor all a to the analogous variables in the E un MIDI Track with the exception of a pitch range see above 2 The User Theme option allows you to select one of your Mu User Theme Theme 1 Generator Es saved user themes No additional user theme setup options are available ocal Theme For both options pitches are always adjusted to the client tracks pitch range and filtered thru the client tracks pitch variables 46 ALGORITHMIC HARMONY Project Component Harmony Generator variable If no other harmony algorithm is present pitch generation will use the default scale set in the Project or Project Segment editor The starting root for default scales is always C the root of the first chord is also C This Algorithmic Harmony function generates a simple progression using the default scale A e The Progression Rate variable a combined with the specified change Attacks Beats Measures Phrases E rate units Attacks Beats Measures Variable alue Rang imi i Phrases determines the frequenc
34. ar for Segment ssessssesessenssrreresrressrrrresrrersrrrressreresreresererssetressreresetressreresrereserereseeeesse 29 Meter TOODI are a E E E E E E 29 D DE TOODA ae a E EE A 30 ed 6 Tracks A E 30 PEOVCCE Component Vai cestas 32 C1010 oe Os 907 918 a 8 eee ne eee Oe Ener ee nee ne enon ec NES oS ae ee eee ene ee ee nee ee ne ere error 33 Group COMPONENT VariaDlO Suisse dad 33 TAC COMPONEN rai E olaa oboe d abono lists 34 Creatina a User TIC oaa a oe ees er 37 Use a User TRENES arranca 38 TRACK COMPONENT Val ADIOS tada datada 39 MIDIController COMPONEN taa rede ogeckciehe tence uenmnsaieite cain Ue sectagial A i deaeas ventas 42 MIDIController Component Vandal 42 Built In Driving Functions and AlEOrithIN A i 43 ACCOMPANIMENT Pattel Noan a E ddaSs 44 yA Fea aie al a FOM erena A a A eee 45 How the Algorithmic Form function works ccccccseseccecesscccceesececeeececcenscceeeesececsunecessugeceesensecetsenesss 45 Algorithmic Form Theme Generating FUNCTIONS cccccssccccceseccccesecccceesececeeecesseeeceeseeeecesausecetsuneses 46 PI SOVIET Cc MON coa eto 47 Algorithmic Percussion FUNCION O asta wtoncotacisasacsatoniecaaaetaaeeeees 48 AIBOFICAINAIC PIGASES sicc eiaeseel cere T ood ena aed ered ate els ee er wd ees 49 POR IE RIAN C Viel lia LIONS sacctten o 50 BEOWNIan FUNCION Sacar a io 51 Ehora Generator FUNCION Sais 51 Contour FUNCION sarao 52 EN AA A 52 ENVIO PEA deca do 53 As e a a a A 54 IFS and Qua
35. ch is in the current chord Sets the probability that a non harmonic note pitch as determined above is from the underlying scale If not from the scale the pitch must be chromatic Sets the probability that a non harmonic pitch will be followed by a harmonic pitch on the next strong beat This variable is used to further filter the chord or scale pitches generated The starting value is typically ignored only the range is used For chords the values 1 to 7 correspond to root fifth third seventh ninth eleventh thirteenth For scales the values 1 to 7 correspond to root second third fourth fifth sixth seventh 39 Harmony Interlocking Repeat Pitch Adjustment MIDI Velocity Accent Value MIDI Release MIDI Aftertouch Duration Duration Multiplier Subdivision Probability Subdivisor Articulation 0 to 100 100 to 100 Oto 128 O to 30 Oto 128 0to 128 1 to 48 1 to 16 0 to 100 2to8 20 to 200 Sets the probability that a harmonic pitch will be inserted generated when the harmony chord changes When two consecutive notes are generated with the same pitch this value sets the relative probability of adjusting the second pitch up or down if other constraints allow MIDI attack velocity volume of generated note The variable represents a value to be added to the generated MIDI Velocity for accented notes The MIDI Release value for the generated
36. cified right click on the attractor to position the point Max Iterations Display Color Range Olle MT 7 selected in the Starting Points drop down list Random Generator Seed 113839 T Ai Property Editor O J 0 Ex Mandelbrot Set Music The algorithm is used by assigning it to a Track s Attack maces pacer gt 010 Generator variable in the Track s property editor Several CEA setup options exist The specified starting point and mapping l are used with each client Tracks pitch range and duration range variables to generate a note sequence The duration multiplier is applied to the generated durations as normal but is only updated for each new cycle Max Iterations Color Palette eae Bi Kal Julia Set Music Starting Point lb liz NAN y NAN Depending upon starting position both Mandelbrot and Julia Set pe seats functions may or may not reach their escape limits therefore may generate an infinite series of values The start of iteration to the reaching of the escape limit is considered a cycle for purposes of Imaginar gt Pitch Real gt Duration C Imaginar gt Duration Real gt Pitch evaluating a new duration multiplier The image colors are not used in any way for composition 73 IMAGE TO MIDI The Image to MIDI algorithm converts Image le HE amp inital Setup m EJES color information into note
37. d 20 43 For many of the functions you can special the time period the function operates over to be the duration of the owner component event or the phrase length For example e You might use the phrase period option for example to apply different Note Generation Probability contours to different tracks as a means to create varying instrumental textures within phrases e You might use the event period option with the ramping functions to create a continuous dynamic change over the entire length of a segment ACCOMPANIMENT PATTERN MIDI Track Component Attack Generator variable LO 2 The Accompaniment Pattern algorithm is designed for Ad E Bass_11551155 sw GD ay generating Accompaniments Ostinatos or Riff based lines that follow a scale or chord progression in a harmonically eae Always E 6 defined context y 5 k 4 E 3 E 2 3 i The highlighted row corresponds to the scale or chord root el depending upon selected options Other pitches are ica toc generated relative to that reference pitch The vertical units correspond to scale or chord pitch indices for scale and chord patterns respectively for chromatic patterns each vertical unit represents a semitone e Adda potential note attack by selecting a probability level from the right hand generation probability menu and left clicking in a pattern cell e Right click in a cell with an attack to acce
38. d transforms to the Row Transformation list by clicking on the Edit button Use the Transforms List window that opens to edit the list of row transforms to apply Na Serial Matrix joa P7 e D b GC FR c F B A A R7 P11 AF B D G D a l l6 e re Ru Pa F FR Af D A E lee p c c me Po lr la fic le Ja Jos ce las Jo ce rs 6 Rio PS e c lo I le Je Jos c Je las lee la IRS PS lar E F a lo ct Ire los e cr Bb c rs A c FS C Transforms are labeled P2 c G ct c F b A Fe as E bD De RIO RIG RI7 RI11 RI4 RIO RI8 RIS RIS RIB RIL RI2 m 76 During composition pitch values are assigned sequentially from the serial melody until all pitches have been used the series will be reused as necessary during the composition process At the start of each new melody cycle the next transform is applied to the initial row to determine a new melody sequence Note All clients sequentially draw pitches from the same ordered pitch row The Chords option provides capabilities for using un ordered pitch sets Two un ordered pitch sets are always created a chord and a scale Chords of the specified size are derived from the current active transformed pitch row with an additional optional transform applied The scale is always the pitch set complement of the chord i e the scale contains all the tone row pitches that are not contained in th
39. dratic Attractor FUnCtiOnS sssssseeesssseersssssrressssrresssserresssrrressssrrressserresssereessserressserreeesene 54 Medi Pates ads 55 Metric Ataca aa 56 Metric Valles iaa 56 omamen atone codo eee ee as uatu le 57 o A 57 PRIN CLO e E E E O E nnn alo as heteoust saci nes E leas Season dasa T 60 BYE IALC G 6 AA O 61 SCPE FUNCION naaa ada eames 61 Textura IMSEFUMOENT Grid ae 62 eXTUre INSEFUIMEGNE LES a Masia aera asia lot acta alent 63 textures Orchestral RINE E cosilla ici iii 63 WIK ONO WEI AP O o A cence 64 Vales baaa 65 Over viewor Algorithm Component 66 Basic Harmony AlcortamComponentna ia iii ose ae 67 Harmony Component Varias ina 67 Aleonthmic Scales COMPONEN bici ai 69 Algorithmic Scale Component Variables oooononcononocnonociononaononoonorocnonariononasionoonarennoneriononasiononaarens 69 Algorithmic Chords COMPONER 70 Algorithmic Chords Component Variables ccccccssseccccsseccccessccccesececeeeceeeeecceseeseceseenecesseeceetegeeeetas 70 Chord Proeressi n Componer tinas 71 IES and Quaaratie MUSIC COMPONENTS id a A A 72 Mandelbrot and Julia SetMUsiCia ia 73 Mc A voce tea setnaong aces sesame sone nodes a 74 A T susnuoelauac e EO nates 75 SON de 76 Be co A O E O 79 Ansone sPUCS ana Temps oa 80 FR PI e e PCR e o A A E ata ne peal E E 81 A A eee ae tee ties 82 System RE quemen ts atacados 88 Copyright ana License ico 89 A O andepasu tinea A EE EEN E E E ET 89 A E E E A NEOA 90 CO
40. e chord Chord changes are synchronized to the use of the ordered pitch set 3 pitch class chords will change each time 3 different pitches are drawn from the tone row 4 pitch class chords will change each time 4 different pitches are drawn from the tone row etc Tracks select the chord or scale pitch set using its harmonic variables Itis important to remember that chord changes require a track assigned to use the ordered pitch set There are two ways for Tracks to use the ordered pitch set after adding it to your project 1 apply the Serial Pitch function to a track s MIDI pitch variable or 2 apply the Serial Attack Points function to a track s Attack Generator Both connect to the same series of pitch values After adding the Serial Pitch function to a track s pitch variable no additional setup is required Pitches will be drawn from the row as the track requires new pitch values The Serial Attack Points function based on Milton Babbitt s time point classes does have setup options ki Time Points Editor l Sy E E A coefficient row analogous to a pitch class tone m 062887451934 112 l row is converted to time points and the durations iw Syne Client Attack Phrases Generate Attacks Only between successive time points are used to proportionally subdivide the overall composition Row Transhormations prime Edit time 77 An important difference between pitch classes and time point classes is
41. e Description Scale Transpose 0 to 100 Sets the probability that the scale root will be transposed Probability Transpose Amount 11 to 11 Sets the amount of root transposition 67 Scale Evolve 0 to 100 Sets the probability that the non root scale pitch will be Probability transposed Pitch Evolve 6 to 6 Sets the amount of scale pitch transposition Magnitude Harmonic Density Oto 4 Potentially adds additional pitches to the basic triad value 0 adds no pitches value 4 adds up to 4 pitches The specific number and type of added pitches follows general pitch extension guidelines After algorithmic composition all the generated scales and chords are available for editing Select the harmony component in the Component Pane and click toggle between Edit Event Edit Scale Edit Chord options on the right hand side of the Main Workspace Track 1 status bar see figure 12 Track 2 Edit Chord 12 13 29 PM You can also toggle between component event types for editing by selecting the component and using the ALT key Double click on a chord or scale to open its editor ie E d foma a OO Pitch Set CEG POE In the Chord or Scale editor use the Preset List to a C F Gb G Ab A Bb C C Db D E CF CIG CA CB change the chord or scale New chords or scales can also be created and saved via the Preset controls Click in the keyboard to toggl
42. e Project Editor and the MIDI Note Editor Editor Quantization This drop down list sets the display quantization value for the currently active editor Y Zoom In FO Magnifies the view in the Project Timeline Zoom Out Ctrl F9 De magnifies the view in the Project Timeline An upper limit constraint corresponding to about 4 x Project Length has been added to the ZOOM OUT level p Aa as Toggle Zoom Shift F9 Toggles between a minimum and maximum magnification level for the project Fs Help Manual F1 Opens the ArtSong User Manual e y Windows Dropdown menu for arranging and selecting the active project Management window BA a Compose gt T O 1 01 000 p Figure 3 Project Toolbar Project Properties F5 Opens the project editor for the active project Composition Script Toggles activation of an associated Composition Script When present and activated a composition script gets executed at the start of each composition session i Composition scripts are assigned in the project properties editor 58 Compose Compose F3 Starts and stops the algorithmic composition process 10 j Play Space Plays the active project Wi Pause Play Pauses resumes play of the project in the active editor a Stop Esc Stops any playing and composing activities Play Time The project time position being played Loop Play When activated playback will restart when the project end is reached 2 MI
43. e in other tracks or projects enter a name into the combo text box and click the theme save button circled above to save the theme 37 e The blue areas of the note grid represent the current set pitch range for the underlying Track the red area represents out of range pitch values This display is merely for reference it has no impact on the generated themes HT The User Theme can be configured to use the theme as defined in the theme editor These transpose controls can be used to position the theme relative to the pitch range of the track USING A USER THEME Using your custom themes requires adding the User Theme function to the Track s Attack Generator variable This can be done by toggling the Theme Wizard button in the Theme Motive Editor page or by manually assigning the User Theme from the Variables Grid page RN eer Theme Attack Generator Rhythmically the theme is applied similarly to the Melodic Pattern function At the beginning of each theme Ale e anew starting pitch is generated using the Track s is is my new saved theme Pitch Variable function if one exists and the remaining theme pitches will be generated relative to this new starting pitch All pitch values are filtered through the track s harmony variables Figure 32 User Theme Function e aduration and a duration multiplier value are generated to produce a duration adjustment which is applied to the duration of
44. e pitches on or off masks are always relative to C root The pitches belonging to the actual chord or scale are shown in the Pitch Set 68 ALGORITHMIC SCALES COMPONENT ig Property Editor Algorithmic Scales SAEI C Initial Setup Starting Root Scale Options Ic y p lt a LES This component algorithmically generates a series of scales during the composition process Root Progression Scale Type 1 Third Harmonic Minor 2 DiatonicReotVerable AAA After algorithmic composition all the generated scales are available for editing Random Generator Seed b ALGORITHMIC SCALE COMPONENT VARIABLES Variable Scale Option Diatonic Scale Root Chromatic Scale Root Scale Duration Duration Multiplier Value range na 1to7 Oto 11 1 to 32 measures 1to 16 Description The value refers to one of the numbered specified scale options on the setup page The value corresponds to one of the scale pitches 1 root 2 second 3 third etc The value corresponds to a chromatic pitch O C 1 C Db 3 D e D Eb etc Scale durations values represent measures and are specified in terms of a duration multiplier combination This variable corresponds to the duration portion Scale durations values represent measures and are specified in terms of a duration multiplier combination This variable corresponds to the multiplier portion
45. each generated theme note There are two additional configuration options available shown in the Table below Restart theme on beat The default is to start the theme on a measure each time it recycles select this option to restart the theme on the next beat ERA Rhythm only Select this option to only use the theme s rhythm Pitch will be determined by the tracks Pitch variable 38 TRACK COMPONENT VARIABLES Variable Attack Generator Attack Probability MIDI Pitch Harmonic Pitch Non Harmonic Diatonic Non Harmonic Anchored Pitch Harmonic Range Value range Na 0 to 100 COto G 10 Oto 127 0 to 100 0 to 100 0 to 100 1 to 7 Description This new variable allows user selection of a different note or note attack generation model The default Note Attack Generator model used when nothing else is specified attempts to create a constant stream of note attacks spaced by the generated note duration values The variable represents the probability that a specified note attack will actually produce a note Even at 100 no notes will be produced if other constraints are not also met The variable represents the tracks pitch range The values corresponds to MIDI note numbers and ranges from O to 127 with middle C at MIDI pitch 60 Note pitches are considered harmonic if they are in the current chord This value sets the probability that a generated pit
46. ed for which are basically chunks of time with a formula for Variables proper operation of the Project Form Generator and Value Range Phrase Length Variation Generator functions m This algorithm allows you to create Phrase Groups consisting of up to 8 variable length phrases The number of phrases in each group is fixed Phrase lengths are specified in measures The Phrase Cadence Pause and Group Cadence Pause variables allow you to specify a different rhythmic pause for internal phrases endings and group endings Project or Project Segment endings are set in the Project Properties Editor The pause variable value units are in base duration units bi Phrasing and Cadences The Cadencing page allows Phrasing Variables O you to assign harmonic behaviors individually by Si Track The default behavior IET gt Rhim oriy Pa ea is that Tracks use the cadence Closest Chord Pitch Chord Third d Rhythm only Chord Third Chord Root Chord Third Chord Fifth Chord Fifth Closest Chord Pitch Chord Third Chord Root Closest Chord Pitch For each Track cadence Chord Fifth Chord Root Closest Chord Pitch behavior can be optionally turned off or an additional harmonic behavior added 49 ALGORITHMIC VARIATIONS Project Component Variations Generator variable requires a Phrase Generator function ENAA wn ae ail Variations Editor z This fu
47. ed to determine a position along the horizontal axis and alternating between the upper and lower curve a value is determined at that point Please see the beginning of this section for a description of the function period options The shape of the envelope curve can be adjusted by adding and moving points e Use the Pencil or Eraser tool buttons to add or delete interior points respectively e Move points by clicking and dragging them to a new location end points can only be moved vertically e Set the envelope range of selected point either with the mouse wheel or by holding the CRTL key and clicking dragging the mouse up and down 53 FOURIER FUNCTION General hi Fourier Mapper MIDI Pitch So oe MA E Pak ae oo za The Fourier algorithm provides a cyclic val sine cosine mapping function that can be a applied to a composition variable A amp Coreen veoh EE Ma E 0 75 0 55 0 30 FAN A E F E F ii o A RT ss Complex sinusoidal patterns can be created Yun Yi Shae o l y NAS se i using up to 5 wave components The 4 Component Phase Shift harmonic relationship between consecutive eum eee Wave components and component starting phase can be specified The composition time and function period is used to determine a position along the horizontal axis and the value of the curve is evaluated at that point Please see the beginning of this section for a description of the
48. enerator function 41 MIDI CONTROLLER COMPONENT ff ig Property Editor Controllers 1 o E Gase oo Variable Controller MIDI Ctrl 1 Program Change MIDI Ctrl 2 MIDI Ctrl 3 MIDI Ctrl 4 MIDI Ctrl 5 MIDI Ctrl 6 MIDI Ctrl 7 MIDI Ctrl 8 Value Range Limit Yo Time Base 89 Warm Pad giteesenenenensnsnananenenananananenenanes o Figure 33 MIDI Controller Component Editor MIDI CONTROLLER COMPONENT VARIABLES Variable Ctrl 1 Ctrl 8 Controller Value Range Select MIDI Oto 128 controller from dropdown list The MIDI Controllers component provides a means to algorithmically generate values for up to eight 8 different MIDI controllers Each controller is assigned to a composition variable labeled from Ctrl 1 to Ctrl 8 which can be assigned an algorithm in the properties editor Time Density Tick increment 0 to 100 between successive probability that a generated values value will be generated When importing MIDI files this component will contain the MIDI controller values associated with its owner MIDI Track 42 BUILT IN DRIVING FUNCTIONS AND ALGORITHMS Small dedicated built in functions have replaced the large global mapping algorithms used in previous versions of ArtSong Functions are easily assigned to specific variables in the Variables Grid of the owner components Property Editor When initially as
49. erator Seed 119091 component if it has one Figure 26 Track Properties Editor Variables Page The Track Properties editor has two tabbed sections the Variables Tab and a Theme Motive Tab The E le EB Gs finial setup ol Variables page is a Variables Grid as previously described ee in the Component Property Editor section m mj DAS d a PAAA EI ALU The Theme Motive Editor page is used to create and save custom thematic materials for use with the Custom Theme Attack Generator function Themes are just defined sequences of notes Figure 27 Track Properties Editor Motive Theme Editor Page cannot edit the underlying Track MIDI data from this editor This editor is primarily meant to be used with Tracks containing pre existing MIDI note data from imported MIDI files or created in the MIDI Note Editor 34 If you open the Property Editor for a blank Track and toggle between the two pages you should notice nothing in the Theme Motive Editor note grid If you assign the User Theme function to the Track s Attack Generator variable and then toggle back to the Theme Editor you should see some notes colored blue rather than the specified track note display color These are the randomly generated theme notes created when the User Theme function is created Most algorithms and functions generate an initial random setup when
50. first created The User Theme function creates a four measure long sequence of random notes e You only need to assign the User Theme function to the Track s Attack Generator variable in order to use user themes in your composition projects you do not need the function in order to create and save new themes from the editor The principle controls for creating and saving user Themes are described in the following Table 1 Theme editing and display controls are described in the following Table 2 Table 1 User Theme Creation and Saving Controls Theme Motive Editor Variables a LE gE 7 H Figure 28 Theme Creation and Saving Controls Theme Wizard When toggled on or off a User Theme function will be added to or removed from the Track s Attack Generator variable ee Theme Clear Clears the current theme notes from the theme and editor E Random Theme Generates a 4 measure long sequence of notes having random pitches paf Theme Generator Creates a new theme from the notes in the selected section of the underlying MIDI track ee Theme Management Load Save or delete a stored User Theme 35 Table 2 User Theme Editing Controls tH EE 949 Figure 29 Theme Editing Controls These work like the corresponding controls in the MIDI Note Editor but only operate on the current user theme not on the Tracks MIDI data al 3 Sets both note S
51. ges Please note that preview is primarily for Track components and some algorithms it is not enabled for all components VARIABLES GRID DEFINITIONS A component s composition variables are displayed in a variables grid similar to that shown above with each variable represented by a row in the grid Column Variable Value Range Limit Function Setup Description Variable Name Variable value range and starting value actual range varies by variable Value ranges from 0 to 100 This value represents the maximum allowed difference between successive values expressed as a of the total range Algorithm assignment If an algorithm is not assigned to the variable the value will remain constant and equal to the specified starting value Some algorithms display a setup string The grid contains the following information Comments not editable Variable range and starting values can be edited in place or using the larger data control below the grid See Figure 18 below Click in the cell for a spin edit box Drop down list for selecting algorithm See Figure 19 below Select cell and click the button to open the selected algorithms setup editor See Figure 20 below VARIABLE RANGE CONTROL BAR A composition variable s value range can be either edited either in place within the variables grid or with the larger range control below the grid Variable data range controls display t
52. he minimum and maximum values allowed for the variable the current low high range setting and the starting value vertical red line During composition generated values should only vary within the high and low range you set for the variable 23 Range Low Value Starting Value Range High Value _ S R a a Minimum Value Maximum Value Figure 18 Composition Variable Range Bar e Set the variable s range by left mouse clicking and dragging in the control s value range area e Set the variable s starting value by right mouse clicking in specified low high range area VARIABLE FUNCTIONS Clicking in the Function column of the Variables Grid will display a drop down list of algorithms or functions that can be applied to that particular variable Select a function to assign to the variable or select the None option to remove an assigned function Figure 19 Variables Grid Function Dropdown List VARIABLE FUNCTION SETUP Most assignable functions have user adjustable properties which can be accessed by clicking into the Setup column of the Variables Grid The individual built in functions are described later in this manual ELLUN E ELPU LAL y Harmonic Pitch Y 100 O ad ee e N H ic Yo Diat ES 100 00000000 A ne A E IESS Figure 20 Variables Grid Function Setup 24 PRESET MANAGEMENT Setting up the various project components to do what you want during the composition process is
53. he project Composition scripts are essentially utility scripts that are run each time the compose process is started Scripts can be attached to a project but will not automatically run unless the script is turned on in the main workspace window see Figure 3 PROJECT TRACKS GRID The MIDI Tracks grid of the project editor provides an alternative quicker way of setting up projects You can assign Presets to each MIDI Track specify a pitch range to allow you to override the range in the preset and assign MIDI instrumentation The Preview Play button at the top of the editor generates and plays about 8 measures MIDI Tracks Fiddle Fiddle Fiddle Banjo Initial Setup Initial Setup Initial Setup Figure 25 Project Tracks Grid i e MIDI tracks can be quickly added or deleted using the Track Count spin box on the General Toolbar Tab e The number in the first column of each Track row is just a numeric identifier Clicking in this column turns Composition On or Off for the Track this is the same as right clicking on the Tracks Instrument panel This status is not saved with the segment data 30 The column with M can be used to Mute the Track this works the same as clicking in the Mute button of a Tracks Instrument panel This status is not saved with the segment data e The column with S can be used to Solo the Track This works the same as clicking in the Solo button
54. hil Property Editor Synth Pad 1 eh EE dE initial setup O eile Variables Variable Value Range Limit o Attack Generator n a n a Attack Probability 100 MIDI Pitch am 100 Harmonic Pitch 100 gm Random Generator Seed y Ok iti qF Tempo 120 a hi 1 Contour MIDI Pitch ae I I L z n PZA 2011 by David Strohbeen Manual Version 7 2 x IBE TZE 32 22 AM CONTENTS introduction TO ARS is 5 A o A o Oo A 6 Composition Variables And Driving FUNC IONS cccooccnnccnncnnnonaconnnnnnonnnnononnnonaronnonanonnnnononnnonarnnnonanonononass 6 COMPONENTS and Component EVEN ansiosa anida 7 A E A sees teen ceeses 8 ArtSong WorkSpace ecescecsescesssescescesceccescescesessecsecsecsececcsscacesecsecsecsecsecsecsacesecaeesecsesaessucesesceaseaseaeeecsrearens 9 Jo nn a e ee E A 12 IMStrument Panel Sra 13 A O a e o E O e A 14 age 210 6g Etor Status Drs os 15 IVT NOR EGO usara caos 16 Selecting Components in the Component Lists ccooccccnnccnnnnccnnnacononacononanononanononacnnonannnnarononaranonananonas 18 Selecting Time Ranges for Editing And Playing ccccooccnncnnncnnnnnaconnonanonnnnononononaronnonanonnonanonnnonaronnonanonos 18 SIGE NUNS iia 20 Component Property EON raras 22 variables Grid DETIMILIOINS rar 23 Preset Managemen eeneioe E 25 ss A A E E EE A 26 POSTE OPO NS NE e EE E EA E N 27 General Toolbar for Project rana oie 28 General Toolb
55. ient track must assign the META i lam percussion kit function to their Attack Generator variable The pattern length control sets the number of potential attack points in the pattern Actual generated note durations are determined by each Random Generator Seed a client tracks duration and duration multiplier variable values Maximum pattern length is 96 attacks e Clickin the key board area on the left hand side of the grid to toggle on off all cells in that row e Left click in an individual cell to toggle on off a note attack having the specified generation probability from table at right e Right click in cell with an attack to toggle on off an accented attack Up to 8 simultaneous notes can be generated Generated pitches are not filtered through a Track s harmonic variables and therefore are not transposed or affected by changes in harmony This algorithm provides the capability to abstract a rhythm from an underlying track see controls circled above and save it as a percussion preset e Use the dropdown list to select a Track and click the button at the left of the drop down to generate the pattern from the track e The pattern will be abstracted from the specified track starting from the start of the component event or the beginning of the composition quantized by the base duration unit and having a maximum pattern length of 96 base duration units or
56. in the grid Long Appogiatura Short Appogiatura On Beat Short Appogiatura Before Beat Double Appogiatura Mordent Double Mordent PROJECT THEMES MIDI Track Component Attack Generator variable aia za Assign the Project Themes function to a E IO Track s Attack Generator variable to connect the track to the Themes generated by the Project s Form Generator function Several composition variable options exist and are described in the following table 57 Table 4 Project Theme Application Variables Variable Value Range Part Definition Option 1to 18 Variation Probability O to 100 Transpose 12 to 12 Delay O to 64 Description The value corresponds to an index of an option row in the Parts grid on the Shared Parts Descriptions Tab of this setup editor At the beginning of each theme an option row to apply is selected Part Descriptions provide additional points of control over how a theme gets applied This value is generated and used at the start of each new phrase to determine whether a generated part is based on the normal unvaried theme or the varied theme This value is generated at the start of each new phrase and used to transpose the generated pitches of all notes generated from theme This value is generated at the start of each new phrase and used to offset or postpone theme note generation The value time unit is Base Duration units At the
57. ion This variable corresponds to the duration portion 70 CHORD PROGRESSION COMPONENT tandom Generator Seed Value Chord progressions are created by drawing chord events into the timeline of the Chord Progression component The editor shown at right allows you to specify both a chord and a local scale Created chord progressions can be saved as presets The Chord Progression component has been replaced as the default harmony component in ArtSong 7 This component still represents a predefined static series of chords each of which can potentially define an optional local scale This component has no user settable properties or variables Progression Chord D CE F Gb C G Ab C A Bb Db D Eb CF CG CA B Random Generator Seed 137737 a iF 71 IFS AND QUADRATIC MUSIC COMPONENTS Bal Property Editor E The IFS Iterated Function System and Quadratic IFS Attractor Music Attractor Music Algorithms both use function attractors to generate note pitch and rhythm information Up to 8 trajectory starting points can be specified right click on the attractor to position the point selected in the Starting Points drop down list Right click and drag to change the attractor limits Random Generator Seed 12419 Quadratic Attractor Music O A inital setup m Start Points 2 x 0 769492 The algorithm is used by assigning
58. lculate the final note duration The duration multiplier values only changes at the beginning of Image to MIDI a new pattern cycle Text to MIDI 66 BASIC HARMONY ALGORITHM COMPONENT The Basic Harmony algorithm replaces the Chord Progression component used in earlier versions of ArtSong as the ee default harmony component This new Rate Ji 0 mv v z cen ichordper Measure x fe algorithm component creates a repeating harmony based on a specified Diatonic Root Diatonic Type ma progression measure length chord Diatonic Root Diatonic Type Diatonic Root Diatonic Type rhythm rate and progression generator Diatonic Root Diatonic Type ii Diatonic Root Diatonic Type model Diatonic Root Diatonic Type Diatonic Root Diatonic Type Diatonic Root Diatonic Type During setup the component creates 11397 enough generic chords to fill the specified progression length at the specified chord change rate A progression model determines the actual chord root progression for the generic chords The chord models roots and types are all editable in the chords grid e XY represents a series of chord roots generated using standard conditional root progression probabilities ala Walter Piston or Thaddeus Jones see References e Random represents a series of chord roots generated using an equal probability model HARMONY COMPONENT VARIABLES Variable Value rang
59. lly reconfigure their variable settings during the composition process For example project component segments can be added to create sections having a different meter and instrumental textures tracks segments can change note generating algorithms the Harmony components can change harmonic progressions etc At the start of each algorithmic composition cycle any data generated by a component during composition such as chords or MIDI data are erased to be regenerated during that cycle but the content of individual tracks can be retained SETUP AIDS Most of your time in ArtSong will be spent setting up projects Several options exist to facilitate project setup e Save your intermediate or finished projects as Project Templates for reuse in the current or later projects A few example templates are provided e Save individual component configurations as Presets for reuse in the current or later projects Some example Track Presets are provided e Most components and algorithm function are created with an initial random setup and provide a randomization function that generates random configurations This makes initial experimentation easier ARTSONG WORKSPACE g Demo CIA ee a Bek Project insert EDO Mito gt f mM 1 01 000 ale ez a gt roject Editor Project 2 03 000 Project 2 Figure 1 Main Application Window with Project Editor When ArtSong launches the main application window opens
60. me from the Event Name Text box at the left If another Preset with that name already exists a confirmation dialog will appear to make sure you want to write over the original Preset o O Click Erase to delete the selected preset from that component types preset storage 25 RANDOM SEED Components use random numbers in a variety of ways during the algorithmic composition process The most obvious use is the random value generators but random values are also used with probability and percentage based variable calculations decisions and generating IFS Attractors Each component maintains its own random number generator At the beginning of each composition cycle a new random seed value is generated and that seed is used to generate the sequence of random values used by the component Since the component uses a different sequence of random values for each composition cycle there will be a natural variability in the composed results When a component property editor is opened the most recently generated random seed value is displayed at the bottom of the editor the Random Generator Seed textbox See also Figure 17 Figure 22 Random Seed Seed values can be manually entered or pasted from the clipboard A specific random seed value or can be locked in by clicking on the Lock button to the right of the seed text box at the bottom of the component s property editor When locked the random generator will use the specified seed value
61. me gets applied WITHOUT any modification with aggregation coefficients or the attack strings Note Articulations are determined by the Track s Articulation Variable Theme gets applied as above but with inverted pitch contour Note Articulations are determined by the Track Theme gets applied WITH modification by the aggregation coefficients or the attack strings Note Articulations are determined by the Track Theme gets applied as above but with inverted pitch contour Note Articulations are determined by the Track Theme note pitch gets determined by the Tracks Pitch algorithm rather than the theme Note Articulations are determined by the Track 59 Legato Options Theme note articulations are set to 100 Staccato Options Theme note articulations are set to 40 and the note is accented Sub figuration The Attack Type String is used to extract a figure from the theme that figure gets repeated as necessary until the end of the theme is reached Table 5 Shared Part Pitch Options Aggregation Coefficients are used to reduce the number of attack points in the theme by aggregating adjacent notes into a single attack the coefficients determine the number of notes to be aggregated Tracks using Part Definitions containing aggregation coefficients do not use the varied from of the motive RANDOM General hil Random MIDI Pitch Distribution Type Fractal Correlation Coefficient 60
62. nction applies variations to the themes E i generated by the Algorithmic Form function Variations Hi Note Alteration Probability Variations are only applied after the first phrase 100 100 100 100 100 100 100 100 group has completed themes during the first phrase group will not be varied ae O SEI cle O hk Y Up to 8 different variations can be specified with each one having an overall application probability represented by a composition variable For each new theme after the first phrase group this function iterates through each variation option and tests its application probability variable to determine whether to apply the variation or not Variations are not cumulative from phrase group to another each time the theme changes a new theme variation set is generated When a particular variation is applied to a theme its Note Alteration Probability is used at each individual theme note to determine whether or not to apply the variation to that note Set the Note Alteration Probability to 100 to apply the variation to every note Table 3 Theme Variation Types Variation Data Description Dublet 12 to 12 Splits each note in the underlying motive into two notes The data parameter is used to adjust the note pitches of the added notes Triplet 12 to 12 Splits each note in the underlying motive into three notes The data parameter is used to adjust the note pitches of the added notes
63. nents have survived and some new ones added This section contains some general comments about the current algorithm components following sections describe each specific algorithm The algorithmic harmony related components have been enhanced modified to use the new composition variables and a new Basic Harmony algorithm component added Using these components has not changed just add them to your project and the scales chords generated will automatically be used by the composition engine A notable change is ArtSong now persists the chords and scales so they can be edited Please remember to turn compose off for any components with edited chords and or scales so your customizations are not removed with the next compose cycle The percussion algorithm still exists The component needs to be added to your project and client tracks must assign the Percussion Kit function to their Attack Generator variable in order to use it Generator Algorithm Several new generator algorithms have been added After addition toa Component project these also require client tracks to assign the component supplied IFS Music function to their Attack Generator variable in order to use it Quadratic Music l l l l These algorithms generally use the client Tracks pitch range and duration Mandelbrot Music range for note pitches and duration A client Tracks duration multiplier Julia Set Music value is applied to the above duration values to ca
64. nges from to 1 to 8 with each value representing one of the 8 themes HOW THE ALGORITHMIC FORM FUNCTION WORKS The Thematic Sequence variable is evaluated at the beginning of each phrase a theme is selected and if not already generated the specified theme s algorithmic function will be used to generate the theme The length of the generated theme will be equal to the phrase length If a theme without a generating The value range for each theme determines the generated pitch range for the theme This variable only controls the starting pitch and the pitch span of the notes in the generated theme When the theme is applied to the track the final pitch values will be controlled by the track s pitch variable settings the applied Part Definition and any active theme variations These latter are covered in more detail in the Algorithmic Variations and Project Themes sections 45 If the phrase lengths are constant the same generated thematic material will be used through the project However each time a theme is applied to a different length phrase it will be re generated to the appropriate length For example if Theme 1 is initially generated to a 4 measure phrase length and later applied to an 8 measure phrase it will be re composed to fit the new length ALGORITHMIC FORM THEME GENERATING FUNCTIONS The two built in Theme Generating options are described below Several of the external algorithms such as the IFS
65. nges will not be sent Any changes to the track MIDI settings at the start of the segment will revert back to the original settings at the end of the segment Each Track can only have one MIDI Channel which does not change during the composition process at segment boundaries Channel changes are always immediate PROJECT COMPONENT VARIABLES Variable Value Range Description Tempo 10 to 240 Beats per minute Phrase Generator na Select a phrase generator function Form Generator na Select a form generator function Texture Generator na Select a texture algorithm Harmony Generator na Select a default harmony generator Attack Probability Scaling 0 to 200 Scaling factor for attack probability values generated by contained track components MIDI Velocity Scaling 0 to200 Scaling factor for MIDI Velocity note volume values of contained track components MIDI Release Scaling 0 to200 Scaling factor for MIDI release values generated by contained track components MIDI Aftertouch Scaling 0 to200 Scaling factor for MIDI after touch key pressure values generated by contained track components Articulation Scaling 0 to200 Scaling factor for articulation values generated by contained track components 32 GROUP COMPONENT Group Components are used to group other Do components together Group METE fritalseup E Jolo e To help organize large projects This space intentionally blank e Append textual commen
66. ns with conflicting constraints ArtSong does not generate notes if it cannot meet all active constraints If you encounter sections where notes are not being generated and you think they should be please review your variable ranges especially the pitch related variable ranges Normally it is recommended that track pitch ranges be at least 1 octave wide and the track harmonic range be set to full range e The change limit can be used to impose a limit on the maximum difference allowed between successive variable values as a percentage of the total range e Driving functions refer to the small dedicated functions or algorithms which can be assigned to an individual variable to provide specific dynamic variable behaviors during the composition process The current library includes functions ranging from user specified value sequences contour following value sequences ramp functions and sinusoidal functions to more complex chaotic or stochastic variable value behaviors ArtSong implements many probability based decisions as variables e g the MIDI Tracks Attack Probability variable Implementation as a variable allows you to assign a function which can alter the probability based on metric position phrase position or other criteria Special generator variables such as the MIDI Tracks Attack Generator or Chord Generator variables are only used to assign different types
67. nt and a project timeline for inserting component events e Load and save files from the menu accessed with Files Button e Compose and play a project from the Project Toolbar e Insert edit and delete components from the Insert Toolbar e Timeline magnification and quantization are set in the Quick Menu e Project starting tempo is set in the bottom status bar Zo Toolbar 22 01 000 almis E Example6b3 ampr Project Timeline i ie Chord Progression l EA COLAS Copy of Violin Copy of Violin ena ee fol Violin Edit Chord 3 47 44 PM Figure 5 ArtSong Main Workspace and Project Editor e All components have an initial configuration which is edited by double clicking on the component in the tree view list and opening its properties editor shortcuts F5 opens the project s property editor F6 opens the focused components property editor 12 INSTRUMENT PANELS e Left clickon a MIDI Track or Controller hi Midi Track 1 MIDI Device Channel and Patch component s instrument control panel to open Pe resetea its MIDI Instrument Editor shortcut F7 ja 99 Warm Pad y Clear Patch Volume lt Ed Pari lt bd Port Time A 0 ArtSong allows output to multiple devices but uses the default MIDI output device if no fees j Chorus T particular device is specified For best results Sa es when using multiple o
68. nt that attack e Left click again in a cell with an existing attack to remove that attack Each horizontal cell represents a potential attack time the note duration is determined by the client Track s duration and duration multiplier variable values For accompaniments multiple simultaneous pitches chords can either be directly specified in this grid or a chord generator function applied to the track 44 ALGORITHMIC FORM Project Component Form Generator variable requires a Phrase Generator function Ma Forms and Themes Musical form is usually described in terms Variables Variable Value Range Limit Function Setup of thematic sequence for example ab ee on oo bio aisle and aba forms both refer to specific Theme 1 Generator am 100 Algorithmic Theme Metric Attack Theme 2 Generator an 100 User Theme sequences of 2 musical themes tm a o EEN represented by a and b Theme 4 Generator ag 100 Theme 5 Generator aa 100 Theme 6 Generator un 100 Theme 7 Generator ae 100 A na ai ArtSong provides the Algorithmic Form i 5 C6 function for controlling thematic co m G 10 a sequence The Algorithmic Form Ok function allows you to specify up to 8 different themes or motives and use a composition variable the Thematic Sequence variable to algorithmically control the thematic sequence The Thematic Sequence variable ra
69. of beats The number of beats per measure and the note value which constitutes a beat are indicated in the Time Signature of the composition See Meter below Meter is the regular pattern of accented strong and unaccented weak beats within a measure Meter is indicated at the beginning of a composition by a Time Signature Tracks use this value to generate a volume accent which modifies generated note volumes Both Accent and Volume are Track composition variables Patterns of beats can be grouped hierarchically into larger groups These higher level groups can be thought of as having higher metric strength Any beat occurring at a hierarchical level of beat group or higher is considered a strong beat ArtSong uses the simple hierarchy of increasing metric strength shown below Beat gt gt BeatGroup gt gt Measure gt gt Phrase A note is a sound having a distinct pitch volume duration and sound quality or timbre This term can refer to both the amount of time available for a note i e classical note duration or the amount of time the note actually sounds 84 Note Pitch Octave Orchestration Classical note durations are used to indicate time signatures and note attack duration quantisation For most other purposes ArtSong uses a finer division called the tick 240 ticks are defined to be equal to a quarter note Pitch related to sound frequency refers to the relative highness
70. on relationships There are several algorithms that allow you to define patterns which can then be applied over and over A phrase represents a complete musical idea ending with a cadence An analogy is often made between a phrase as a complete musical idea ending with a cadence and a sentence as a complete idea ending with some sort of punctuation Extending the analogy a bit further a phrase group might represent a paragraph In traditional western music phrase lengths are often multiples of 2 measures with 4 measure phrases being the most common See Note Pitch ArtSong component Presets consist of an individual component s setup properties saved for reuse All components can save Presets Quantization refers to both the process and result of mathematically forcing event start times and or durations to whole number multiples of some base value the quantization value which is usually one of the classical note durations Rhythm refers to the pattern s of the sounds in time 86 Scale Sequence Style Tempo Tick Timbre A scale can be broadly defined as any serially ordered subset of notes in an octave The root of the scale is the 1 note e g Dis the root of the following scale D E FH G A B C D When a scale is moved to a new root transposed the intervals in half steps between adjacent notes remains constant Transposing the above scale by 2 semi tones yields E FH GH A B CH Di
71. ons are built upwards from an initial generated note pitch Closed Chords are built with adjacent chord pitches Open Chords are built with every other chord pitch Thickened melodies are built with adjacent chord pitches Widened melodies are built with alternating chord pitches 51 CONTOUR FUNCTION General The Contour function allows you to draw a specific value curve for your composition variable Left click and drag to draw your contour curve The top of the contour range corresponds to the variable HIGH value the bottom to the variable LOW value The composition time and function period is used to determine a position along the horizontal axis and the value of the curve is evaluated at that point Please see the beginning of this section for a description of the function period options ECHO General Bl Echo Effects Generator The Echo function is used to repeat a generated Ea ela note The number of repeat notes to generate delay between notes in Base duration units and volume decay levels can be specified or assigned to other variables 52 ENVELOPE FUNCTION General i Envelope MIDI Pitch The Envelope function returns values AE A La Random A 2 that oscillate between the specified upper and lower bounds The top of a the Envelope range corresponds to the variable HIGH value the bottom to the variable LOW value The composition time and function period is us
72. or lowness of a sound Not every possible frequency in the audio frequency spectrum is used in Western music Instead the audio frequency spectrum is divided into octaves each of which are further subdivided into 12 half step intervals Only the notes at those intervals are named An octave is defined as the interval between a pitch of a particular frequency and that at twice the frequency In Western music each octave is subdivided into 12 intervals called half steps or semitones This series of notes each one half step apart comprises the chromatic scale The chromatic scale starting on C is spelled C CH or Db D D or Eb E F F or Gb G G or Ab A A or Bb B The note names in parentheses are alternative spellings In ArtSong a numeric octave designation is often appended to the alphabetical note name to identify specific pitch names that specific pitch can then be equated to a MIDI note number Middle C is C5 or MIDI pitch 60 MIDI pitch O is CO Orchestration is the process of deciding which instrument set of instruments or sound is used to play particular parts or sections of music See Instrumentation 85 Part Pattern Phrase Pitch Preset Quantization Rhythm The term part refers in ArtSong to the series or set of notes that would be played by one instrument or voice A Pattern in ArtSong is a group of notes having some fixed pre defined pitch interval and durati
73. pace during installation process e MIDI soundcard or external MIDI device 88 COPYRIGHT AND LICENSE ArtSong is Copyright 2004 2010 by David Strohbeen ALL RIGHTS RESERVED If you cannot agree to abide by the following terms and conditions you should not use or evaluate ArtSong A ArtSong is copyrighted software provided at no cost for a 20 day trial evaluation You may share the trial package with friends but you may not alter the package in any way nor charge any fee for its redistribution Registration is required to continue to use ArtSong after the evaluation period B Upon payment of the registration fee you will obtain a personal software license key which will allow you to continue to use ArtSong on one computer ata time You may install an individual copy simultaneously on one computer at work and another at home if these computers are used primarily by you and there is no possibility that the computers will be in use at the same time except when actively transferring files between them C The program license key is non transferable You must agree to not publish transfer or otherwise distribute this key to others Download the most recent version of ArtSong http www artsong org downloads artsong zi PURCHASE A software license key is required to use ArtSong after the evaluation period You can purchase a registration and obtain a license key via secure server starting at http www
74. pitch relationships specified in the pattern grid each vertical cell represents a semitone Actual generated pitch values are determined both by the pattern data and the client track s pitch variable settings In contrast to the accompaniment grid each horizontal cell in this grid represents 1 base duration unit and the length of the pattern refers to the base duration length of the pattern rather than the number of attack points in the pattern The client track s duration and duration multiplier variable values are applied to each pattern note s base duration to generate the note duration If a function is assigned to the duration or duration multiplier variable those variable values will change only at the beginning of a pattern cycle so the internal rhythm of the pattern is not affected Use the Pitch Range and Pattern Length track bars to set the overall size of the pattern grid Adda potential note attack to your pattern by selecting a probability level with the probability menu located at the right of the window and then left click in a pattern cell and drag the pattern note duration to the desired length 55 METRIC ATTACKS MIDI Track Component Attack Generator variable The Metric Attacks function is loosely based on current metric theories of melody Pattern Repeat Length Chord Change Probabilities Base Probabilities Beat Value Modifiers The function works by crea
75. rate hana the editor opens Select an existing script or enter result randomrange composer s3crvar low composer scrvar high end a new script in the to om J 0 tn dd Li Ni PE provided editor Algorithm scripts can be saved from the Script Algorithm editor by entering a name in the drop down list box and clicking the Save button Script functions can be called 1000s of times during the composition process so should NEVER use any type of forms or dialog windows Algorithm script source code is saved with the composition variable TEXTURE INSTRUMENT GRID Project and Group Component Texture Generator variable Ata Texte Grad Texture functions use a change rate Change Rate Units variable with the specified units to Attacks Beats Weasures Phrases determine when to trigger a texture change The Texture Grid algorithm uses a data grid of track composition probabilities each grid column corresponds to an instrumental texture When a texture change gets triggered the Textures Grid algorithm uses a Texture Index variable to determine a grid column and the corresponding probabilities are used to determine whether to turn a track on or off When the note attack limit value is set to greater than 0 it provides an additional upper limit on the number of attacks that can be generated simultaneously 62 TEXTURE INSTRUMENT LAYERS Project and Group Component Texture Generator variable
76. rned off When the note attack limit value is set to greater than 0 it provides an additional upper limit on the number of attacks that can be generated simultaneously 63 TRACK FOLLOWER MIDI Track Component Attack Generator variable o Mitac aa This function allows one track to imitate another track The incoming track notes to imitate may be Trumpet ff OOO generated any time prior to or at the same time as Constraints the client track Use the Music Time control to set E the start time of the notes to copy Use Source Rhythm Only Attack Aggregation Coefficients In addition to the basic pitch constraints several pitch transformation options exist e Preserve Harmonic Context attempts to use the same in priority order 1 chord function or Coupling Transpose UP 1 Octave 2 scale function as the original note For example Transpose Mirror aiso H if the pitch of the source note is the chord root eee e then the imitated note pitch will be the root of the current chord e Use Source Rhythm Only completely re generates the pitch information The Attack Aggregation Coefficients string feature allows you to generate a single attack in the client track for each x number of attacks in the source track where the value of x comes from the coefficient string The Tranformations options provides some additional variations to apply to the source note pitches as
77. rty editor Opena component s property editor by either e double clicking on the focused component in the Component Pane or F6 shortcut to edit the initial default settings e double clicking on a component event in the Project Timeline to edit the settings for that segment All component property editors share a common structure At the top of the property editors from left to right are a Reset button a Randomize button a Preview button a segment or event Name text box and a drop down event display color control The upper right contains the preset management tools discussed in a latter section 4 Ail Property Editor es E Reset Randomize Preview Event Name Display Color Random Seed gt 1 E de initial Setup Theme Motive di_or Attack Probability MIDI Pitch Harmonic Pitch Non Harmonic o Diatonic Non Harmonic Anchor Pitch Harmonic Range Interlock Harmony Yo Variable Value Range Limit Yo Attack Generator nja nfa Thematic Sequence am 100 am 100 Brownian Melody Variables Grid Tne com Generator ee 119091 Preset List Add Preset Erase Preset Figure 17 MIDI Track Component Property Editor e Click the Reset button to undo changes made after opening the editor e Click the Randomize button to perform a component specific property randomization e Left click and hold the Preview button to hear the effects of setup chan
78. s you to specify or randomly generate a short generator text string and specify replacement rules for each character in the string Click the Iterate button to perform the character replacement operation on the string in the text area 79 ARTSONG FILES AND TEMPLATES ArtSong supports 3 basic file types 1 standard MIDI files MID ArtSong reads both MIDI 0 and MIDI 1 formats ArtSong writes MIDI 1 format files MIDI files contain only the basic performance data When you open a MIDI file in ArtSong a generic project be created with a track and controller component for each MIDI data channel in the file 2 ArtSong project files AMPR Project files contain the complete performance and procedural data for the composition project 3 ArtSong template files TMPL Template files are structurally similar to project files except they do not include any MIDI performance data Template files located in the Template folder will automatically be added as menu items to the Open Template and Insert Templates menus for easy access The template file newproject tmpl if you create it will be used as the default when creating new projects ArtSong is an MDI multiple document interface application multiple projects can be open simultaneously When multiple projects are open in the editor the main menu items and toolbars refer to the project in the currently active editor
79. selection and play ranges LVL nj The Measure Display also has a popup menu right click for specifying selection start selection end and clearing the selection Using the popup menu options set both the selection and play range 19 BASIC EDITING The General Editing options for both note and segment events are accessed from a drop down menu on the Quick Menu Click the button to undo the last operation Click the small arrow on left for the Editing Options drop down menu Ele IAA oe A i Undo Ctrl Z Redo Shift Ctrl EtrizA NOTE Not all editing is undoable only undoable edits are added to the Undo Redo list Copy Ctrl C Cut Ctrl X Paste Ctrl V Edit Paste Shift Ctrl V Edit Ctri Alt The remainder of the editing options requires selected notes or component events Click the Select menu item to open the Event Filter dialog bi Event Filter Lo JL2 eee The Event Filter dialogs displays filter pages for start MEE o ZO en each Selected Component type The selection C Note Events O time range defaults to the initial selection time MIDI Note range but can be adjusted here Select Exclude Low High Pitch po ir Volume i a Selection Filters are available for each selected Duration s Je 4 component type Select the Event type Articulation p ico 4 configure the selection filters if any and click ier Tonea
80. signed most functions randomize their ArtSong provides a variety of functions including contours envelopes ramp function Fourier curves several types of probability distributions attractor curves to apply to the over 100 different composition such as note generation probability dynamics articulations chord root progressions textures thematic sequence etc And don t overlook the Value List function this workhorse function Please note that not all functions can be applied to all variables The built in functions and algorithms do not share a standard setup editor analogous to the component properties editor but do share some common tool bar functionality summarized in the table below Clear or Reset Eon Randomizes generation probabilities for the current pattern HE Randomize settings Pon Sets all generation probabilities to 100 for the current pattern For time based or periodic functions only the function period l G4 Store current settings as named cycle is the phrase data preset Foi metase er period w Erase specified data preset functions only the function period cycle is the total event time Functions are assigned to composition variables by clicking into the Functions column of the variables grid in a component property editor Most built in functions have user adjustable properties which can be accessed by clicking the Setup column of the variables grid See figures 19 an
81. tart time and Duration quantization for entered theme notes Transposes the local copy of the theme Toggles display of the theme notes in the editor Toggles display of the underlying Track notes in the editor a Sets magnification zoom level of editor display 36 CREATING A USER THEME Starting with a Track containing MIDI note data to create User Theme O E amp ase f Joo La no e open the Track s Property Editor Als Peta y a a e Toggle to the Theme Motive Editor Page e Select a range of notes by clicking and dragging in the numbered measure area If a range of notes is not selected the entire contents of the Track will be used to generate the theme Figure 30 Creating a User Theme e click the Generate Theme button circled in top left of Figures 30 and 31 After generating the theme the theme notes will appear in the note grid Please notice that Track data is displayed relative to the Music time the Theme data is displayed relative to a Theme time e Additional selections can be made and more notes added to the theme using the same technique as above or e The pencil brush and eraser tools can be used to insert edit or delete theme notes Figure 31 Saving a User Theme e Right click on a theme note to accent that note accented theme notes are colored red e f you wish to use this them
82. ting one pattern length of potential note attacks one for each beat The a Em beat attack probability combined with a value a modifier related to its Metric Position is used to determine whether a note attack is actually a4 sf A BE E Ga generated Pickup Count Relative Probabilities For notes which are to be generated a syncopation probability is generated and evaluated Syncopated notes have their note attack times reduced so they sound earlier by a base duration unit For un syncopated notes which are generated a pick up notes probability is generated and if picks up are to be added the number of pickups is determined and applied METRIC VALUES General This function returns a value based on the metric strength of the current composition time This function was originally designed for use with the Attack Probability variable to control metric positions of generated notes It can be useful with other variables in cases where you want variable values to follow the metric strengths The displayed value range for each bar is based on the value range of the owner variable 56 ORNAMENTATION MIDI Track Component Effects Generator variable This function adds classical ornamentation effects to generated notes hi Ornamentation Editor Effects Generator Es The Ornament Type variable values correspond to the index of the specified ornaments
83. ts descriptions or instructions to groups of instruments e As another application point for instrumental textures e To provide scaling effects to specific groups of o Random Generator Seed ove gt instruments GROUP COMPONENT VARIABLES Variable Value Range Description Texture Generator na Select a texture algorithm Attack Probability Scaling 0 to 200 Scaling factor for attack probability values generated by contained track components MIDI Velocity Scaling 0 to 200 Scaling factor for MIDI Velocity note volume values of contained track components MIDI Release Scaling 0 to 200 Scaling factor for MIDI release values generated by contained track components MIDI Aftertouch Scaling 0 to 200 Scaling factor for MIDI after touch key pressure values generated by contained track components Articulation Scaling 0 to 200 Scaling factor for articulation values generated by contained track components 33 TRACK COMPONENT Rl rr ares Tracks are ArtSong is MIDI note generating components Track properties consist primarily of the composition variables used to control note generation during the algorithmic composition process All Track variables are described at the end of this Track Component section Each Track component has an associated MIDI instrument used to perform the part when playing or previewing Tracks share their instrument with its contained controller Random Gen
84. utput devices all the devices should have similar characteristics Figure 6 MIDI Instrument Editor e Right click on an instrument control panel to turn a components compose status on or off the panel will turn red when the status is off v gt 00 Figure 7 Compose Status ON Figure 8 Compose Status OFF When off a component s data will not be erased and regenerated during the composition process This is capability is useful for example when customizing generated chord progressions or working with imported or edited MIDI data e When playing a project Mute Track by clicking on M button Solo track by clicking on the S button e Click on the track s color panel to set the MIDI note display color Alt click to set the background color 13 PROJECT TIMELINE The project timeline area displays component settings and generated data such as tempo changes MIDI notes MIDI controllers chords and scales Some components display multiple types of generated data see following section on Status Bar Use the project timeline area to add configuration events or segments to components Project component segments are used to create musical sections form with different meters textures harmonies etc Harmony algorithms can use their component events to implement different scales and chord progressions e Left click and drag in a component s timeline to add a component
85. vised by Mark DeVoto W W Norton amp Company New York New York 1987 The Garritan Interactive Principals of Orchestration on the forum at http www northernsounds com A Practical Guide to Music Composition Alan Belkin https www webdepot umontreal ca Usagers belkina MonDepotPublic bk index html 81 GLOSSARY This glossary defines some terms used in this Help file and tutorials For further information on music and musical terms we suggest you refer to one of the references Arranging This term most frequently refers to the writing out of parts for the various instruments to play In a general sense it can also refer to the entire decision process leading to a musical performance Articulation Articulation refers to the amount of time that a note actually plays relative to the amount of time available for that note in ArtSong this is expressed as a percent For example a quarter note has a 240 tick duration but may actually only sound during 160 ticks In this latter case a series of quarter notes would be spaced 240 ticks apart even though each only sounds for 160 ticks The articulation value is 160 240 100 67 Bar See Measure Cadence A Cadence is essentially a formula for ending a phrase A variety of different formulae exist depending upon whether the phrase ending should be a mere pause as an interior cadence between phrases or final as in the final cadence of a composition
86. y of e aiad scale chord changes Transpose Harmonic Density e The Transpose function establishes the scale root progression At each change time a new root is determined by generating and applying the transpose value to the previous root e The default chord always starts on the current transposed scale root and only contains pitches from the default scale located on that scale root e The Harmonic Density function determines the number of pitches in the chord the range value corresponds to chord sizes from 3 to 7 different pitches At each Chord Change based on the Progression Rate a transpose value is determined and that value applied to the previous root to determine a new chord root A harmonic density value is generated and used to determine the number of different pitches in the chord 47 ALGORITHMIC PERCUSSION FUNCTION MIDI Track Component Attack Generator variable hal Algorithmic Percussion Editor Attack Generator xa B BA Voice 1 Pitch Date 1 Probability 100 Volume Modifier 6 16 35 Acoustic Bass Drum v E mm 2 Attack Filter 10 Lt Voice 2 Pitch Rate 3 Probability 64 Volume Modifier 14 1 53 Acoustic Snare y mm eum om Attack Filter 01 HE Voice 3 Pitch Rate 4 Probability 100 Volume Modifier 20 Ic ss Open ti iat E Attack Filter HE Voice 4 Pitch Date 1 Probability 82 Volume Morifier 0 Attack Filter

Download Pdf Manuals

image

Related Search

Related Contents

VCON USER MANUAL  Manuel d`utilisation de SetDAG - DAG System  Insight Power SNMP Card  Installation and Upgrade Guide  NECライティング`株式会社  MQ1 Data Collection Module  NEXUS Modular Access Control  Toufflers Aujourd`hui  取扱説明書 保管用一  estudio de frecuencia de casos de infección por citomegalovirus  

Copyright © All rights reserved.
Failed to retrieve file