Presentation is loading. Please wait.

Presentation is loading. Please wait.

MGC (Music Generator for Composing). Pronunciation MGC MGC mmmmGiC mmmmGiC Magic Magic.

Similar presentations


Presentation on theme: "MGC (Music Generator for Composing). Pronunciation MGC MGC mmmmGiC mmmmGiC Magic Magic."— Presentation transcript:

1 MGC (Music Generator for Composing)

2 Pronunciation MGC MGC mmmmGiC mmmmGiC Magic Magic

3 Blame David Cope and Peter Elsea for this software

4 MGC A simple program for testing musical ideas.

5 Introduction MGC allows quick tests of potential musical material. This program should not substitute for writing your own code to produce good music.

6 Platforms MGC will run on any platform or operating system for which there exists a Common Lisp (read as all platforms). The program requires only that you possess a Common Lisp (many free versions exist) and have it installed on your computer.

7 Loading MGC Simply load the MGC file via one of the loading processes available in the particular Common Lisp you have chosen after you boot it and follow the directions herein.

8 Requirements MGC follows all of the conventions of Common Lisp and users must be at least vaguely familiar with command line input using Lisp. MGC contains many assorted functions. However, the only functions that one absolutely need know are MGC, load- midi-file, and save-midi-file.

9 Simple example of saving a midi file (save-midi-file ”dave.mid” ‘((0 60 1000 1 64))) saves a midi file called dave which contains a single note middle C

10 Since different platforms and systems have different ways of showing paths, you can get around this by just doing Since different platforms and systems have different ways of showing paths, you can get around this by just doing (save-midi-file "bartok.mid") and then searching for the file and considering that your default location for saving and loading files. and then searching for the file and considering that your default location for saving and loading files.

11 Output The same is true for The same is true for (load-midi-file “dave.mid”) (load-midi-file “dave.mid”) Which produces Which produces ((0 60 1000 1 64)) As long as “dave.mid” is in the same place as you found it when you saved it. As long as “dave.mid” is in the same place as you found it when you saved it.

12 Instruments The channels default to: The channels default to: (setf *CHANNEL-NO-1* 74) (setf *CHANNEL-NO-2* 69) (setf *CHANNEL-NO-3* 72) (setf *CHANNEL-NO-4* 71) (setf *CHANNEL-NO-5* 61) (setf *CHANNEL-NO-6* 57) (setf *CHANNEL-NO-7* 58) (setf *CHANNEL-NO-8* 47) (setf *CHANNEL-NO-9* 10) (setf *CHANNEL-NO-10* 1) (setf *CHANNEL-NO-11* 10) (setf *CHANNEL-NO-12* 41) (setf *CHANNEL-NO-13* 41) (setf *CHANNEL-NO-14* 42) (setf *CHANNEL-NO-15* 43) (setf *CHANNEL-NO-16* 44)

13 Possibilities are: 1 = ACOUSTIC GRAND PIANO 2 = BRIGHT ACOUSTIC PIANO 3 = ELECTRIC GRAND PIANO 4 = HONKYTONK PIANO 5 = RHODES PIANO 6 = CHORUSED PIANO 7 = HARPSICHORD 8 = CLAVINET 9 = CELESTA 10 = GLOCKENSPIEL 11 = MUSIC BOX 12 = VIBRAPHONE 13 = MARIMBA 14 = XYLOPHONE 15 = TUBULAR BELLS 16 = DULCIMER 17 = HAMMOND ORGAN 18 = PERCUSSIVE ORGAN 19 = ROCK ORGAN 20 = CHURCH ORGAN

14 and 21 = REED ORGAN 22 = ACCORDIAN 23 = HARMONICA 24 = TANGO ACCORDIAN 25 = ACOUSTIC NYLON GUITAR 26 = ACOUSTIC STEEL GUITAR 27 = ELECTRIC JAZZ GUITAR 28 = ELECTRIC CLEAN GUITAR 29 = ELECTRIC GUITAR MUTED 30 = OVERDRIVEN GUITAR 31 = DISTORTION GUITAR 32 = GUITAR HARMONICS 33 = ACOUSTIC FRETLESS BASS 34 = ELECTRIC BASS FINGERED 35 = ELECTRIC BASS PICKED 36 = FRETLESS BASS 37 = SLAP BASS 1 38 = SLAP BASS 2 39 = SYNTH BASS 1 40 = SYNTH BASS 2

