EP2122606A2 - Real time divisi with path priority, defined note ranges and forced octave transposition - Google Patents
Real time divisi with path priority, defined note ranges and forced octave transpositionInfo
- Publication number
- EP2122606A2 EP2122606A2 EP08724644A EP08724644A EP2122606A2 EP 2122606 A2 EP2122606 A2 EP 2122606A2 EP 08724644 A EP08724644 A EP 08724644A EP 08724644 A EP08724644 A EP 08724644A EP 2122606 A2 EP2122606 A2 EP 2122606A2
- Authority
- EP
- European Patent Office
- Prior art keywords
- note
- notes
- channel
- channels
- played
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000017105 transposition Effects 0.000 title claims description 30
- 238000000034 method Methods 0.000 claims abstract description 58
- 239000011295 pitch Substances 0.000 claims description 25
- 238000012804 iterative process Methods 0.000 claims description 8
- 239000011159 matrix material Substances 0.000 description 30
- 241000405217 Viola <butterfly> Species 0.000 description 22
- 208000023514 Barrett esophagus Diseases 0.000 description 20
- 238000009826 distribution Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 5
- 238000012152 algorithmic method Methods 0.000 description 2
- ZYXYTGQFPZEUFX-UHFFFAOYSA-N benzpyrimoxan Chemical compound O1C(OCCC1)C=1C(=NC=NC=1)OCC1=CC=C(C=C1)C(F)(F)F ZYXYTGQFPZEUFX-UHFFFAOYSA-N 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 241000219492 Quercus Species 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005352 clarification Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/18—Selecting circuits
- G10H1/183—Channel-assigning means for polyphonic instruments
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/18—Selecting circuits
- G10H1/22—Selecting circuits for suppressing tones; Preference networks
Definitions
- This system and method generally relates to the field of processing live or sequenced musical notes utilizing a form of divisi as set forth in the present Author's U.S. patent 7,109,406 and as further developed in PCT Serial Number PCT/USO6/ 17757 filed May 5, 2006, adding multiple semi-automatic functions that may be used to attain real time orchestration of a virtual ensemble of virtual musical instruments during a live or sequenced performance.
- Each available instrument or group of like instruments can be assigned a playable note range which affects how notes are allocated among said instruments or groups of instruments.
- the method can automatically transpose notes that would otherwise be out of the playable range of the virtual instruments into playable ranges for said instruments in a way that preserves the original melodic intent.
- the system and method for manipulation of sampled or synthesized sounds described herein relates to the live or sequenced playback of orchestral sounds, choirs, or any type of music. This affects isolated notes as well as individual or multiple notes which may be part of or entirely comprising a musical chord.
- Sampled musical instruments have absolute ranges which correspond to the physical playable pitch range of the original instruments used to create the recording from which the samples were generated. While these pitch ranges can be artificially extended by various means of pitch shifting, the results of pitch shifting tend to be less than sonically realistic and often sample libraries do not rely upon this technique to produce more than a few semitones of pitch shift. Some pitch shift is acceptable sonically, and use of this technique allows sample libraries containing an notes witnin tne aosoiuie range of a given instrument to be built from recordings of every third or fourth note of that instrument, for example, thus conserving time in library creation as well as reducing the required storage memory and other sample playing resources.
- the Italian term divisi generally refers to the orchestral allocation of notes amongst a given section of string players such as the first violins, second violins, violas, celli or basses.
- string players such as the first violins, second violins, violas, celli or basses.
- a single note is to be played by one of these string sections, for example, all musicians in that section play the same note.
- chord of two or more notes is to be played by one of these string sections, the available musicians split up or divisi themselves so that some musicians play one note, some another, and so forth.
- Divisi can be abstracted up a level to cover more than just string sections; the same principle can be used to cover allocation of notes among various available individual instruments in the orchestra, among ad-hoc groups of instruments, or even among pitched and unpitched sounds of any description. Musically, however, it would not necessarily sound good to simply split up chords to feed various instruments willy-nilly. So in setting up a system whereby notes and chords can be automatically orchestrated by some implementation of divisi allocation methods, the user should be allowed to make decisions as to which instruments will play first and which instruments come in subsequently as a chord is arpeggiated (that is, as notes are played individually or as they are added to an already playing note or chord). As well the user should be able to make decisions as to which notes are allowed to be allocated to various instruments (or stems of instruments) based on defined playable ranges for each instrument.
- any given set of available instruments their playable ranges may or may not overlap, and even if the ranges do overlap, the span of notes wherein they overlap may vary from as few as 1 to as many as all playable notes.
- a method of allocating notes played to the set instrument ranges could thereby produce very different sounding results depending on the actual ranges set for the various instruments. Too, it is possible that certain notes may fall outside the playable range of any available instruments, either higher than the highest playable note, lower than the lowest playable note, or in a hole between the playable note ranges of non-overlapping instrument playable ranges.
- non-playable notes can be automatically transposed by one-octave increments such that they can be allocated to whatever available instrument has the nearest (by pitch) playable note range that can accommodate the transposed note.
- the ultimate divisi of incoming notes and chords to available instruments (which reference here also includes paths or stems of multiple instruments) will thus depend upon how the user sets up the path priorities, the playable ranges for each path, and the options to transpose notes up or down in pitch, in octave or other desired increments, so they remain within playable ranges.
- the benefits of the described method which applies these orchestrational principles to create a divisi amongst various instruments include enabling the user to play anywhere on an 88-key or smaller MIDI keyboard while preserving a pleasing, well balanced orchestration mat win oe piayaoie oy live musicians using actual acoustic instruments that correspond to the sampled (or synthesized) virtual instruments being controlled by the described system, and as well the ability to generate
- a note assignment processor for assigning notes to selected channels to be played by said channels, the processor comprising: an input for receiving a notes-to-be-played signal; a central processing unit for detecting said signal, determining the number of notes to be played simultaneously, and performing iterative process to assign each note to a selected channel; a note register for storing the total number of notes to be played simultaneously; a note list register for storing the notes to be played simultaneously in a pitch order; a current note register for storing the identity of the current note processed by said central processing unit; a channel register for storing the total number of channels available for note assignment; a channel list register for storing the channels in a specified order; a channel pitch range register for storing lowest and highest playable pitches per each channel; a transpose up register for each channel to indicate upward note transposition for that channel; a transpose down register for each channel to indicate downward note transposition for that channel; a weighting preference register to store top or bottom weighted assignment of notes to channels
- the note assignment processor may designate actual notes to be played by one or more particular channels, which are determined to be capable of playing the notes, by filling out the array in accordance with the specified playable range, transposition enabling register and top-bottom weighting preference for each channel.
- the total number of channels remains constant for the entire duration of a music piece played.
- the total numuci ⁇ i n ⁇ ics ⁇ cdui pi ⁇ ymg msuuitc u ⁇ es not exceed the total number of channels.
- the processor may perform an iterative process to determine to which available channels played notes may possibly be assigned according to the note pitch and each channel's allowable ranges, as designated by the channel's stored pitch range limits and as may be extended by virtue of any stored transposition up-down register values.
- the total number of channels may be held fixed.
- the total number of channels may vary from zero up to the number of available channels as more notes are played after which number of notes the number of channels does not increase with additional notes played and instead an overflow iterative process assigns remaining unassigned notes to an already assigned channel, to thereby assign at least one channel to play at least two notes.
- the order in which notes are assigned to channels accords with the specified channel priority values.
- a method for assigning notes to selected channels to be played by the channels comprising: designating a plurality of channels, each channel emulating an audio instrument; defining a note range for each channel; receiving instructions to play a plurality of defined notes simultaneously; and allocating each of the plurality of notes to at least one of the channels according to note range assigned for each channel.
- Each channel may emulate a plurality of musical instruments of the same kind.
- the method may further comprise performing one of top- weighting or bottom weighting note allocation, wherein top- weighting comprises injecting preference to higher sounding musical instrument and bottom- weighting comprises injecting preference to lower sounding musical instruments.
- the method may perform transposition of one of the note so as to bring the transposed note within the range on the channel.
- the method may further comprise assigning priority value to each of the channels, and assigning notes to channels according to the priority.
- a method of assigning a sequence of sounds comprising: assigning a plurality of channels; assigning a number of voices to each channel to play the sequence of sounds; forcing the number of voices in each channel to remain constant throughout the sequence, regardless of the number of notes assigned to each channel throughout the sequence; defining a notes range for each of the channels; assigning each note to one of the channels according to whether the note falls within note range assigned to the channel.
- the voices within a given channel may emulate a musical instrument of the same kind.
- the method may further comprise performing one of top- weighting or bottom weighting note allocation, wherein top-weighting comprises injecting preference to higher sounding musical instrument and bottom- weighting comprises injecting preference to lower sounding musical instruments.
- top-weighting comprises injecting preference to higher sounding musical instrument
- bottom- weighting comprises injecting preference to lower sounding musical instruments.
- the method may perform transposition of one of the note so as to bring the transposed note within the range on the channel.
- the method may further comprise assigning priority value to each of the channels, and assigning notes to channels according to the priority.
- Fig. 1 illustrates a simple divisi of all five paths in a string section comprised of First Violins (VIn.1), Second Violins (VIn. 2), Violas (Via.), Celli (Vc.) and Basses (Cb.).
- VZII level 2 divisi
- Middle C is referenced by an arrow and, dotted notes are being played.
- Fig. 2 illustrated a DVZII involving three notes and four of the 5 paths of the string section.
- Fig. 3 illustrates a DVZII involving three notes and three of the five String Section paths.
- Fig. 4 illustrates a DVZII whereby the number of notes (3) exceeds the number of paths which are able to play them (2) because the notes are above the playable ranges of three of the five paths.
- Fig. 5 illustrates a more complex DVZII whereby some notes are within range of multiple paths, but not of all paths, and choices must be made as to how to allocate notes where they might go to various paths.
- Fig. 6 illustrates the set of notes shown in Fig 5, abstracted to a two-dimensional matrix, which is part of the actual method by which we solve for note allocation in this divisi process, showing the multiple possibilities where various notes might be assigned to various paths based on playable ranges.
- Fig. 7 illustrates the matrix of possible playable notes by the different paths, per Fig. 6, as depicted with a multi-keyboard representation.
- Fig. 8 illustrates a solution of the matrix per Fig 6, using a method which assures proper distribution and top weighting per the divisi principles in the referenced patent and PCT, with actual notes allocated per path shown in black, possible but not allocated notes shown in gray.
- Fig. 9 illustrates a solved matrix of Fig. 8, now depicted as an orchestral outcome on a multi-keyboard representation, with actual notes played by each path in black, notes that might have been played (e.g., they were within playable range) but were assigned elsewhere shown in gray.
- Fig. 10 illustrates a solution to the matrix similar to Fig 8 but done with bottom instead of top weighting.
- Fig. 11 illustrates a solved matrix of Fig. 9, now depicted as an orchestral outcome on a multi-keyboard representation.
- Fig. 12 illustrates a two-note divisi among a section of eight single-player first violin paths, showing how equal sound power is maintained for each note through even allocation of 1 note to each of four players.
- the parenthetic numbers (1) adjacent to each desk number indicate there is one player (one musician) per each desk.
- Fig. 13 illustrates a two-note divisi among a section of eight first violin paths, four of which have single players (1) and four of which have two players(2) per desk.
- more of the higher note allocation is different from that in Fig 12 in order to maintain correct power balance; 6 musicians are playing the upper note and 6 musicians are playing the lower note even though 5 paths play the upper note and 3 paths play the lower note.
- Fig. 14 illustrates an example of what may happen when no notes fall within range of a given path, this five-note divisi is applied to five paths. However no notes are within the playable range of the violas (Via.) and so they are excluded with no notes assigned to them.
- Fig. 15 illustrates the set of notes shown in Fig 14, abstracted to a two- dimensional matrix (on the left) and the solution to that matrix (on the right) with actual notes allocated per path shown in black, possible but not allocated notes shown in gray.
- Fig. 16 illustrates the matrix of possible placements and the solution thereof for the same notes shown in Figs 14 and 15, but in this instance a Force Script Shift Down function is set for the violas. Notes that previously would not have been playable by the violas are now generated through downward transposition, as indicated by the dark cross hatch and light cross hatch boxes in the viola (Via.) rows.
- Fig. 17 illustrates the solved matrix of Fig 16 (right), now depicted as an orchestral outcome on a multi-keyboard representation, with actual notes played by each path in black. Unlike Fig 14 where the violas had no notes to play, they now have a note due to the force octave shift down function being set for this path.
- Fig. 18 illustrates the matrix of possible placements and the solution thereof for the same notes shown in Figs 14 and 15, but in this instance a Force Script Shift Up function is set for the violas.
- Fig. 19 illustrates the solved matrix of Fig 18 (right), now depicted as an orchestral outcome on a multi-keyboard representation.
- Fig. 20 illustrates that it is possible to set both the Force Script Shift Up and Force Script Shift Down functions for any given path, and this illustration shows such a situation for the violas, given the same notes played and ranges as in the previous several illustrations. More possibilities exist for viola note allocation (left side) and while the solution (right) still gives them a single note to play as occurred in Fig 18, the overall DVZII note allocation is different here.
- Fig. 21 illustrates the solved matrix of Fig 20 (right) now depicted as an orchestral outcome on a multi-keyboard representation.
- Fig. 22 illustrates Level 1 divisi (DVZI), using the concept of priorities, per our referenced patent/PCT filings.
- Each path's set priority is shown in a box to the left of its keyboard.
- This and Figs 23 through 25 all show how priorities work when all the notes are within the playable range of the available paths.
- Fig. 23 illustrates DVZI with five paths, four different priorities set, and two notes played.
- Fig. 24 illustrates DVZI with five paths, four different priorities set, and three notes played.
- Fig. 25 illustrates DVZI with five paths, four different priorities set, and four notes played.
- Fig. 26 illustrates DVZI when priorities conflict with playable ranges.
- the Cello path (Cb) is set to priority 1 but the note is out of that path's playable range, so instead it is allocated to both of the paths which are set to priority 2, in this case the first and second violins (VIn.1 and VIn. 2)
- Fig. 27 illustrates two notes that are played and both are within range of the Celli, while neither is in range of the first or second violins; given the Cello path is Priority 1 they get the lowest note, but priority 2 is skipped due to the out-of-range condition so the second note goes to the violas whose path is priority 3.
- Fig. 28 illustrates an examination of the interaction between priority and force octave shift functions.
- the Cello (Vc.) path is priority 1 and it has the force octave shift up set.
- the first (and only) note played is below the cello range and would otherwise be played by the basses (Cb.) but is instead transposed up an octave and given to the Cello path because it is now within range of this priority 1 path due to the force octave shift up function being set.
- Fig. 29 is an example where all paths have both the Force Script Shift Up and Down features set, and the system is set to Top Weighting. Two notes played below the range of the priority 1, 2 and 3 paths are thereby transposed and allocated to priority 1 and 2 paths in this example. That is, notes in the bass range instead go to the violins and cello.
- Fig. 30 is similar to Fig 29 except now bottom weighting is set instead of top weighting. For this reason the lower note (D) is played by two stems instead of the higher note (E) as was done in Fig 29.
- Fig. 31 illustrates an example of what happens with a mix of Force Scripte Transpose settings and out-of-range notes.
- Force Scripte Shift Up is set for the first violins (VIn. 1) and the Celli (Vc.) paths, but not for the second violins (VIn. 2). While both the first and second violins have the same Priority 2 value, the second violins cannot play either of the two notes since they remain out of range when their path's Force Octave Transpose Up feature is not set.
- Fig. 32 is another example of the interaction between priority and Force Script Shift functions; here the Force Scripte Shift Up is set only for the Cello (Vc.) and Bass (Cb.) paths but for no others. With one of the two notes out of range for the Bass, and Priority 1 favored for the Cello path, a single transposition occurs to bring the upper note higher and into the Cello range.
- Fig. 33 is an example where the priorities and Force Script settings are the same as in Fig 32, but the one note (E) that is within range of the bass is the higher of the two original notes. Since transposing only the out-of-range (for the cello) D into the cello path would violate the rule of keeping the notes in the order played, both notes are transposed up an octave.
- Fig. 34 illustrates an example of a processor for executing the method according to an embodiment of the invention.
- DVZI refers to a Level 1 divisi (the highest or most global note allocation)
- DVZII refers to a Level 2 divisi (an allocation of notes to multiple players or desks within a single Level 1 divisi path).
- path stem, player, voice, playable range, and crossover.
- Each instrument or each path which addresses instruments can have a playable range, a span of notes which the instrument (or group of instruments) is capable of playing.
- the term crossover refers to what happens when notes fall outside the range of a given instrument or path, and are instead allocated to another instrument or path where the note are within the playable note range. For simplicity (fewer words), we sometimes use the term crossovers more-or-less interchangeably with playable note ranges even though, technically, they are not precisely the same thing. It should be understood by context what is meant here.
- DVZII with crossovers uses the same principle, but the playing ranges of the instruments involved are taken into account. In most cases, not all instruments involved in a DVZ will be able to participate. Some instruments may not have any notes in their playing ranges. When we perform a DVZII with crossovers, the goal is to distribute notes evenly across all the instruments participating.
- Fig. 2 shows the distribution of a three note chord that falls outside of the playing range of the bass.
- Fig. 3 shows the distribution of another three note chord that falls in the playing range of the top three path: violins I and II and violas.
- Violins I is allocated two notes; if this path represents an eight chair violin section, then the first four violins would play the first note and the second four would play the second note. If Violins I were a single player, the two notes would be played as a double stop. Fig. 4 illustrates this distribution.
- Fig. 5 illustrates a slightly more complicated five note DVZII. If we didn't take playing ranges into account, we would expect each note to be played by one path - this would be the optimal distribution of notes for a DVZ. Unfortunately, the playing ranges of the instruments prohibit such a uniform distribution. Instead, because the third note from the highest is above the range of the third path (Violas), the Violins I have to take two of the notes, and the fourth note has to be doubled and given to both the violas and the cellos.
- Fig. 6 shows the all possible placements of the five notes with the instruments we are using, and their ranges, per Fig. 5. Horizontal rows represent instruments, and vertical columns represent notes as indicated by the labels next to them. If a note falls in the playing range of an instrument, we set the box (here shown in black) in the matrix at the row and column representing that note and instrument. For clarification, Fig. 7 shows this matrix of possible note placements on keyboards. To obtain our actual DVZ note distribution we solve the matrix.
- the DVZ process includes a method called weighting. DVZs can either be top-weighted or bottom-weighted. With top weighting, odd distributions lean towards the higher pitch range instruments (or the higher notes for a single type of instrument), giving more of those instruments the notes which cannot be evenly distributed.
- Fig. 10 shows the solution to our matrix of possible placements with bottom weighting instead of top weighting.
- Fig. 11 shows this bottom- weighted matrix solution translated back into a keyboard representation of our orchestra.
- the inventive method of DVZ described in this application takes into account desks and voices.
- a desk or player
- a voice is the number of musicians sounding at a desk.
- Some of the violin samples are single musician players, some are two musician players - for example two people with violins recorded in one channel (or converted into one sample) while playing simultaneously in unison. Since a two-voice player will have more sound power than a single-voice player, DVZ takes into account the number of voices (musicians) per desk when distributing notes.
- Fig. 13 shows a violin section with eight desks again, but in this case, the first four desks are single voice players, and the second four desks are two-voice players. This gives us a total of twelve voices if each desk were to play one note. To maintain an equal power (equal number of voices) per note, when we play two notes in this setup, each note should be played by six voices. So here the first note gets sent to the first five desks and the second note gets sent to the last three desks.
- Fig. 14 shows a five-note DVZ. None of the notes lies within playing range of the violas, and neither force octave shift up nor force octave shift down is enabled. The resulting note distribution is shown by the dotted keys on the 5 string instrument paths.
- Fig. 15 shows the matrix of possible placements and its solution for this situation.
- Fig. 16 shows the matrix of possible placements and its solution for this situation. As illustrated, possible placements are borrowed from the immediately previous path, in this case Violins II, to fill in the viola's row. Then the matrix is solved. Fig. 16 shows the note distribution matrix with the possible note allocations on the left, and the solved transpositions and allocations on the right, using the setup described above. Compare this to the possibilities and solution without Force Scripte Shift down, as illustrated in Fig. 15.
- Fig. 19 shows the note distribution with transpositions for the solution from Fig. 18.
- Paths can be given priority numbers such as 1 , 2, 3 and so forth, and the same number can be given to more than one path; priority number values cannot be skipped, they must be contiguous.
- priorities are set and fewer notes are played than the number of paths to which notes may be assigned, those paths with lowest numbered priorities will be first in line to play notes, those with higher numbered priorities then play additional notes. If one arpeggiates a chord, then successively higher numbered paths play successively played notes, increasing the number of instruments involved with each added note; this is not like standard DVZ where there are always a constant number of instruments playing. However, when there are as many or more notes being played as there are path priority values, then the priorities cease to have a function and the standard constant player count DVZ process ensues.
- the addition of the concept of playable note ranges in this spec somewhat complicates the way priorities function and requires additional logical steps to perform correct note allocations.
- Figures 22 through 25 illustrate the sequence of note assignments to priorities if all notes fall in playing range of all paths. This is how DVZI without playing ranges works. Priorities for each path are listed in the boxes next to the path labels.
- Fig. 26 shows the same priority setup as the previous several figures: five paths with four priorities.
- one note is sounding. Since there is only one note, it should go to the cello path, whose priority is set to one. But since the note is out of the playing range of the cello, it has to go somewhere else.
- the only paths that can play it are violins I, violins II, and violas. Violins I and II are both set to priority two and violas is set to priority three, so the note is assigned to violins I and II.
- Fig. 27 illustrates a similar situation ; two notes are sounding. The higher of the two notes can be played by priorities one, three, and four. The lower of the two notes can be played by priorities one and four. If playing ranges were not taken into consideration, these notes would be assigned to priorities one and two. Since priority one is still in play, we know we must use priority one. There are two combinations of distributions that involve priority one: assigning the notes to priorities one and three or assigning the notes to priorities one and four. Since three is a lower priority than four, the method of solving for note allocation assigns the top note to priority three and the bottom note to priority four.
- Paths that have force octave transposition enabled will always play notes provided that notes can be transposed in the correct direction (we point out here that transpose up and transpose down may be enabled separately, and that either, neither or both may be enabled per path). This means that if notes can be played on paths with lower priorities with transposition, then notes will be transposed and may not sound where played on any path.
- force octave transposition up is set for the cello path, which is set to priority one. Even though the input note falls only within the playable range of the basses, it gets transposed into the cello range. This is illustrated in Fig. 28.
- Fig. 34 illustrates an example of an apparatus 3400 for executing the method according to an embodiment of the invention.
- the note assignment processor 3402 comprises a note input for receiving a notes-to-be-played signal from a note input source 3410.
- a central processing unit (CPU) 3404 performs steps according to embodiments of the invention, including detecting the signal, determining the number of notes to be played simultaneously, and performing iterative process to assign each note to a selected channel.
- a note register 3405 is provided for storing the total number of notes to be played simultaneously, while a note list register 3415 is provided for storing the notes to be played simultaneously in a pitch order.
- a current note register 3420 is used for storing the identity of the current note processed by the central processing unit 3404.
- a channel register 3425 is used for storing the total number of channels available for note assignment, while a channel list register 3430 is used for storing the channels in a specified order and a channel pitch range register 3435 is used for storing lowest and highest playable pitches per each channel.
- a transpose up register 3440 is used for each channel to indicate upward note transposition for that channel and a transpose down register 3445 s used for each channel to indicate downward note transposition for that channel.
- a weighting preference register 3450 is used to store top or bottom weighted assignment of notes to channels when such is utilized.
- a channel priority register 3455 is used to store a value corresponding to the order in which notes played will be assigned to channels in which they are playable, when this feature is utilized.
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US88541007P | 2007-01-18 | 2007-01-18 | |
PCT/US2008/000718 WO2008094415A2 (en) | 2007-01-18 | 2008-01-18 | Real time divisi with path priority, defined note ranges and forced octave transposition |
Publications (3)
Publication Number | Publication Date |
---|---|
EP2122606A2 true EP2122606A2 (en) | 2009-11-25 |
EP2122606A4 EP2122606A4 (en) | 2012-08-15 |
EP2122606B1 EP2122606B1 (en) | 2013-10-02 |
Family
ID=39674679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP08724644.3A Active EP2122606B1 (en) | 2007-01-18 | 2008-01-18 | Real time divisi with path priority, defined note ranges and forced octave transposition |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP2122606B1 (en) |
WO (1) | WO2008094415A2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104575472A (en) * | 2013-10-12 | 2015-04-29 | 雅马哈株式会社 | Display of the tones of an automated selection for parts of a music chord harmony out of multiple keyboard input tones |
CN104575472B (en) * | 2013-10-12 | 2018-06-01 | 雅马哈株式会社 | Sound generates state display method and sound generation state display device |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9418641B2 (en) | 2013-07-26 | 2016-08-16 | Audio Impressions | Swap Divisi process |
JP2015075754A (en) | 2013-10-12 | 2015-04-20 | ヤマハ株式会社 | Sounding assignment program, device, and method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1617406A1 (en) * | 2004-07-15 | 2006-01-18 | Yamaha Corporation | Tone generation processing apparatus and tone generation assignment method therefor |
US20060236848A1 (en) * | 2003-10-10 | 2006-10-26 | The Stone Family Trust Of 1992 | System and method for dynamic note assignment for musical synthesizers |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2979848B2 (en) * | 1992-07-01 | 1999-11-15 | ヤマハ株式会社 | Electronic musical instrument |
EP0743631B1 (en) * | 1995-05-19 | 2002-03-06 | Yamaha Corporation | Tone generating method and device |
US5850051A (en) * | 1996-08-15 | 1998-12-15 | Yamaha Corporation | Method and apparatus for creating an automatic accompaniment pattern on the basis of analytic parameters |
JP3743231B2 (en) * | 1999-11-26 | 2006-02-08 | ヤマハ株式会社 | Song data display control apparatus and method |
US7109406B2 (en) * | 2003-10-10 | 2006-09-19 | Stone Christopher L | System and method for dynamic note assignment for musical synthesizers |
-
2008
- 2008-01-18 WO PCT/US2008/000718 patent/WO2008094415A2/en active Application Filing
- 2008-01-18 EP EP08724644.3A patent/EP2122606B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060236848A1 (en) * | 2003-10-10 | 2006-10-26 | The Stone Family Trust Of 1992 | System and method for dynamic note assignment for musical synthesizers |
EP1617406A1 (en) * | 2004-07-15 | 2006-01-18 | Yamaha Corporation | Tone generation processing apparatus and tone generation assignment method therefor |
Non-Patent Citations (1)
Title |
---|
See also references of WO2008094415A2 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104575472A (en) * | 2013-10-12 | 2015-04-29 | 雅马哈株式会社 | Display of the tones of an automated selection for parts of a music chord harmony out of multiple keyboard input tones |
CN104575472B (en) * | 2013-10-12 | 2018-06-01 | 雅马哈株式会社 | Sound generates state display method and sound generation state display device |
Also Published As
Publication number | Publication date |
---|---|
WO2008094415A9 (en) | 2008-10-16 |
WO2008094415A2 (en) | 2008-08-07 |
EP2122606A4 (en) | 2012-08-15 |
WO2008094415A3 (en) | 2009-12-30 |
EP2122606B1 (en) | 2013-10-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7728213B2 (en) | System and method for dynamic note assignment for musical synthesizers | |
JP3582359B2 (en) | Music score allocating apparatus and computer readable recording medium recording music score allocating program | |
Meier | The score, the orchestra, and the conductor | |
EP2122606B1 (en) | Real time divisi with path priority, defined note ranges and forced octave transposition | |
JPH0437992B2 (en) | ||
EP2015855B1 (en) | System and method for dynamic note assignment for musical synthesizers | |
US7109406B2 (en) | System and method for dynamic note assignment for musical synthesizers | |
Sluchin et al. | Open form and two combinatorial musical models: The cases of Domaines and Duel | |
WO2007123549A1 (en) | System and method for dynamic note assignment for musical synthesizers | |
Malt et al. | 15. Game Theory and Formal Structure in Iannis Xenakis’s Duel (1959) | |
Geis et al. | Creating melodies and baroque harmonies with ant colony optimization | |
US9418641B2 (en) | Swap Divisi process | |
Begovic | SEVEN TRADITIONAL FOLK PIECES FROM THE BALKAN REGION ARRANGED FOR GUITAR | |
Saunders | Mutual effects: organization and interaction in the orchestral music of Christian Wolff | |
Klink | Oases for Orchestra: The Application of Igor Stravinsky's Rotational Arrays to Musical Structure | |
Morris | Structure and Infra-Structure in Milton Babbitt's Music: Listening to Babbitt's Concerti for Orchestra | |
Rivest | John Cage's Concert for Piano and Orchestra 1 | |
James | Orchestration at A level | |
Groot | A New Graded Repertoire: A Pedagogical Analysis of Works for Viola by Underrepresented Composers | |
Johnson | An American Port of Call: Score Analysis and Transcription for Wind Ensemble | |
Vitkauskaitė | Chrysalis | |
Feeney | Festina Lente, for Flute, Clarinet, Violin, and Cello: Influences, Methods, and Analysis | |
WO2022222240A1 (en) | Apparatus and method for scale arrangement of electronic plucked string instrument | |
Humfeld | STOMP by John Corigliano: A Wind Band Transcription | |
Werry | AQA A level AoS1: Baroque solo concerto |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20090729 |
|
AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR |
|
R17D | Deferred search report published (corrected) |
Effective date: 20091230 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G10H 1/22 20060101AFI20100114BHEP |
|
DAX | Request for extension of the european patent (deleted) | ||
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R079 Ref document number: 602008027894 Country of ref document: DE Free format text: PREVIOUS MAIN CLASS: G10H0007000000 Ipc: G10H0001220000 |
|
A4 | Supplementary search report drawn up and despatched |
Effective date: 20120713 |
|
RIC1 | Information provided on ipc code assigned before grant |
Ipc: G10H 1/22 20060101AFI20120709BHEP |
|
17Q | First examination report despatched |
Effective date: 20121030 |
|
GRAP | Despatch of communication of intention to grant a patent |
Free format text: ORIGINAL CODE: EPIDOSNIGR1 |
|
INTG | Intention to grant announced |
Effective date: 20130507 |
|
GRAS | Grant fee paid |
Free format text: ORIGINAL CODE: EPIDOSNIGR3 |
|
GRAA | (expected) grant |
Free format text: ORIGINAL CODE: 0009210 |
|
AK | Designated contracting states |
Kind code of ref document: B1 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MT NL NO PL PT RO SE SI SK TR |
|
REG | Reference to a national code |
Ref country code: GB Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: EP Ref country code: AT Ref legal event code: REF Ref document number: 634965 Country of ref document: AT Kind code of ref document: T Effective date: 20131015 |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: FG4D |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R096 Ref document number: 602008027894 Country of ref document: DE Effective date: 20131128 |
|
REG | Reference to a national code |
Ref country code: AT Ref legal event code: MK05 Ref document number: 634965 Country of ref document: AT Kind code of ref document: T Effective date: 20131002 |
|
REG | Reference to a national code |
Ref country code: NL Ref legal event code: VDEP Effective date: 20131002 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: SI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 |
|
REG | Reference to a national code |
Ref country code: LT Ref legal event code: MG4D |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140102 Ref country code: IS Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140202 Ref country code: LT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: FI Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: SE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: CZ Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: HR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: NL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: BE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: PL Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: ES Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: CY Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: AT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: LV Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: PT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140203 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602008027894 Country of ref document: DE |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: EE Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 |
|
PLBE | No opposition filed within time limit |
Free format text: ORIGINAL CODE: 0009261 |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MC Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: LU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140118 Ref country code: RO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: SK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: IT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 |
|
REG | Reference to a national code |
Ref country code: CH Ref legal event code: PL |
|
26N | No opposition filed |
Effective date: 20140703 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: DK Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R097 Ref document number: 602008027894 Country of ref document: DE Effective date: 20140703 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: CH Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20140131 Ref country code: LI Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20140131 |
|
REG | Reference to a national code |
Ref country code: FR Ref legal event code: ST Effective date: 20140930 |
|
REG | Reference to a national code |
Ref country code: IE Ref legal event code: MM4A |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: FR Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20140131 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: IE Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES Effective date: 20140118 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: MT Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: NO Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140101 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: BG Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: GR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20140103 |
|
PG25 | Lapsed in a contracting state [announced via postgrant information from national office to epo] |
Ref country code: TR Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT Effective date: 20131002 Ref country code: HU Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT; INVALID AB INITIO Effective date: 20080118 |
|
PGFP | Annual fee paid to national office [announced via postgrant information from national office to epo] |
Ref country code: DE Payment date: 20240130 Year of fee payment: 17 Ref country code: GB Payment date: 20240124 Year of fee payment: 17 |