Download l/ I) / I) (/ 121
Transcript
US006353167B1 (12) United States Patent (10) Patent N0.2 Tuttle (54) (45) Date of Patent: 5,723,803 A * 3/1998 Kurakake COMPUTER FOR CREATING MUSIC 5,801,694 A * Inventor: Raglan 'Ihttle, Colorado Springs, CO . . Asslgnee: Raglan productlons’ Inc" Colorado Notice: Gabriel ...................... .. 84/609 5,892,507 A * 4/1999 Moorby et al. 5,908,997 A * 6/1999 Arnold et al. .......... .. 84/478 X 5,915,288 A * 6/1999 G b ' 1 ......... .. 5,931,680 A * 8/1999 sjmrilz ............... .. 84/477 R X spnngs’ CO (Us) (*) 9/1998 Gefshen * 10/1998 57889519 A * 3/1999 Boezeman et al (US) (73) Mar. 5, 2002 METHOD AND SYSTEM USINGA 5,824,933 A (75) US 6,353,167 B1 6,031,172 A Subject to any disclaimer, the term of this * 2/2000 Papadopoulos ......... .. 84/470 R OTHER PUBLICATIONS patent is extended or adjusted under 35 “ _ U_S_C_ 154(k)) by 0 days' Sonic Foundry Presents ACID Music Dec. 14, 1998* ACID User Manual, pp. 21—28, 1999* _ ” (21) Appl. No.: 09/465,212 * cited by examiner (22) Filed: Primary Examiner—Jeffrey Donels Dec- 15’ 1999 (74) Attorney, Agent, or Firm—ToWnsend and ToWnsend and Crew LLP Related US. Application Data (60) Provisional application No. 60/122,551, ?led on Mar. 2, 1999, and provisional application No. 60/112,877, ?led on (57) ABSTRACT Dec. 18, 1999. (51) Int Cl 7 G09B 15/02 A novel system and method for forming music. The system includes a variety of elements such as a user interface on a (52) .... .. 84/477 R; 84/609 display. The user interface includes a ?rst portion on the (58) Field of Search ........................ .. 84/600, 609, 649, display for a plurality of inputs, Which can be characteristics of music. These characteristics tend to be the basic elements 84/464 R, 464 A, 470 R, 477 R (56) References Cited of music such as pitch, tone, key, register, and others. The user interface also includes a second portion on the display U_S_ PATENT DOCUMENTS for a patterned output. The output is representative to the inputs. The output con?gures the inputs in a systematic 531533829 A * 10/1992 Furuya et a1‘ """ " 84/477 R X manner that alloWs a user to “view” the music in one easy 5,355,762 A 5,604,322 A * 10/1994 Tabata .................... .. 84/609 * 2/1997 Kikuchi .................. .. 84/477R to See dis 1a p y‘ 5,684,259 A * 11/1997 Horii 5,690,496 A * 11/1997 Kennedy 17 Claims, 11 Drawing Sheets 143 Sound Device 123 l/ I) 11 2 125 l/O Controller System Memory i ll 127 / 129 I) Central Processor Printer 11 ll (/ 121 l ‘ > ll 11 11 ll 11 ll Display Adapter l / 11 131 133 ll / l . Momtor 135 ll / 137 V I/ Serial Port Keyboard 139 ll / 141 V I) Fixed External Disk interface U.S. Patent Mar. 5,2002 Sheet 1 0f 11 US 6,353,167 B1 100 101\ l 115 (g —/_1O3 115 113 FIG. 1 11s 1' < 119x D ‘\1o1 \___ \ 116 FIG. 1A __\ ¥103 U.S. Patent Mar. 5,2002 Sheet 2 0f 11 US 6,353,167 B1 A4 < + > > \ \ \ mihm?mm? \ \ ?20: 9b.5c8m0.aH9om 6c:h62o=w9>:Eo2i Fm?mm?hm?:1 $320 63mu< _ _ _ _ _ mxto2B0mE Eu?ocBxwEmSe6n2?! _\ N.QE U.S. Patent Mar. 5,2002 Sheet 3 0f 11 US 6,353,167 B1 3:30 FEG. 3 4013 5GB FIG_ 5 U.S. Patent Mar. 5,2002 Sheet 4 0f 11 US 6,353,167 B1 600 FIG. 6 700 531332315; 533233321“ m U S Patent Mar. 5,2002 Sheet 5 0f 11 US 6,353,167 B1 U.S. Patent Mar. 5,2002 Sheet 6 6f 11 US 6,353,167 B1 800 Enharmonic Tones Shown Register Ball FIG. 8 U.S. Patent Mar. 5,2002 Sheet 7 0f 11 US 6,353,167 B1 The Tampa: Baii 5m Tha Key 83%? ggg ' “ Mde T559 . ‘ .. . ._ __ .1 Mum Memphis ‘ ‘ Bmogie The Védua? Keynmard Ba? {With enharmmni-c tong hidden} \Mimr Pantamniac The ?agi‘ster Bail ‘E3139 61-51 The Structure Baii Q11 ‘ ' Triad Ameggia U.S. Patent Mar. 5,2002 Sheet 8 0f 11 1iiiiii " US 6,353,167 B1 1mm 19131 \) U.S. Patent Mar. 5,2002 Sheet 9 0f 11 US 6,353,167 B1 Composition 1105 1101 1109 1111 1103 1101 w 1) Keyball (a flat usage - Key of C) 1103 w 2) Revolution Ball (Indicates interval for 1105 J‘ 3) Structure Ball - repeating...) 1107 J‘ 4) Groove Ball (Indicates repeating pattern playing with a boogie bass.) [Enharmonic tone hidden] 1109 ~/\ 5) Tempo Ball ( Indicates repeating pattern.) [Enharmonic tone hidden] 1111 ~/\ 6) Vertical Keyboard Ball (Indicates major pentatonic scale.) * Groove Ball #1, unlike Groove Ball #2, is adjacent to the Structure Ball and to follow the cordal pattern indicated by the Structure Ball. H The blue section (1113) indicates a blue note or "enharmonic tone". FIG. 11 U.S. Patent Mar. 5,2002 Sheet 10 0f 11 US 6,353,167 B1 U.S. Patent Mar. 5,2002 Sheet 11 0f 11 US 6,353,167 B1 131E313 US 6,353,167 B1 1 2 METHOD AND SYSTEM USING A COMPUTER FOR CREATING MUSIC among others, computers on a Wide area netWork such as the Internet, notebook computers, laptop computers, palmtop computers, personal digital assistants, and the like. Signal processing can also occur in the computer. CROSS REFERENCE TO RELATED APPLICATIONS In a speci?c embodiment, the present invention provides a novel system for forming music. The system includes a The present application claims priority to US. Ser. No. 60/122,551 ?led Mar. 2, 1999 and US. Ser. No. 60/112,877 variety of elements such as a graphical user interface on a ?led Dec. 18, 1999, and hereby incorporated by reference display for a plurality of inputs, Which can be characteristics of music. These characteristics tend to be the basic elements of music such as pitch, tone, key, register, and other param for all purposes. display. The user interface includes a ?rst portion on the 10 COPYRIGHT NOTIFICATION eters that de?ne music. The user interface also includes a Aportion of this document, such as the computer code, is second portion on the display for a patterned output. The subject to Copyright protection. Notice of such Copyright protection is provided herein. Applicant expressly reserves the inputs in a systematic manner that alloWs a user to output is representative to the inputs. The output con?gures 15 all rights subject to the extent of Copyright laWs © 1999. BACKGROUND OF THE INVENTION The present invention relates to music theory. More particularly, the present invention provides a technique for forming music. In an exemplary embodiment, the present invention provides a method and apparatus for teaching music theory based upon an improved graphical user inter face in a microprocessor based system. Merely by Way of example, the present invention can be applied to a computer; but it Will be recogniZed that the invention has a much broader range of applicability. It can be applied to computers 20 tones based upon a series of music rules. Accordingly, the present invention alloWs the user to play the music that is represented by the pattern, Which Was created by the user. In an alternative speci?c embodiment, the present inven tion provides a method for forming music on a computer, e.g., laptop, notebook, netWork, and others The method includes providing a user display, Where the user display has a ?rst portion. The ?rst portion includes one or more 25 indications Which de?ne music characteristics. These indi cations can be in the form of icons or tools, for example. The music characteristics include, among others, tone, pitch, key, and register. The method includes a step of selecting one of the indications that correspond to one of the music charac on a Wide area netWork such as the Internet, notebook computers, laptop computers, palmtop computers, personal digital assistants, and the like. Avariety of techniques have been proposed for teaching “vieW” the music in one easy to see display. Additionally, the patterned output is coupled to underlying sounds and/or 30 teristics. Selection can occur, for example, by visually selecting the indication(s) and mechanically using a mouse, keyboard, or other input device for electronically selecting and creating music. A classical and most often used method one or more of the indications. The method also includes relies upon teaching a student via a keyboard using simple songs and playing simple scales and chords. As merely an example, a beginning piano student often learns hoW to play piano by playing via a keyboard simple songs such as placing the selected indication on a second portion of the display. In some embodiments, the second portion of the display is called a palette, Which can be analogiZed to a blank piece of paper for a draWing. The icons representing the music characteristics are placed on the palette using, for example, a drag and drop technique of the mouse, but is not “Marry Had a Little Lamb” or Fur Elise by Bethoven The beginning piano student also learns hoW to play chords and scales, as Well. For example, the student may learn hoW to play a C major scale and others. Over time, the student progresses and learns hoW to play more advanced scales, songs, and the like. In most cases, hoWever, the student often fails to learn details of music theory and the like to create his or her oWn music by simple keyboard instruction. There have been some other techniques to teach music students the theory of music. These techniques often come in the form of college or graduate school education. An example of one of these techniques is the use of visual aids in order to replace keyboard instructions. US. Pat. No. 4,887,507, Which is in the name of Terrance ShaW (herein 40 characteristics to de?ne his or her music. Once one or a set of characteristics are selected, the method plays the music, Which is based upon the characteristics. The user can listen to the music, Which has been created by the present user 45 Numerous bene?ts are achieved by Way of the present 50 teaching and creating music. Additionally, the present inven 55 tion provides a patterned output that can de?ne the music in a spatial and graphical form. The patterned output can be played in the form of audio output in some embodiments to alloW the user to listen to the neWly formed music. The present invention can be implemented on conventional hard Ware such as a personal computer and the like. These and other bene?ts are described throughout the present speci? standing and/or forming music that is easy to implement is highly desired. SUMMARY OF THE INVENTION 60 a method and apparatus for forming music is provided. In an an improved graphical user interface in a microprocessor based system. The microprocessor based system includes, cation and more particularly beloW. The present invention achieves these bene?ts in the context of knoWn process technology. HoWever, a further understanding of the nature and advantages of the present invention may be realiZed by reference to the latter portions of the speci?cation and attached draWings. According to the present invention, a technique including exemplary embodiment, the present invention provides a method and apparatus for teaching music theory based upon display. invention. Depending upon the embodiment, one or more of these bene?ts can be present. In one aspect, the present invention provides an easy to use softWare interface for “ShaW”), describes a visual technique for teaching music. ShaW generally describes a complex mechanical device With moving Wheels and a base member. Although someWhat effective, ShaW still fails to provide an easy Way for an average music student to learn and create music. From the above, it is seem that a technique for under limited to this technique. Here, the user can rely on his or her oWn creativity in properly selecting one or more of the music 65 BRIEF DESCRIPTION OF THE DRAWINGS FIGS. 1—2 are simpli?ed system diagrams according to embodiments of the present invention; US 6,353,167 B1 4 3 FIGS. 3—5 are simpli?ed diagrams of displays of rhythmic 127, a printer 129, a display adapter 131, a monitor 133, a serial port 135, a keyboard 137, a ?Xed disk 139, an eXternal interface 141, and other elements. The sub-systems also elements according to embodiments of the present inven tion; include a sound device 143, such as a sound card or FIGS. 6—8 arc simpli?ed diagrams of displays of tones according to embodiments of the present invention; FIG. 9 is a simpli?ed diagram of a register ball display according to an embodiment of the present invention; and FIGS. 10—13 are tone diagrams displays according to embodiments of the present invention integrated circuit chip, Which is coupled to audio output devices. The audio output devices can be any suitable speakers or the like. In some embodiments, the sub-system also includes a digital signal processor or DSP integrated circuit chip to edit and con?gure sounds. 10 DESCRIPTION OF THE SPECIFIC EMBODIMENTS According to the present invention, a technique including a method and system for forming music is provided. In an exemplary embodiment, the present invention provides a method and apparatus for teaching music theory based upon 15 an improved graphical user interface (“GUI”) in a micro processor based system. The microprocessor based system can be a computer, a Workstation, a netWork computer, a portable computer, a notebook computer, a palmtop computer, and other interface devices. FIG. 1 is a simpli?ed diagram of a system according to an embodiment of the present invention. This diagram is merely an eXample and should not limit the scope of the claims herein. One of ordinary skill in the art Would recog niZe other variations, modi?cations, and alternatives. The In a speci?c embodiment, the sound device includes an audio processor. The audio processor takes information from the inputs on the user display, and converts the inputs via music rules to sounds. The sounds are made by Way of calls to an operating system, Which, in turn, drives the audio processor and outputs the sounds, Which are based upon the music rules and inputs from the user interface. The audio processor can be in the form of hardWare. Alternatively, it can be in the form of softWare. Still further, it can be in the form of a combination of hardWare and softWare, depending upon the application. As merely an eXample, the computer can output sounds and connect to other devices using a standard Musical Instrument Digital Interface, Which is commonly called MIDI. 25 system 100 includes a variety of elements such as a display device 101, a display screen 103, a cabinet 105, a keyboard FIG. 1A is a more detailed diagram of a display 101 according to an embodiment of the present invention. This diagram is merely an eXample and should not limit the scope of the claims herein. One of ordinary skill in the art Would recogniZe other variations, modi?cations, and alternatives. Some reference numerals used in FIG. 1A are similar to the 111, a high capacity memory device 113, a set of speakers ones used above for cross-referencing purposes. As shoWn, display 101 has graphical user interface device 119, Which 115, and a mouse 109. The mouse and keyboard illustrate “user input devices.” Mouse 109 also has a right click button and left click button 107, Which are used in the present is an input screen, and user device, Which is an output screen. The input screen is actually a tool or selection menu. screen, light pen, track ball, data glove, speech recognition 35 In one embodiment, the input screen can be similar to a keyboard or considered as a “virtual keyboard,” Which is unit, and the like. The display also has graphical user invention. Other examples of user input devices are a touch input screen can be similar to a keyboard or considered as a used to input or choose selected music information. The music information is used to understand and form music, for eXample. The virtual keyboard can be in the form of icons or other indications, Which can be selected. EXamples of the “virtual keyboard,” Which is used to input selected music input screen are shoWn in more detail beloW. information. The music information is used to understand and form music, for eXample. The output screen is an output based upon the input screen according to the present inven The output screen 116 is an output based upon the input screen according to the present invention. The output screen interface device 119, Which is an input screen, and user device 117, Which is an output screen. The input screen is actually a tool or selection menu. In one embodiment, the tion. The output screen visually displays patterns associated With the resulting music, Which is based, in part, on the input visually displays patterns associated With the resulting 45 music, Which is based, in part, on the input or inputs. The output screen can be similar to a Work space or an area Where or inputs. Further details of the input and output are shoWn beloW. The PC based system includes a PENTIUMTM Micropro music information is accumulated to form music. Once selected music information is placed on the output screen. cessor by Intel Corporation of Santa Clara, Calif. The system also runs a WindoWsTM based operating system. of many controls on screen portion 118. Further details of the output are shoWn beloW. Alternatively, the system can be from AppleR of Cupertino, Calif., Which runs an AppleR operating system. Other sys screen portion 119. The music information includes, tone, The music is composed and can be played by selecting one In one embodiment, a user selects music information from tems such as those that are PC based, as Well as NT based, key, structure, and others. In one aspect, the user clicks onto and the like can also be used. The present system is not intended to limit the scope of the claims herein, but requires a suitable amount of memory and processing poWer to carry 55 an icon for the desired music information from screen portion 119 and drags the icon into screen portion 116. Other icons that correspond to other music information can also be selected. Once all the selections have been made, the user out one or more of the embodiments of the present inven tion. music is composed. The user can play the music by selecting FIG. 2 is a simpli?ed diagram of sub-systems in the system of FIG. 1 according to an embodiment of the present invention. This diagram is merely an eXample and should not limit the scope of the claims herein. One of ordinary skill in the art Would recogniZe other variations, modi?cations, and alternatives. Among others, the sub-systems in the one of the control keys in screen portion 118. These and other operations can be made by Way of the present inven tion. system include, for eXample, a common bus 121, an I/O controller 123, a system memory 125, a central processor The present system can be replaced, in part, by other hardWare. The hardWare can be more integrated or even 65 separated. The computer system can also include other types of computers such as a Workstation, a netWork computer, a portable computer, a notebook computer, a palmtop US 6,353,167 B1 5 6 computer, and other computing devices. These devices either 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, and 12 units respectively Would include a novel program and graphical user interface or virtual keyboard according to one of more embodiments Would represent the tWelve (“12”) notes of Western music and also four beats of “sWinging” eighth notes. In other embodiments, a register is also provided in combination of the present invention. The FIGS. beloW describe addi tional details With regard to the present invention. FIGS. 3—5 are simpli?ed diagrams of rhythmic elements for screen displays according to embodiments of the present invention. These diagrams are merely eXamples and should not limit the scope of the claims herein. One of ordinary skill in the art Would recogniZe other variations, modi?cations, and alternatives. As merely an example, the present invention, Which is also called the RagZbolTM notation system, divides rhythmic elements such as tempo, for eXample. One of a plurality of tempos is placed in a graphical user interface form, Which can be accessed via keyboard or mouse, as Well as other devices. By Way of clicking on one of the tempos, the present system outputs such tempo in an audio manner through a speaker, for With rhythm and pitch. 10 disk 801, Which is divided in a manner similar to the FIGS. 15 eXample. The user interface can be shaped as a disk 300 sliced into four equal sections 301. The disk 300 represents four quarter notes. Such a disc Would equal four quarter notes or one measure When in 4/4 time. A disc 400 divided into eight equal sections 401 Would represent eight eighth notes. One revolution of such a disc Would also equal one measure When in 4/4 time. A disc 500 divided into 3 equal 25 sections 501 Would represent three quarter notes or one measure in 3/4 time. Other eXamples such as 2/4 time, and others can also be represented as a disk or other graphical form, e.g., polygon. FIGS. 6—7 are simpli?ed diagrams of screen displays for pitch according to embodiments of the present invention. These diagrams are merely eXamples and should not limit the scope of the claims herein. One of ordinary skill in the art Would recogniZe other variations, modi?cations, and alternatives. The present pitch diagrams can be represented 35 in one of many Ways. In one embodiment, the present user interface can be divided into sections in a similar manner as sented in a disk 600, 700. Such disk 600 can be divided into tone is placed betWeen C2 and B2 using the red portions, Where the black portions 805 represent black keys and the blue portions 805A represent the White keys. A larger annular region 806 is formed concentrically around the center disk. The larger annular region designates a register. Here, a “Boogie-Woogie” base-line played tWo octaves (i.e., C2—B2) beloW middle C is depicted. Outer annular region 806 designates a register about middle C, Where position does not matter. Alternatively, the outer annular region can be placed in an inner region of the disk 801. FIG. 9 is a simpli?ed diagram of an input device accord ing to an embodiment of the present invention. The input device is used for programming purposes, for eXample. The input device also can be used for teaching purposes, for eXample. The input device can be used in combination With the keyboard or mouse or voice activated device, as Well as reference to the FIG. 1. The tempo ball 901 includes a collection of balls tWelve (“12”) equal sections such as these shoWn in the pie-like con?guration. Each section represents a pitch, e.g., representing various tempos such as 40 bps (“beats per second”), 50 bps, 60 bps, etc. Here, the tempo could be A, A#, B, B#, C, C#, D, D#, E, F, F#, G, G#, Which forms one set of keys on, for eXample, a keyboard similar to a piano. The tWelve sections also represent the tWelve (“12”) 45 To fully illustrate, for eXample, the diagram of FIG. 6, it may assist the reader to revieW FIG. 6A. Here, a register of a standard piano keyboard 601 is shoWn. The standard piano keyboard includes White keys, Which represent each full note, e.g., A, B, C, D, E, F, G. The black keys represent half steps, including A#, B#, C#, D#, F# and G#. These keys are continuous, Which can be adjusted in a continuous sliding scale manner. Alternatively, the tempo could be quantiZed. 2. The key ball 903 is used to designate a key or tonal center. The key ball includes 12 balls representing the 12 notes of Western music, e.g., C, C#, D, D#. 3. The groove ball 905 can include looping MIDI record ings of various basic piano. The ball compiles styles such as “Stride,” “Shuffle,” “Straight Eight Boogie,” “Memphis,” “Blues,” and others. The duration of these recordings depends on the length of the rhythmic phrase, for instance, folded toWard each other in a circular con?guration such as the folded structure 603, Which has each end of the register closing in on each other. Once the circular con?guration ends are attached to each other 605, tWelve keys are shoWn above, but is not limited. The center disk is divided into tWelve pie-like 803 sections about a center region of the disk. Additionally, the center disk is divided concentrically about a center region into tWelve concentric regions, each having a larger radius. In the center disk, the red portions 807 designate the key, Which repeats about the tone. The other input means. The input device includes a variety of parameters, Which can be selected, for creating and analyZ ing music. These parameters or elements are described in in the above paragraph. Accordingly, pitch can be repre notes of Western music’s tonal system. FIG. 8 is a simpli?ed diagram 800 of a display of a register ball according to an embodiment of the present invention. This diagram is merely an illustration and should not limit the scope of the claims herein. One of ordinary skill in the art Would recogniZe other variations, alternatives, and modi?cations. The present register ball 800 includes a center a Stride groove Would be 4 beats in length, a Memphis 55 groove eight beats, and Boogie-Woogie four or eight beats in a circular arrangement. These keys include A, A#, B, B#, C, C#, D, D#, E, F, F#, G, G#. The representation of FIG. 6A should assist the reader in deriving the structure of FIG. 6, depending on the base line. The groove ball is the basic for eXample, as Well as other FIGS. herein. balls representing the seven modes, major and minor pen rhythm ball, Which is similar to the rhythm ball. 4. The virtual keyboard 907 ball can be a collection of tatonic scales, major and minor blues scales, arpeggios of major and minor triads, arpeggios of major and minor In an alternative embodiment, rhythm and pitch can be represented on a single disk 700, such as the one shoWn in FIG. 7. The disk illustrates a combination of rhythm and pitch in a graphical manner. As merely an eXample, disc 700 can be sliced into 12 equal sections similar to the sections in the above FIG. Additionally, the disk is further divided about a center region in a concentric manner. Each region has a different radius about the same center point. A radius of seventh chords, the chromatic scale, and other balls repre 65 senting other simple harmonic structures, for eXample, JaZZ musicians typically employ While improvising melodic lines in various styles. The keyboard ball represents the entire body of scale or mode, Which de?nes a mode such as miXalidian, etc. See FIG. 13. US 6,353,167 B1 8 7 C4 since neither key nor register ball has been dragged on to palette). Moving in a clockWise direction from the section, the ?ve sections of this ball represent the notes C, 5. The register ball 909 can be a collection of balls representing the various registers, e.g., C1 to B1, C2 to B2, C3 to B3. 6. The structure ball 911 can be a collection of balls Eb, F, G, and Bb respectively. Inside of this Virtual Key representing various structures typically employed in J an or board ball is a red dot 1009 representing the mouse pointer. Moving this pointer over one of the ?ve sections of the Blues (e.g., 12 bar blues, 16 bar blues) performance. This generally describes the harmonic portion of the music, e.g., blues, jaZZ. One Way goes in half steps, Which is the standard Way of going up or doWn the keys. The other dimension Which is placed perpendicular goes up in fourth steps 10 (perfect forth steps). 7. The duration ball designates a particular number of revolutions for the structure ball. For example, a blues simpli?ed example of sheet music 1100, Which is typically composition including four choruses Would employ a #4 duration ball. The features noted above can be implemented on a portion of the display. Depending upon the embodiment, a user 15 device such as a mouse can be used to click onto one of the features in the FIG. Alternatively, the present features can include another element such as a palette. The palette is a designated area of the display on the computer, Which is used to drop one or more of the features noted. The palette is similar to “a blank sheet of paper,” Where a user can begin to design the music using one or more of the features noted. The user can direct a cursor to click onto one or more of the 25 features, Which are dragged and dropped onto the palette. In a speci?c embodiment, the present invention uses rules to couple or connect the various features With the ?nal output, Which is in the form of a patterned disk, for example. The rules connecting the various features can be analogous to the rules connecting the various musical elements in J an performance. For instance, the selection of a tempo ball in Which a quarter note equals 120 beats per second, sets the tempo. The ball containing the rhythmic information can rotate and perform their musical content (just as in a standard sequencing program, the selection of a tempo dictates the pace for all the other rhythmic elements of a indicates a repeating pattern of notes that represents a 35 Boogie Bass. Groove ball (#2): The groove ball is in a combination of orange, red, and yelloW colors 1109. As shoWn, the groove ball indicates a repeating pattern. Virtual keyboard ball: The virtual keyboard ball is in a yelloW color 1111. As shoWn, the virtual keyboard ball indicates a major pentatonic scale. The present invention can be implemented in one or more 45 examples. These examples, Which are referenced by Way of the FIGS. shoW the operation of embodiments of the present The examples shoWn above illustrate that sheet music can be converted into a graphical notation. Alternatively, the graphical notation, Which is the pattern, could be converted into sheet music. Accordingly, the present invention can be used to analyZe music, Which has been converted from sheet. Alternatively, the present invention can be used to create sheet music, once a desirable music pattern is found. These and other embodiments Will be recogniZed by one of ordi nary skill in the art. invention. FIG. 10 is a simpli?ed example of a user display according to an embodiment of the present invention. This FIG. is merely an example and should not limit the scope of the claims herein. One of ordinary skill in the art Would Although the above has been generally described in speci?c hardWare and softWare elements, the present inven recogniZe other variations, modi?cations, and alternatives. Referring to FIG. 10, depicted at the top of the interface tion can be applied in many other Ways. For example, the present invention can be applied further separated in terms are three buttons. These are, going from left to right, include 55 BeloW the icons is a palette region. Three features, Which are depicted as icons 1007, are dragged from the features region to the palette. As shoWn, the outer most 1013 is a groove ball of hardWare and/or softWare. Additionally, the present invention can be applied in terms of more integrated soft Ware. Depending upon the embodiment, the present inven tion can also be applied in more integrated hardWare such as chips, or the like. FIG. 13 is a simpli?ed display diagram of a virtual ball 1300 according to an embodiment of the present invention. This diagram is merely an illustration and should not limit the scope of the claims herein. One of ordinary skill in the 1013. Since no structure or duration ball has been dragged Keyboard ball 1011 (defaulted to the key of C and register shoWn, there are no ?ats or sharps. The key is in C, but can be others. Revolution ball: The revolution ball is in a combination of yelloW and green colors 1103. As shoWn, the revolution ball shoWs a division of tWo segments, Which represent tWo choruses. Structure ball: The structure ball is in a combination of For example, use of a standard “12 Bar Blues Structure Ball” Would mean that in bar 5 of a “Boogie-Woogie” perfor mance the Bass Would noW play its repeating 4 beat pattern beginning on the fourth scale degree rather than the ?rst. onto the palette, this musical ?gure Will continue to loop until the stop icon is clicked. Only one note is being played (since no “key” or “register” ball has been dragged onto the palette this note defaults to C2) and it is playing a sWinging eight note rhythm (since no tempo ball has been dragged onto the palette this rhythm has defaulted to 120 bps). Inside of the groove ball is the Minor Pentatonic Virtual played on a piano. For easy reading and cross-referencing, FIGS. 11—12 have been color coded. A legend for the color coding is provided in the loWer portion of FIG. 11. FIG. 12 is a simpli?ed illustration of graphical patterns 1200 accord ing to the present invention. The graphical patterns can be displayed on a computer display. The legend describes the folloWing layers or regions of the pattern of the FIGS. Key ball: The key ball is shoWn in the color red 1101. As blue and purple colors 1105. As shoWn, the structure ball includes the number of bars and chords. Groove ball (#1): The groove ball is in a combination of red and yelloW colors 1107. As shoWn, the groove ball piece of music). Also, similar to the Way a J an performance mirrors the content of a musical chart, the patterned output maps out the harmonic information of a given performance. recording icons reWind 1001, stop 1003, and play 1005. virtual keyboard ball triggers Whatever note that section happens to represent. FIGS. 11—12 are simpli?ed diagrams of other examples according to the present invention. These diagrams are merely examples and should not limit the scope of the claims herein. One of ordinary skill in the art Would recogniZe other variations, modi?cations, and alternatives. FIG. 11 is a art Would recogniZe other variations, modi?cations, and 65 alternatives. The display diagram can be a collection of balls representing the seven modes 1301, major and minor pen tatonic scales, major and minor blues scales, arpeggios of US 6,353,167 B1 9 10 major and minor triads, arpeggios of major and minor seventh chords, the chromatic scale, and other balls repre senting other simple harmonic structures, for example, J an musicians typically employ While improvising melodic lines in various styles. The keyboard ball represents the entire 5 body of scale or mode, Which de?nes a mode such as mixalidian, etc. Although the diagram is shoWn in a circular arrangement, it can also be in the form of a linear arrangement, a polygon, and other shapes, as Well as siZes. 10 EXAMPLE To prove the principle and operation of the present invention, examples Were made Which implemented the present invention. Certain aspects of the present invention Were implemented on a computer system. The computer 15 system Was a MacIntoshTM computer made by a company called Apple Computer, Inc. of Cupertino, Calif. The system Was loaded With a computer softWare program called MAX from Opcode Systems Inc. The program is generally an interactive real-time graphic programming environment for 20 multimedia applications. MAX is object oriented, and alloWs the user to program by Way of graphical techniques. Max includes a variety of objects and features including, for example, device control (e.g., MIDI devices, CD audio), 25 MIDI support, user interface, graphics, timing, and others. Further details of MAX can be found at http:// WWW.opcode.com/products/max/, Which is incorporated by reference herein. Aspects of the present invention Were programmed using MAX. An example of computer code, 30 Which Was implemented on MAX is provided beloW. max v2; #N vpatcher 100 46 722 466; #P button 151 66 15 0; #P message 608 317 23 196617 Zero; #P #P #P #P #P message 102 22 52 196617 stop; message 103 1 58 196617 start 1024; hidden neWex 146 433 35 196617 metro; hidden toggle 121 392 15 0; hidden button —31 459 15 0; 35 40 #N vpatcher 635 450 638 478; #P outlet 182 629 15 0; #P neWex 48 290 105 196617 if $i1==0 then set 1; 45 #P user uslider 35 39 18 128 13 1 0 0; #P comment 240 603 100 196617 Out to Movie “Next”; #P comment 240 66 100 196617 Inlet from Seq MidiParse Patch Change #; #P #P #P #P #P #P comment 224 123 button 558 281 15 button 205 284 15 button 339 287 15 button 444 283 15 comment 473 190 50 100 196617 Patch #; 0; 0; 0; 55 0; 62 196617 int in left inlet selects gate outlet; #P #P #P #P #P #P #P #P comment comment comment comment comment comment comment comment 196 40 47 196622 gate; 53 266 100 196617 BASIC is the default; 192 311 100 196617 MIXOLYDIAN; 850 537 100 196617 IONIAN; 730 539 100 196617 LYDIAN; 626 542 100 196617 PENT 5; 511 541 100 196617 PENT 4; 392 544 100 196617 PENT 3; 60 65 #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P comment 285 544 100 196617 PENT 2; comment 774 305 100 196617 PENT 1; comment 649 306 100 196617 LOCRIAN; comment 532 309 100 196617 PHRYGIAN; comment 419 309 100 196617 AOLEAN; comment 301 310 100 196617 DORIAN; button 786 281005 0; button 668 286 15 0; button 512 521 15 0; button 403 523 15 0; button 291 523 15 0; button 624 520 15 0; button 853 514 15 0; button 737 516 15 0; number 223 141 35 9 0 0 0 3; inlet 220 77 15 0; neWex 646 259 105 196617 if $i1==5 then set 1; neWex 404 257 105 196617 if $i1==3 then set 1; neWex 292 260 105 196617 if $i1==2 then set 1; neWex 182 262 105 196617 if $i1==1 then set 1; neWex 283 497 105 196617 if $i1==7 then set 1; neWex 758 258 105 196617 if $i ==6 then set 1; neWex 393 495 105 196617 if $i1==8 then set 1; neWex 500 492 105 196617 if $i ==9 then set 1; neWex 531 258 105 196617 if $i1==4 then set 1; neWex 724 484 111 196617 if $i1==11 then set 1; neWex 608 490 111 196617 if $i1==10 then set 1; neWex 844 480 111 196617 if $i1==12 then set 1; outlet 200 631 15 0; outlet 224 630 15 0; outlet 244 631 15 0; outlet 276 631 15 0; outlet 303 626 15 0; outlet 329 622 15 0; outlet 357 621 15 0; outlet 387 617 15 0; outlet 410 617 15 0; outlet 435 615 15 0; outlet 459 615 15 0; outlet 478 618 15 0; connect 24 0 56 0; connect 25 0 57 0; connect 25 0 20 0; connect 57 0 58 0; connect 20 0 11 0; connect 20 0 51 0; connect 56 0 25 0; connect 21 0 10 0; connect 22 0 9 0; connect 15 0 8 0; connect 25 0 19 0; connect 19 0 29 0; connect 25 0 21 0; connect 23 0 7 0; connect 18 0 6 0; connect 21 0 50 0; US 6,353,167 B1 11 #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P connect connect connect connect connect connect connect connect connect connect connect connect connect connect connect connect connect connect connect connect connect connect connect connect pop; 19 17 25 17 25 16 13 22 14 12 25 16 25 15 25 13 25 23 25 14 25 18 25 12 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 0; 4 0; 17 0; 30 0; 22 0; 3 0; 2 0; 49 0; 1 0; 0 0; 16 0; 31 0; 15 0; 52 0; 13 0; 28 0; 23 0; 32 0; 14 0; 26 0; 18 0; 33 0; 12 0; 27 0; 12 #P button —41 238 15 0; #P comment 63 53 141 196617 ‘bang’ to play at default speed; #P comment 63 69 194 196617 ‘start’ (tempo) With 1024=normal speed; #P comment 63 86 124 196617 stop recording and play 10 event; #P comment 63 155 178 196617 print out ?rst feW events in sequence; #P comment 63 202 163 196617 save as a MIDI or teXt 15 neWeX 127 405 41 196617 midiout; inlet —112 157 15 0; inlet —128 157 15 0; comment —117 32 100 196617 MIDI sequencer; #P neWeX —82 214 27 196617 seq; 20 25 30 user kslider 483 328 54 0 36 48 31 12; number 730 426 35 9 0 0 0 3; number 403 426 35 9 0 0 0 3; neWeX 403 490 158 196617 noteout 1; neWeX 403 456 158 196617 makenote 80 100; 35 40 45 #P outlet 242 433 15 0; #P number 332 396 35 9 0 0 0 3; #P message 6 120 52 196617 read; #P message 649 —33 158 1441802 play 1 2 3 4 5 6 7 8 9 10; #P comment 232 51 100 196617 MIDI sequencer; #P user umenu 354 26 83 196647 1 64; #P #P #P #P #P #P #P 55 #P number —65 337 35 9 0 0 0 3; #P neWeX —52 560 40 196617 unpack; #P number —52 582 27 9 0 0 0 3; #P button —71 615 15 0; #P number —22 582 28 9 0 0 0 3; #P number 40 582 28 9 0 0 0 3; #P number 10 582 27 9 0 0 0 3; #P neWeX 10 560 40 196617 unpack; #P number 101 582 28 9 0 0 0 3; #P number 71 582 27 9 0 0 0 3; #P neWeX 71 560 40 196617 unpack; #P number 134 560 28 9 0 0 0 3; #P button 134 582 15 0; #P neWeX —52 534 340 196617 midiparse; #P number 278 560 28 9 0 0 0 3; #P button 278 582 15 0; #P number 223 560 28 9 0 0 0 3; #P button 223 582 15 0; #P button 180 582 15 0; #P number 180 560 28 9 0 0 0 3; #P comment —50 632 300 196617 Midiparse parses raW MIDI bytes into ints or lists of tWo ints. Each outlet is a different MIDI message type.; #P comment 362 67 59 196617 ints interpreted as MIDI bytes; #P neWeX 355 48 50 196617 midiin; 60 #P comment 354 11 62 196617 Input device:; #P hidden neWeX 278 14 49 196617 omsinfo; #P hidden neWeX 278 —26 52 196617 loadbang; #P hidden message 278 —5 64 196617 controllers; #P comment —24 239 272 196617 bang sent out right outlet When sequence comes to the end; message 6 154 52 196617 print; message 6 137 52 196617 delay 0; message 6 103 52 196617 record; message 7 71 58 196617 start 1024; button 6 52 15 0; message 6 86 52 196617 stop; comment —37 218 224 196617 optional argument to read in a MIDI or teXt ?le; #P comment —117 58 62 196617 Input device:; #P #P #P #P #p #P message 6 198 52 196617 Write; #P comment 63 173 166 196617 read (optional ?lename) from a teXt or MIDI ?le; #P user umenu —117 73 83 196647 1 64; #P neWeX —116 95 50 196617 midiin; ?le; #P message 531 38 52 196617 read; #P hidden neWobj —33 112 187 196617 patcher MODE; #N vpatcher 83 120 615 363; #P #P #P #P mg; #P comment 63 103 77 196617 start recording; #P comment 63 137 140 196617 set onset delay of ?rst 65 #P #P #P #P #P #P #P #P button 10 600 15 0; button 71 600 15 0; comment 25 598 47 196617 Poly Pressure; comment —36 599 38 196617 Note On/Off; comment 89 599 44 196617 Control Change; comment 262 599 41 196617 MIDI Channel; comment 178 599 34 196617 After Touch; comment 133 599 40 196617 Pgm Change; US 6,353,167 B1 14 13 #P comment 221 599 32 196617 Pitch Bend; #P comment —66 514 204 196617 Separate raW MIDI bytes by message type; #P #P #P #P comment —64 482 83 196622 midiparse; message 457 60 48 1441802 ?rst 0; message 461 113 40 1441802 stop; message 642 16 40 1441802 play; #P neWeX 507 177 199 1441802 mtr 10; #P color 5; #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P message 481 7 55 1441802 record 3; number 584 294 35 9 0 0 0 3; comment 219 455 100 196617 Patch Changes; hidden fasten 78 1 77 0 —39 92 —111 92; connect 77 0 48 0; connect 68 0 48 0; connect 47 0 48 0; connect 45 0 48 0; connect 41 0 48 0; connect 44 0 48 0; connect 43 0 48 0; connect 42 0 48 0; connect 40 0 48 0; connect 80 0 48 0; connect 81 0 48 0; connect 36 0 35 0; connect 48 0 38 0; connect 38 0 25 0; connect 25 0 37 0; connect 37 0 36 0; connect 48 1 57 0; connect 37 1 34 0; fasten 25 1 31 0 8 556 15 556; connect 31 0 32 0; connect 32 0 17 0; connect 31 1 33 0; fasten 25 2 28 0 63 556 76 556; connect 28 0 29 0; connect 29 0 16 0; connect 28 1 30 0; connect 48 0 82 0; fasten 25 3 27 0 118 556 139 556; connect 27 0 26 0; fasten 25 4 19 0 173 556 185 556; connect 19 0 20 0; connect 25 5 22 0; connect 22 0 21 0; connect 25 3 70 0; connect 69 0 70 0; hidden connect 60 0 59 0; hidden connect 59 0 61 0; connect 25 6 24 0; connect 24 0 23 0; hidden connect 61 0 65 0; hidden fasten 65 1 63 0 432 45 360 45; connect 75 0 73 0; connect 73 0 71 0; connect 71 0 72 0; 10 15 20 25 #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P fasten 71 1 72 1 556 479 482 479; connect 67 0 3 0; connect 2 0 3 0; connect 49 0 3 0; fasten 5 0 3 0 466 133 512 133; fasten 6 0 3 0 462 86 512 86; fasten 4 0 3 0 647 109 512 109; connect 63 0 3 1; connect 63 0 3 2; fasten 74 0 71 2 735 450 556 450; connect 63 0 3 3; connect 3 2 1 0; connect 3 1 1 0; connect 3 0 1 0; connect 3 3 1 0; connect 3 4 1 0; connect 3 5 1 0; connect 3 6 1 0; connect 3 7 1 0; connect 3 8 1 0; connect 3 9 1 0; connect 3 10 1 0; pop; #P neWobj 19 93 113 196617 patcher Midi Sequencer; 30 #P hidden number 31 1116 35 9 0 0 0 3; #P hidden neWeX 2 1149 27 196617 +; 35 #P #P #P #P hidden hidden hidden hidden number 4 235 35 9 0 0 0 3; user kslider 61 1194 54 0 48 96 31 12; number 2 1089 35 9 0 0 0 3; user uslider 99 1070 24 61 128 1 86 0; #N vpatcher 50 48 672 468; #P comment 294 357 164 196617 “Velocity” outputclick 40 45 the mouse at different heights on each key; #P number 464 361 35 9 0 0 0 3; #P comment 175 362 100 196617 Value output; #P number 137 361 35 9 0 0 0 3; #P user kslider 137 299 54 0 36 48 31 12; #P neWeX 137 420 158 196617 noteout 1; #P neWeX 137 391 158 196617 makenote 80 100; #P comment 579 236 276 196617 reset a channel (clears notes and resets controllers). reset With no argument 50 resets all the channels in this object; #P comment 768 210 159 196617 change to Standard Kit 55 #P message 700 210 65 196617 inst 1 16385; #P comment 702 146 228 196617 other messages: “con troller” channel controller-number value. Send control ler. Seems not to Work. “knob” channel controller number value. Send “knob.” Don’t knoW What its drum kit (try notes 36 \, 37 \, 40); function is.; #P comment 673 59 142 196617 channel (for neXt note 60 played); #P comment 537 59 30 196617 pitch; #P comment 612 59 45 196617 velocity; #P comment 625 39 124 196617 inlets Work like “note 65 out”; #P neWeX 817 50 45 196617 pack 0 0; #P neWeX 817 28 62 196617 random 128; US 6,353,167 B1 15 16 #P #P #P #P #P #P neWeX 884 27 62 196617 random 128; #P neWeX 817 4 55 196617 metro 500; #P toggle 817 —15 15 0; #P message 629 20 45 196617 vol 1 \$1; #P number 629 —2 35 9 0 0 0 3; 10 Instrument Picker dialog; #P number 530 159 35 9 0 0 0 3; #P message 530 181 49 196617 inst 1 \$1; #P comment 703 133 241 196617 Component $1 is the 20 channel For the built-in (1) to General synthesizer MIDI \, this instrument commandnumber can not be executed in real time since the instrument is often loaded from disk.; #P #P #P #P message 529 102 43 196617 inst 1 5; comment 552 4 68 196617 play middle C; message 529 3 20 196617 60; 25 neWeX 529 27 85 196617 makenote 80 400; #P comment 704 72 248 196617 arguments are a set of 30 triples (component indeX \, polyphony \, instrument) for each “channel” (starting at 1) created for the object. There is no set limit on the number of channels. You can have multiple qtmusic objects too.; #P neWeX 529 73 161 196617 qtmusic 1 4 1; #P comment 525 —8 195 196617 Interface to Quicktime 35 music architecture; #P comment 525 —38 66 196622 qtmusic; #P number 65 73 35 9 0 0 0 3; #P inlet 65 —16 15 0; #P connect 0 0 1 0; #P connect 1 0 36 0; #P connect 36 0 37 0; #P connect 37 0 34 0; #P connect 34 0 35 0; #P fasten 34 1 35 1 290 414 216 414; #P fasten 39 0 34 2 469 385 290 385; #P connect 36 1 39 0; #P hidden connect 25 0 6 0; #P connect 7 0 6 0; #P fasten 31 0 4 0 705 232 522 232 522 66 534 66; #P hidden connect 20 0 4 0; #P fasten 17 0 4 0 536 226 522 226 522 67 534 67; #P fasten 16 0 4 0 538 255 522 255 522 66 534 66; #P fasten 13 0 4 0 535 202 522 202 522 66 534 66; #P fasten 11 0 4 0 535 153 522 153 522 67 534 67; #P fasten 9 0 4 0 534 124 522 124 522 67 522 67 534 67; #P connect 6 0 4 0; #P connect 14 0 13 0; #P connect 19 0 20 0; #P connect 6 1 4 1; #P connect 21 0 22 0; 0 0 0 0 24 25 25 23 0; 0; 1; 0; #P #P #P #P message 116 95 20 196617 67; outlet 71 381 15 0; number 49 214 35 9 0 0 0 3; inlet 52 21 15 0; #P neWeX 71 278 27 196617 +; 15 Macintosh Built-in synthesiZer; #P message 530 133 43 196617 inst 1 1; #P comment 578 95 115 196617 change instrument on 22 24 23 22 #P neWobj 2 300 81 196617 patcher Midi out; #N vpatcher 51 40 379 478; #P comment 678 0 118 196617 change volume on a channel—range appears to be from 0 to 1000?; #P message 531 207 35 196617 pick 1; #P message 533 237 41 196617 reset 1; #P comment 580 205 114 196617 change instrument via connect connect connect connect pop; 40 #P #P #P #P #P #P #P #P number 71 320 35 9 0 0 0 3; user hslider 147 62 18 128 128 1 0 0; number 148 132 35 9 0 0 0 3; neWeX 100 59 27 196617 key; neWeX 118 170 27 196617 +; number 131 216 35 9 0 0 0 3; number 101 131 35 9 0 0 0 3; message 95 229 20 196617 79; #P #P #P #P #P #P #P #P #P #P #P #P #P #P #P inlet 147 22 15 0; connect 10 0 11 0; connect 11 0 9 0; connect 9 0 8 0; connect 8 0 12 0; connect 3 0 9 1; connect 1 0 9 1; connect 13 0 2 0; connect 5 0 13 0; connect 2 0 4 0; connect 4 0 3 0; connect 6 0 4 1; connect 0 0 7 0; connect 7 0 6 0; pop; #P neWobj 3 265 62 196617 patcher Key; #N vpatcher 50 40 638 478; 45 #P comment —27 223 100 196617 note sWap of mode order-->; #P comment 18 —331 100 196617 in from mode; #P neWeX 691 —541 134 196617 if $i1<==$i2/2 then set 50 55 $i1; #P #P #P #P #P #P comment 219 comment —20 comment 782 comment 660 comment 807 comment 80 84 100 196617 OUT; 344 100 196644 Y; 488 100 196644 X; —410 100 196617 NOTE CROSS; —642 100 196617 X/3<=y; 649 100 196617 Use Select To Cul Enharmonic Tones; 60 65 #P comment 147 533 58 196617 Divided by 20 to get it Within the range of MIDI note numbers; #P comment 303 439 73 196617 Y Coordinates; #P comment 205 444 72 196617 X Coordinates; #P comment —4 544 114 196617 The distance of the mouse from the center of the ragZbol=the square root of (the X coordinates squared plus the Y coordinates squared); #P comment 693 —674 100 196617 Mouse Coordinates;