15 and 41 = VIOLIN 42 = VIOLA 43 = CELLO 44 = CONTRABASS 45 = TREMOLO STRINGS 46 = PIZZICATO STRINGS 47 = ORCHESTRAL HARP 48 = TIMPANI 49 = ACOUSTIC STRING ENSEMBLE 50 = ACOUSTIC STRING ENSEMBLE 2 51 = SYNTH STRINGS 1 52 = SYNTH STRINGS 2 53 = AH CHOIR 54 = OOH CHOIR 55 = SYNTHVOX 56 = ORCHESTRA HIT 57 = TRUMPET 58 = TROMBONE 59 = TUBA 60 = MUTED TRUMPET

16 and 61 = FRENCH HORN 62 = BRASS SECTION 63 = SYNTHBRASS 1 64 = SYNTHBRASS 2 65 = SOPRANO SAX 66 = ALTO SAX 67 = TENOR SAX 68 = BARITONE SAX 69 = OBOE 70 = ENGLISH HORN 71 = BASSOON 72 = CLARINET 73 = PICCOLO 74 = FLUTE 75 = RECORDER 76 = PAN FLUTE 77 = BOTTLE BLOW 78 = SHAKUHACHI 79 = WHISTLE 80 = OCARINA

17 and 81 = SQUARE WAVE 82 = SAW WAVE 83 = CALLIOPE 84 = CHIFFER 85 = CHARANG 86 = SOLO VOX 87 = 5TH SAW WAVE 88 = BASS AND LEAD 89 = FANTASY 90 = WARM 91 = POLYSYNTH 92 = CHOIR 93 = BOWED 94 = METAL 95 = HALO 96 = SWEEP 97 = ICE RAIN 98 = SOUND TRACKS 99 = CRYSTAL 100 = ATMOSPHERE

18 and 101 = BRIGHTNESS 102 = GOBLINS 103 = ECHOS 104 = SPACE 105 = SITAR 106 = BANJO 107 = SHAMISEN 108 = KOTO 109 = KALIMBA 110 = BAGPIPE 111 = FIDDLE 112 = SHANNAI 113 = TINKLE BELL 114 = AGOGO 115 = STEEL DRUMS 116 = WOODBLOCK 117 = TAIKO DRUM 118 = MELODIC TOM 119 = SYNTH DRUM 120 = REVERSE CYMBAL

19 and 121 = GUITAR FRET NOISE 122 = BREATHNOISE 123 = SEASHORE 124 = BIRD TWEET 125 = TELEPHONE RING 126 = HELICOPTER 127 = APPLAUSE 128 = GUNSHOT and a few more on channel 10, which for now we’ll leave alone (avoid using it). ALL OF THIS LATTER INFO IS AT THE BOTTOM OF THE MGC FILE WHICH IS ON THE WEBSITE.

20 MGC itself Using MGC will allow you to enter the five parameters of cope events separately and do some other interesting things. Using MGC will allow you to enter the five parameters of cope events separately and do some other interesting things.

21 (mgc ”test.mid" :ontimes '((0 1000)) :pitches (list (choose 2 '(60 62 64))) :durations '((500 1000)) :channels '((1 1)) :dynamics '((127 127))) Produces two events on channel 1 of C, C#, D randomly, the first a short note, a rest, and then a long note. The first argument may also be a pathname guiding the file to a particular place. Note the sub-lists for each channel. If they are different sizes, the program defaults to the shortest list.

22 Important functions choose (chooses the number of its first argument from its second argument). choose (chooses the number of its first argument from its second argument). make-ontimes-from-durations (takes a series of durations as argument and turns them into ontimes. make-ontimes-from-durations (takes a series of durations as argument and turns them into ontimes. Note that MGC can take data as arguments of functions acting as data as arguments. Note that MGC can take data as arguments of functions acting as data as arguments.

23 MGC file At the top of the MGC file you’ll find a series of sample runs of MGC and even a blank version. There’s even a version that takes one argument consisting of a single function that returns full cope-events. In general, MGC is a top level for the save- midi-file function, allowing a variety of input techniques. At the top of the MGC file you’ll find a series of sample runs of MGC and even a blank version. There’s even a version that takes one argument consisting of a single function that returns full cope-events. In general, MGC is a top level for the save- midi-file function, allowing a variety of input techniques.


Download ppt "MGC (Music Generator for Composing). Pronunciation MGC MGC mmmmGiC mmmmGiC Magic Magic."

Similar presentations


Ads by Google