<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ep-patent-document PUBLIC "-//EPO//EP PATENT DOCUMENT 1.4//EN" "ep-patent-document-v1-4.dtd">
<ep-patent-document id="EP08724644B1" file="EP08724644NWB1.xml" lang="en" country="EP" doc-number="2122606" kind="B1" date-publ="20131002" status="n" dtd-version="ep-patent-document-v1-4">
<SDOBI lang="en"><B000><eptags><B001EP>ATBECHDEDKESFRGBGRITLILUNLSEMCPTIESILTLVFIRO..CY..TRBGCZEEHUPLSK..HRIS..MTNO........................</B001EP><B003EP>*</B003EP><B005EP>J</B005EP><B007EP>DIM360 Ver 2.40 (30 Jan 2013) -  2100000/0</B007EP></eptags></B000><B100><B110>2122606</B110><B120><B121>EUROPEAN PATENT SPECIFICATION</B121></B120><B130>B1</B130><B140><date>20131002</date></B140><B190>EP</B190></B100><B200><B210>08724644.3</B210><B220><date>20080118</date></B220><B240><B241><date>20090729</date></B241><B242><date>20121030</date></B242></B240><B250>en</B250><B251EP>en</B251EP><B260>en</B260></B200><B300><B310>885410 P</B310><B320><date>20070118</date></B320><B330><ctry>US</ctry></B330></B300><B400><B405><date>20131002</date><bnum>201340</bnum></B405><B430><date>20091125</date><bnum>200948</bnum></B430><B450><date>20131002</date><bnum>201340</bnum></B450><B452EP><date>20130507</date></B452EP></B400><B500><B510EP><classification-ipcr sequence="1"><text>G10H   1/22        20060101AFI20120709BHEP        </text></classification-ipcr></B510EP><B540><B541>de</B541><B542>ECHTZEIT-DIVISI MIT PFADPRIORITÄT, DEFINIERTEN NOTENBEREICHEN UND ZWANGSOKTAVENTRANSPOSITION</B542><B541>en</B541><B542>REAL TIME DIVISI WITH PATH PRIORITY, DEFINED NOTE RANGES AND FORCED OCTAVE TRANSPOSITION</B542><B541>fr</B541><B542>DIVISI EN TEMPS RÉEL AVEC PRIORITÉ DE TRAJET, GAMMES DE NOTES DÉFINIES ET TRANSPOSITION D'OCTAVE IMPOSÉE</B542></B540><B560><B561><text>EP-A1- 1 617 406</text></B561><B561><text>US-A- 5 369 224</text></B561><B561><text>US-A- 5 850 051</text></B561><B561><text>US-A- 5 895 877</text></B561><B561><text>US-A1- 2006 236 848</text></B561><B561><text>US-A1- 2006 236 848</text></B561><B561><text>US-B1- 6 582 235</text></B561><B561><text>US-B2- 7 109 406</text></B561><B565EP><date>20120713</date></B565EP></B560></B500><B700><B720><B721><snm>STONE, Christopher</snm><adr><str>5258 Twin Oaks Road</str><city>Hidden Hills, California 91302-2416</city><ctry>US</ctry></adr></B721><B721><snm>DAVIS, Gary</snm><adr><str>7545 Royer Avenue</str><city>West Hills, California 91307-1534</city><ctry>US</ctry></adr></B721></B720><B730><B731><snm>The Stone Family Trust Of 1992</snm><iid>100997410</iid><irf>53.253 EP</irf><adr><str>5258 Twin Oaks Road</str><city>Hidden Hills, California 91302-2416</city><ctry>US</ctry></adr></B731></B730><B740><B741><snm>Kirschner, Klaus Dieter</snm><sfx>et al</sfx><iid>101112759</iid><adr><str>Puschmann Borchert Bardehle 
Patentanwälte Partnerschaft 
Bajuwarenring 21</str><city>82041 Oberhaching</city><ctry>DE</ctry></adr></B741></B740></B700><B800><B840><ctry>AT</ctry><ctry>BE</ctry><ctry>BG</ctry><ctry>CH</ctry><ctry>CY</ctry><ctry>CZ</ctry><ctry>DE</ctry><ctry>DK</ctry><ctry>EE</ctry><ctry>ES</ctry><ctry>FI</ctry><ctry>FR</ctry><ctry>GB</ctry><ctry>GR</ctry><ctry>HR</ctry><ctry>HU</ctry><ctry>IE</ctry><ctry>IS</ctry><ctry>IT</ctry><ctry>LI</ctry><ctry>LT</ctry><ctry>LU</ctry><ctry>LV</ctry><ctry>MC</ctry><ctry>MT</ctry><ctry>NL</ctry><ctry>NO</ctry><ctry>PL</ctry><ctry>PT</ctry><ctry>RO</ctry><ctry>SE</ctry><ctry>SI</ctry><ctry>SK</ctry><ctry>TR</ctry></B840><B860><B861><dnum><anum>US2008000718</anum></dnum><date>20080118</date></B861><B862>en</B862></B860><B870><B871><dnum><pnum>WO2008094415</pnum></dnum><date>20080807</date><bnum>200832</bnum></B871></B870></B800></SDOBI>
<description id="desc" lang="en"><!-- EPO <DP n="1"> -->
<p id="p0001" num="0001">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 <patcit id="pcit0001" dnum="US7109406A"><text>US-A-7,109,406</text></patcit> and as further developed in <patcit id="pcit0002" dnum="US0617757W"><text>PCT/US06/17757</text></patcit>, 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.</p>
<p id="p0002" num="0002">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.</p>
<p id="p0003" num="0003">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. It is possible to restrict the playable range of a sampled instrument to be less than the absolute playable range of the acoustic instrument by either not using or by blocking access to notes above some upper limit or below some lower limit, or by allowing only specific pitches to be<!-- EPO <DP n="2"> --> played. Such restrictions may be done to attain sonic improvements, power balancing, specific orchestrational goals, or for other reasons. In any case, all sampled instruments, also known as virtual instruments, have playable ranges. Within the MIDI specification, there are 128 defined notes, although the largest MIDI keyboard commercially available has a total of 88 black and white keys (corresponding to the 88 notes of the chromatic scale) much like a typical grand piano keyboard. The playable range of any specific virtual instrument may be fewer than 88 notes. Thus it is possible to play notes when using a MIDI keyboard (or MIDI sequencer) that exceeded the playable range of a given virtual instrument in which case, with prior art systems, either no sound will be produced or, if sound is produced, it will be stretched upward or downward as necessary, typically using a pitch bend method that alters the playback sampling rate to artificially extend playability beyond the absolute sampled note range. Such stretching risks the aforementioned sonic defects, which include too-fast or too-slow attack and decay of the sound, audible discontinuities, clicks or similar glitches, and an inappropriate (unrealistic) harmonic overtone structure.</p>
<p id="p0004" num="0004">The use of the orchestration technique known as divisi, such as set forth in <patcit id="pcit0003" dnum="US7109406A"><text>US-A-7,109,406</text></patcit>, allows played notes to be allocated amongst an available pool of musicians, in this instance an available pool of virtual instruments played by virtual musicians. The original method described in detail in mat patent spec was oase[alpha] iargeiy on lookup tables, although algorithmic methods were also mentioned as a viable alternative. <patcit id="pcit0004" dnum="US0617757W"><text>PCT/US06/17757</text></patcit> went on to detail examples of an algorithmic method of accomplishing divisi, and further expanded the method by adding, among other nuances, a method of prioritizing the allocated note paths such that sequentially played notes adding to a chord could be caused to invoke different instruments or groups of instruments depending upon a set priority. Given these methods, what then is divisi and why is it used? In the way of review, 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. When a single note is to be played by one of<!-- EPO <DP n="3"> --> these string sections, for example, all musicians in that section play the same note. When a 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. Without going into the orchestrational rules here, suffice it to say that sometimes the division of notes amongst available players is even, sometimes not, and when the division is not even more musicians will be playing either the higher or the lower pitched note(s) depending on the desired effect, which preference the author refers to as top weighting or bottom weighting. That's the simple explanation of traditional string divisi.</p>
<p id="p0005" num="0005">Divisi, however, 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.</p>
<p id="p0006" num="0006">With 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,<!-- EPO <DP n="4"> --> 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. To address the potentiality of a non-playable note, the author has devised a method whereby 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.</p>
<p id="p0007" num="0007">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 that will be playable by flive 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 discrete streams of MIDI notes which can be transferred to conventional prior-art musical notation systems for immediate conversion to playable parts or scores that are sufficiently well orchestrated that do not cause live musicians to have to play too-wide intervals or exceedingly difficult if not impossible to play jumps between subsequent notes as may occur with MIDI compositions that are created using conventional prior art sampler or synthesizer systems and note handling methods.</p>
<p id="p0008" num="0008"><patcit id="pcit0005" dnum="US2006236848A"><text>US 2006/236848</text></patcit> discloses a method and system for assigning notes to be played by a musical synthesizer to a predetermined number of instrument voices available to be sounded by said musical synthesizer, so that the musical synthesizer may emulate the sound of a live orchestra or other ensemble. The method includes the steps of building an array based on the number of notes to be<!-- EPO <DP n="5"> --> played and the number of instrument voices available to play such notes, and allocating notes to the voices pursuant to algorithmic determination. As notes are released or newly played, all notes are dynamically reassigned to instrument voices so that, to the extent practicable, all channels play almost all the time. Additional methodology provides for correct assignment of notes across multiple different sections (or types) of instruments for purposes of real time orchestration.</p>
<p id="p0009" num="0009">The invention provides a note assignment processor and method whereby 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. Additionally, 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.</p>
<p id="p0010" num="0010">For this purpose, the note assignment processor of the invention comprises the features of claim 1, and the methods of the invention comprise the features of claims 9 and 10. Preferred embodiments of the invention are characterized in the sub-claims.</p>
<p id="p0011" num="0011">Embodiments of the invention are now described with reference to the drawings.</p>
<p id="p0012" num="0012"><figref idref="f0001">Fig. 1</figref> illustrates a simple divisi of all five paths in a string section comprised of First Violins (Vln.1), Second Violins (Vln. 2), Violas (Via.), Celli (Vc.) and Basses (Cb.).</p>
<p id="p0013" num="0013">This is a level 2 divisi (DVZII) which means it is within a section of like instruments as contrasted to a level 1 divisi (DVZI) which is more global, affecting different types of instruments. Middle C is referenced by an arrow and, dotted notes are being played.<!-- EPO <DP n="6"> --></p>
<p id="p0014" num="0014"><figref idref="f0001">Fig. 2</figref> illustrated a DVZII involving three notes and four of the 5 paths of the string section.</p>
<p id="p0015" num="0015"><figref idref="f0002">Fig. 3</figref> illustrates a DVZII involving three notes and three of the five String Section paths.</p>
<p id="p0016" num="0016"><figref idref="f0002">Fig. 4</figref> 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.</p>
<p id="p0017" num="0017"><figref idref="f0003">Fig. 5</figref> 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<!-- EPO <DP n="7"> --></p>
<p id="p0018" num="0018"><figref idref="f0003">Fig. 6</figref> illustrates the set of notes shown in <figref idref="f0003">Fig 5</figref>, 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.</p>
<p id="p0019" num="0019"><figref idref="f0004">Fig. 7</figref> illustrates the matrix of possible playable notes by the different paths, per <figref idref="f0003">Fig. 6</figref>, as depicted with a multi-keyboard representation.</p>
<p id="p0020" num="0020"><figref idref="f0004">Fig. 8</figref> illustrates a solution of the matrix per <figref idref="f0003">Fig 6</figref>, 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.</p>
<p id="p0021" num="0021"><figref idref="f0005">Fig. 9</figref> illustrates a solved matrix of <figref idref="f0004">Fig. 8</figref>, 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.</p>
<p id="p0022" num="0022"><figref idref="f0005">Fig. 10</figref> illustrates a solution to the matrix similar to <figref idref="f0004">Fig 8</figref> but done with bottom instead of top weighting.</p>
<p id="p0023" num="0023"><figref idref="f0006">Fig. 11</figref> illustrates a solved matrix of <figref idref="f0005">Fig. 9</figref>, now depicted as an orchestral outcome on a multi-keyboard representation.</p>
<p id="p0024" num="0024"><figref idref="f0006">Fig. 12</figref> 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.</p>
<p id="p0025" num="0025"><figref idref="f0007">Fig. 13</figref> 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. Here more of the higher note allocation is different from that in <figref idref="f0006">Fig 12</figref> in order to maintain correct power balance;<!-- EPO <DP n="8"> --> 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.</p>
<p id="p0026" num="0026"><figref idref="f0007">Fig. 14</figref> 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 (Vla.) and so they are excluded with no notes assigned to them.</p>
<p id="p0027" num="0027"><figref idref="f0008">Fig. 15</figref> illustrates the set of notes shown in <figref idref="f0007">Fig 14</figref>, 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.</p>
<p id="p0028" num="0028"><figref idref="f0008">Fig. 16</figref> illustrates the matrix of possible placements and the solution thereof for the same notes shown in <figref idref="f0007">Figs 14</figref> and <figref idref="f0008">15</figref>, but in this instance a Force Octave 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 (Vla.) rows.</p>
<p id="p0029" num="0029"><figref idref="f0009">Fig. 17</figref> illustrates the solved matrix of <figref idref="f0008">Fig 16</figref> (right), now depicted as an orchestral outcome on a multi-keyboard representation, with actual notes played by each path in black. Unlike <figref idref="f0007">Fig 14</figref> 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.</p>
<p id="p0030" num="0030"><figref idref="f0009">Fig. 18</figref> illustrates the matrix of possible placements and the solution thereof for the same notes shown in <figref idref="f0007">Figs 14</figref> and <figref idref="f0008">15</figref>, but in this instance a Force Octave Shift Up function is set for the violas.</p>
<p id="p0031" num="0031"><figref idref="f0010">Fig. 19</figref> illustrates the solved matrix of <figref idref="f0009">Fig 18</figref> (right), now depicted as an orchestral outcome on a multi-keyboard representation.</p>
<p id="p0032" num="0032"><figref idref="f0010">Fig. 20</figref> illustrates that it is possible to set both the Force Octave Shift Up and Force Octave Shift Down functions for any given path, and this illustration shows such a situation for<!-- EPO <DP n="9"> --> 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 <figref idref="f0009">Fig 18</figref>, the overall DVZII note allocation is different here.</p>
<p id="p0033" num="0033"><figref idref="f0011">Fig. 21</figref> illustrates the solved matrix of <figref idref="f0010">Fig 20</figref> (right) now depicted as an orchestral outcome on a multi-keyboard representation.</p>
<p id="p0034" num="0034"><figref idref="f0011">Fig. 22</figref> 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 <figref idref="f0012 f0013">Figs 23 through 25</figref> all show how priorities work when all the notes are within the playable range of the available paths. Here there are five paths, four different priorities set, and a single note played.</p>
<p id="p0035" num="0035"><figref idref="f0012">Fig. 23</figref> illustrates DVZI with five paths, four different priorities set, and two notes played.</p>
<p id="p0036" num="0036"><figref idref="f0012">Fig. 24</figref> illustrates DVZI with five paths, four different priorities set, and three notes played.</p>
<p id="p0037" num="0037"><figref idref="f0013">Fig. 25</figref> illustrates DVZI with five paths, four different priorities set, and four notes played.</p>
<p id="p0038" num="0038"><figref idref="f0013">Fig. 26</figref> 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 (Vln.1 and Vln. 2)</p>
<p id="p0039" num="0039"><figref idref="f0014">Fig. 27</figref> 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<!-- EPO <DP n="10"> --> 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.</p>
<p id="p0040" num="0040"><figref idref="f0014">Fig. 28</figref> illustrates an examination of the interaction between priority and force octave shift functions. Here 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.</p>
<p id="p0041" num="0041"><figref idref="f0015">Fig. 29</figref> is an example where all paths have both the Force Octave 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.</p>
<p id="p0042" num="0042"><figref idref="f0015">Fig. 30</figref> is similar to <figref idref="f0015">Fig 29</figref> 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 <figref idref="f0015">Fig 29</figref>.</p>
<p id="p0043" num="0043"><figref idref="f0016">Fig. 31</figref> illustrates an example of what happens with a mix of Force Octave Transpose settings and out-of-range notes. Here Force Octave Shift Up is set for the first violins (Vln. 1) and the Celli (Vc.) paths, but not for the second violins (Vln. 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.</p>
<p id="p0044" num="0044"><figref idref="f0016">Fig. 32</figref> is another example of the interaction between priority and Force Octave Shift functions; here the Force Octave 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.<!-- EPO <DP n="11"> --></p>
<p id="p0045" num="0045"><figref idref="f0017">Fig. 33</figref> is an example where the priorities and Force Octave settings are the same as in <figref idref="f0016">Fig 32</figref>, 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.</p>
<p id="p0046" num="0046"><figref idref="f0018">Fig. 34</figref> illustrates an example of a processor for executing the method according to an embodiment of the invention.</p>
<heading id="h0001"><u>DETAILED DESCRIPTION</u></heading>
<heading id="h0002"><b>DVZII With Crossovers (Playing Ranges)</b></heading>
<heading id="h0003"><b>Overview</b></heading>
<p id="p0047" num="0047">For simplification of reference, we use the initials DVZ to represent the divisi note allocation process in general. The term DVZI refers to a Level 1 divisi (the highest or most global note allocation), and the term DVZII refers to a Level 2 divisi (an allocation of notes to multiple players or desks within a single Level I divisi path). The following terms are either defined in the text as we proceed or evident by context: path, stem, player, voice, playable range, and crossover.</p>
<p id="p0048" num="0048">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.<!-- EPO <DP n="12"> --></p>
<p id="p0049" num="0049">In order two understand DVZI with crossovers, first we should look at the simpler of the two methods or algorithms - simpler because it does not involve priority values - the DVZII with crossovers. The idea of DVZII is to keep the number of voices playing constant no matter how many notes are playing. Imagine, we have eight instruments. If we play one note, each instrument plays that note for a total of eight sounding voices. If we play two notes, the first note is played by the first four instruments, and the second note is played by the second four instruments for a total of eight sounding voices. If we play four notes, each note is played by two instruments for again a total of eight sounding voices.</p>
<p id="p0050" num="0050">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. <figref idref="f0001">Fig. 2</figref> shows the distribution of a three note chord that falls outside of the playing range of the bass. <figref idref="f0002">Fig. 3</figref> 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.</p>
<p id="p0051" num="0051">When the number of notes exceeds the number of paths involved in the DVZ, multiple notes must be assigned to a single path. In <figref idref="f0002">Fig.4</figref> 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. <figref idref="f0002">Fig. 4</figref> illustrates this distribution.</p>
<heading id="h0004"><b>Distribution based on limitations of playing range</b></heading>
<p id="p0052" num="0052"><figref idref="f0003">Fig. 5</figref> 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<!-- EPO <DP n="13"> --> 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.</p>
<p id="p0053" num="0053">When playing ranges prohibit use of an ideal distribution, we determine how notes will be orchestrated by abstracting the problem to a two dimensional matrix. <figref idref="f0003">Fig. 6</figref> shows the all possible placements of the five notes with the instruments we are using, and their ranges, per <figref idref="f0003">Fig. 5</figref>. 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, <figref idref="f0004">Fig. 7</figref> shows this matrix of possible note placements on keyboards.</p>
<p id="p0054" num="0054">To obtain our actual DVZ note distribution we solve the matrix. This usually looks like finding the straightest path from the top left corner of the matrix to the bottom right corner, although the method is more complex than such a convenient conceptualization, involving a number of iterative processes. Then we translate this matrix-based solution back onto paths that correspond to the instruments, as shown in <figref idref="f0005">Fig. 9</figref>.</p>
<heading id="h0005"><b>Weighting</b></heading>
<p id="p0055" num="0055">There are often cases, as we have illustrated above, where an odd distributions of notes occurs, such as three notes split among the Violins I and Violins II or the two bottom notes split between the violas, cellos, and basses. How do we decided where to distribute notes in these cases? 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<!-- EPO <DP n="14"> --> instruments the notes which cannot be evenly distributed. That is how we decided to give two notes to the first violins instead of the second violins and how we decided to let the violas and cellos share the fourth note rather than letting the cellos and basses share the fifth note. Bottom weighting is the inverse, giving the extra notes to the lower pitch range instruments (or lower notes within the range of a given set of instruments). <figref idref="f0005">Fig. 10</figref> shows the solution to our matrix of possible placements with bottom weighting instead of top weighting. <figref idref="f0006">Fig. 11</figref> shows this bottom-weighted matrix solution translated back into a keyboard representation of our orchestra.</p>
<heading id="h0006"><b>Desks and voices</b></heading>
<p id="p0056" num="0056">The inventive method of DVZ described in this application takes into account desks and voices. At the instrument level, typically a Level II divisi (DVZII) within the string section, a desk (or player) is another term for a path. 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.</p>
<p id="p0057" num="0057">We'll consider a violin section to explore how desks and so forth are handled in the present DVZ process. In the example of <figref idref="f0006">Fig. 12</figref>, we have eight single-voice violin desks in a violin section - eight one-musician players. The number of voices at a given desk is indicated in parenthesis on the figure to the right of the desk's name. If each desk has only one voice, then we have eight voices. If we send this violin section two notes, each note will be played by four voices.<!-- EPO <DP n="15"> --></p>
<p id="p0058" num="0058"><figref idref="f0007">Fig. 13</figref> 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.</p>
<heading id="h0007"><b>Forcing paths to play</b></heading>
<p id="p0059" num="0059">We may want to ensure that all paths play regardless of what the input notes happen to be, even if apparently out of range of some paths. This perhaps would be useful in sections we want richly orchestrated, or if we want the entire string section to play a unison line. For these and other situations there are two new divisi parameters that can be set for each path: force octave shift up and force octave shift down. These parameters work in the following way. If there is a given path with no notes in range and that path has either of the force octave flags set, points in the matrix of possible placements will be filled in <i>before</i> performing the DVZ. The modified matrix is solved, and when converting the matrix back to MIDI, those notes assigned to paths that fall outside the playing range of those paths are transposed by whatever minimum number of octaves is necessary so they now fall within the range of the specified path.</p>
<p id="p0060" num="0060">The same notes played (input) as used in <figref idref="f0007">Fig. 14</figref> will be the input for all examples in this section through <figref idref="f0011">Fig. 21</figref>. <figref idref="f0007">Fig. 14</figref> 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. <figref idref="f0008">Fig. 15</figref> shows the matrix of possible placements and its solution for this situation.<!-- EPO <DP n="16"> --></p>
<p id="p0061" num="0061">What if force octave shift down is set for the violas? <figref idref="f0008">Fig. 16</figref> 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. <figref idref="f0008">Fig. 16</figref> 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 Octave Shift down, as illustrated in <figref idref="f0008">Fig. 15</figref>.</p>
<p id="p0062" num="0062">Now suppose force octave shift up were set for the violas. Possible placements would be borrowed instead from the cellos as seen in the matrix possibilities and solution of <figref idref="f0009">Fig. 18</figref>. <figref idref="f0010">Fig. 19</figref> shows the note distribution with transpositions for the solution from <figref idref="f0009">Fig. 18</figref>.</p>
<p id="p0063" num="0063">If both force octave shift up <i>and</i> force octave shift down are set, we borrow both from the row above and the row below; the matrix and its solution for this situation are shown in <figref idref="f0010">Fig. 20</figref>. The note distribution with transpositions for the solution from <figref idref="f0010">Fig. 20</figref> is shown in <figref idref="f0011">Fig. 21</figref>.</p>
<heading id="h0008"><b>DVZI Priorities Overview</b></heading>
<p id="p0064" num="0064">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. When 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<!-- EPO <DP n="17"> --> 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.</p>
<p id="p0065" num="0065"><figref idref="f0011 f0012 f0013">Figures 22 through 25</figref> 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.</p>
<p id="p0066" num="0066">With DVZ priority and no playing ranges involved, if we were to play just one note, that note would be assigned to all paths whose priorities are set to one. If we play two notes, notes will be allocated to those paths with priorities set to one or two. The top note will go to the higher path(s), and the bottom note will go to the lower path(s) regardless of whether they're set to priority one or two. What happens now that we have playing ranges active for the paths, we play one note, and it is out of range of all paths with priority one? It goes to whatever path(s) has the lowest priority number and where it is not out of the path's range.</p>
<p id="p0067" num="0067"><figref idref="f0013">Fig. 26</figref> shows the same priority setup as the previous several figures: five paths with four priorities. Here 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.</p>
<p id="p0068" num="0068"><figref idref="f0014">Fig. 27</figref> 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 <i>must</i> use priority one. There are two combinations of distributions that involve priority one: assigning the<!-- EPO <DP n="18"> --> 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.</p>
<heading id="h0009"><b>Priorities and octave transposition</b></heading>
<p id="p0069" num="0069">Paths that have force octave transposition enabled will <i>always</i> 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. For the next example we assume that 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 <figref idref="f0014">Fig. 28</figref>.</p>
<p id="p0070" num="0070">Here's another example, per <figref idref="f0015">Fig. 29</figref>; all paths have transpose up and transpose down set (activated). Two notes are played, both in the bass range, which is priority 4. Since both <i>can be transposed</i> such that they become within the playable range of priority one and priority two paths, this is done. No note is now sounding in its originally played octave.</p>
<p id="p0071" num="0071">Remember, if the DVZ is set to bottom weighting, the D and not the E will be doubled because the method solves the DVZ without taking any transpositions into account, and the D is the lower note at the input. Refer to <figref idref="f0015">Fig. 30</figref>.</p>
<p id="p0072" num="0072">What if violins I is set to force octave shift up but <i>not</i> violins II. Refer to <figref idref="f0016">Fig. 31</figref>. We have two notes. Neither input note is within range of a priority one or two path. Because Force Octave Shift UP is active for the violins I and the Celli, both notes are transposed up, but into the celli and the first violins, not into the second violins. Even though second violins and first violins<!-- EPO <DP n="19"> --> have the same priority and would otherwise play a given note, second violins cannot because the note is out of their range.</p>
<p id="p0073" num="0073">What if we play two notes that both are below the Priority One and two playable ranges, and Force Octave Shift Up (transposition) is on for the celli, but not anything else, per <figref idref="f0016">Fig. 32</figref>. Since a note can be transposed to be played by the priority one celli, the method must do this. The next highest priority that can play a note (the basses) are set to priority four; since the method must play the second note at another priority and no others have transposition enabled, that note goes to the basses.</p>
<p id="p0074" num="0074">In the next example, per <figref idref="f0017">Fig. 33</figref>, let's assume force octave shift up is enabled for both the celli and the basses, but not anything else. We play two notes: one note is out of range of all instruments, and one note is in range of the basses. Since there are two notes playing, the method must try to use priority one, which it can. This leaves only priority four left as a within playable range path so the two notes will be assigned to priorities one and four. One of the notes can be played without transposition by priority four, the E. If the system were to do this, however, then the lower note (the D) would have to be transposed above the playable-as-input E. This is not allowed or the melodic intent would be violated; higher input notes have to remain higher, at least with respect to absolute (note letter) value if not octave value, so both notes are transposed.</p>
<p id="p0075" num="0075"><figref idref="f0018">Fig. 34</figref> 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<!-- EPO <DP n="20"> --> 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.</p>
<p id="p0076" num="0076">When implementing transposition, 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.</p>
<p id="p0077" num="0077">While the particular embodiment discussed herein involves MIDI (Musical Instrument Digital Interface) note definitions, implementation of the methods using any other system that defines and controls musical note generation would equally fall within the envisioned scope of this system and method.</p>
</description>
<claims id="claims01" lang="en"><!-- EPO <DP n="21"> -->
<claim id="c-en-01-0001" num="0001">
<claim-text>A note assignment processor (3402) for assigning notes to selected channels to be played by said channels, comprising:
<claim-text>an input for receiving a notes-to-be-played signal;</claim-text>
<claim-text>a central processing unit (3404) 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;</claim-text>
<claim-text>a note register (3405) for storing the total number of notes to be played simultaneously;</claim-text>
<claim-text>a note list register (3415) for storing the notes to be played simultaneously in a pitch order;</claim-text>
<claim-text>a current note register (3420) for storing the identity of the current note processed by said central processing unit (3404);</claim-text>
<claim-text>a channel register (3425) for storing the total number of channels available for note assignment;</claim-text>
<claim-text>a channel list register (3430) for storing the channels in a specified order; and <b>characterized by</b></claim-text>
<claim-text>a channel pitch range register (3435) for storing lowest and highest playable pitches per each channel,</claim-text>
<claim-text>a transpose up register (3440) for each channel to indicate upward transposition of a note for that channel, so as to bring the transposed note within the range on the channel; and</claim-text>
<claim-text>a transpose down register (3445) for each channel to indicate downward transposition of a note for that channel, so as to bring the transposed note within the range on the channel.</claim-text></claim-text></claim>
<claim id="c-en-01-0002" num="0002">
<claim-text>The note assignment processor (3402) of claim 1, further comprising a weighting preference register (3450) to store either top weighted assignment of notes to channels for giving, in case an odd distributions of notes occurs, extra notes to the higher pitch instruments thereby giving preference to the higher sounding musical instrument, or bottom weighted assignment of notes to<!-- EPO <DP n="22"> --> channels for giving said extra notes to the lower pitch instruments thereby giving preference to the lower sounding musical instrument.</claim-text></claim>
<claim id="c-en-01-0003" num="0003">
<claim-text>The note assignment processor (3402) of claim 1 or 2, further comprising a channel priority register (3455) to store a value corresponding to the order in which notes played will be assigned to channels in which they are payable.</claim-text></claim>
<claim id="c-en-01-0004" num="0004">
<claim-text>The note assignment processor (3402) of claim 3, further comprising operating the processor (3402) to 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 an array in accordance with a playable range specified in the channel pitch range register (3435), the transpose up register (3440), the transpose down register (3435) and the weighting preference register (3450) for each channel.</claim-text></claim>
<claim id="c-en-01-0005" num="0005">
<claim-text>The note assignment processor (3402) of claim 1, wherein the total number of channels remains constant for the entire duration of a music piece played.</claim-text></claim>
<claim id="c-en-01-0006" num="0006">
<claim-text>The note assignment processor (3402) of claim 1, wherein said processor (3402) performs 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 values stored in the transpose up register (3440) and in the transpose down register (3445).</claim-text></claim>
<claim id="c-en-01-0007" num="0007">
<claim-text>The note assignment processor (3402) of claim 1, wherein 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.</claim-text></claim>
<claim id="c-en-01-0008" num="0008">
<claim-text>The note assignment processor (3402) of claim 1, wherein the order in which notes are assigned to channels accords with the specified channel priority values.</claim-text></claim>
<claim id="c-en-01-0009" num="0009">
<claim-text>A method for assigning notes to selected channels to be played by said channels, comprising:<!-- EPO <DP n="23"> -->
<claim-text>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</claim-text>
<claim-text>allocating each of the plurality of notes to at least one of the channels according to note range assigned for each channel;</claim-text>
<claim-text>wherein when one channel has no note within its range, performing transposition of one of the note so as to bring the transposed note within the range on the channel.</claim-text></claim-text></claim>
<claim id="c-en-01-0010" num="0010">
<claim-text>A method of assigning a sequence of sounds, each sound comprising a plurality of notes, the method comprising:
<claim-text>assigning a plurality of channels;</claim-text>
<claim-text>assigning a number of voices to each channel to play the sequence of sounds;</claim-text>
<claim-text>forcing the number of voices in each channel to remain constant throughout the sequence,</claim-text>
<claim-text>regardless of the number of notes assigned to each channel throughout the sequence;</claim-text>
<claim-text>defining a notes range for each of the channels;</claim-text>
<claim-text>allocating each of the plurality of notes to at least one of the channels according to note range assigned for each channel..</claim-text></claim-text></claim>
<claim id="c-en-01-0011" num="0011">
<claim-text>The method of claim9 or 10, wherein voices within a given channel emulate a musical instrument of the same kind.</claim-text></claim>
<claim id="c-en-01-0012" num="0012">
<claim-text>The method of claim 11, further comprising performing one of top- weighting or bottom weighting note allocation, wherein top-weighting comprises giving preference to higher sounding musical instrument and bottom-weighting comprises giving preference to lower sounding musical instruments.</claim-text></claim>
<claim id="c-en-01-0013" num="0013">
<claim-text>The method of claim 11, further comprising assigning priority value to each of the channels, and assigning notes to channels according to the priority.</claim-text></claim>
</claims>
<claims id="claims02" lang="de"><!-- EPO <DP n="24"> -->
<claim id="c-de-01-0001" num="0001">
<claim-text>Notenzuordnungsprozessor (3402) zur Zuordnung von Noten zu ausgewählten Kanälen, die von den Kanälen gespielt werden sollen, umfassend:
<claim-text>eine Eingabe zum Empfang eines die zu spielenden Noten enthaltendes Signal;</claim-text>
<claim-text>eine zentrale Verarbeitungseinheit (3404), um das Signal zu detektieren, eine Anzahl von Noten, die gleichzeitig gespielt werden sollen, zu bestimmen und einen iterativen Prozess durchzuführen, um jede Note einem ausgewählten Kanal zuzuordnen;</claim-text>
<claim-text>ein Notenregister (3405) zum Speichern der Gesamtzahl der Noten, die gleichzeitig gespielt werden sollen;</claim-text>
<claim-text>ein Notenlistenregister (3415) zum Speichern der Noten, die gleichzeitig gespielt werden sollen, in einer Höhenlagen-Ordnung;</claim-text>
<claim-text>ein Aktuell-Notenregister (3420) zum Speichern der Identität der gegenwärtigen Note, die von der zentralen Verarbeitungseinheit (3404) verarbeitet wird;</claim-text>
<claim-text>ein Kanalregister (3425) zum Speichern der Gesamtzahl der Kanäle, die zur Notenzuordnung zur Verfügung stehen;</claim-text>
<claim-text>ein Kanallistenregister (3430) zum Speichern der Kanäle in einer vorgegebenen Reihenfolge; und <b>gekennzeichnet durch</b></claim-text>
<claim-text>ein Kanalhöhenlagen-Bereichsregister (3435) zum Speichern der niedrigsten und höchsten spielbaren Höhenlage für jeden Kanal;</claim-text>
<claim-text>ein Aufwärts-Transpositionsregister (3440) für jeden Kanal, um eine Aufwärtstransposition einer Note für diesen Kanal anzuzeigen, um die transponierte Note in den Bereich auf dem Kanal zu bringen; und</claim-text>
<claim-text>ein Abwärts-Transpositionsregister (3445) für jeden Kanal, um eine Abwärtstransposition einer Note für diesen Kanal anzuzeigen, um die transponierte Note in den Bereich auf dem Kanal zu bringen.</claim-text><!-- EPO <DP n="25"> --></claim-text></claim>
<claim id="c-de-01-0002" num="0002">
<claim-text>Notenzuordnungsprozessor (3402) nach Anspruch 1, ferner umfassend ein Gewichtungs- Präferenzregister (3450), um eine am höchsten gewichtete Zuordnung von Noten zu Kanälen, um, wenn eine ungeradzahlige Verteilung von Noten auftritt, zusätzliche Noten den Instrumenten mit hoher Höhenlage zu übergeben, wodurch eine Präferenz für das Musikinstrument mit höherer Höhenlage erteilt wird, oder eine am tiefsten gewichtete Zuordnung von Noten zu den Kanälen zu speichern, um zusätzliche Noten den Instrumenten mit niedrigerer Klanglage zu übergeben, wodurch eine Präferenz für das Musikinstrument mit niedrigerer Höhenlage erteilt wird.</claim-text></claim>
<claim id="c-de-01-0003" num="0003">
<claim-text>Notenzuordnungsprozessor (3402) nach Anspruch 1 oder 2, ferner umfassend ein Kanalprioritätsregister (3455), um einen Wert zu speichern, der der Reihenfolge entspricht, in der die gespielten Noten den Kanälen zugeordnet werden, in denen sie gespielt werden können.</claim-text></claim>
<claim id="c-de-01-0004" num="0004">
<claim-text>Notenzuordnungsprozessor (3402) nach Anspruch 3, ferner umfassend das Betreiben des Prozessors (3402), um aktuelle Noten zu bezeichnen, die von einem oder mehreren speziellen Kanälen gespielt werden sollen, von denen festgestellt wird, dass sie in der Lage sind, die Noten zu spielen, indem ein Feld entsprechend einem spielbaren Bereich, der in dem Kanal Höhenlage-Bereichsregister (3435), dem Aufwärts-Transpositionsregister (3440), dem Abwärts-Transpositionsregister (3435) und dem Gewichtungspräferenzregister (3450) für jeden Kanal spezifiziert ist.</claim-text></claim>
<claim id="c-de-01-0005" num="0005">
<claim-text>Notenzuordnungsprozessor (3402) nach Anspruch 1, worin die Gesamtzahl der Kanäle während der gesamten Dauer des gespielten Musikstücks konstant bleibt.</claim-text></claim>
<claim id="c-de-01-0006" num="0006">
<claim-text>Notenzuordnungsprozessor (3402) nach Anspruch 1, worin der Prozessor (3402) einen iterativen Prozess durchführt, um festzustellen, welchem der zur Verfügung stehenden Kanäle Noten zugeordnet werden können entsprechend der Notenhöhenlage und den zulässigen Bereichen von jedem der Kanäle, wie durch die dem Kanal zugeordneten, gespeicherten Höhenlagen-Bereichsgrenzen festgelegt ist und wie sie mit Hilfe von beliebigen Werten ausgedehnt werden können, die in dem Aufwärts-Transpositionsregister (3440) und dem Abwärts-Transpositionsregister (3445) gespeichert sind.</claim-text></claim>
<claim id="c-de-01-0007" num="0007">
<claim-text>Notenzuordnungsprozessor (3402) nach Anspruch 1, worin die Gesamtzahl der Kanäle von Null bis zu einer Anzahl von zur Verfügung stehenden Kanälen variiert werden kann, wenn<!-- EPO <DP n="26"> --> mehr Noten gespielt werden, wobei nach der Anzahl der Noten die Anzahl der Kanäle nicht erhöht wird, wenn zusätzliche Noten gespielt werden, und wobei stattdessen ein iterativer Überlauf-Prozess die restlichen nicht zugeordneten Noten einem bereits ausgewählten Kanal zuordnet werden, um dadurch wenigstens einen Kanal zum Spielen von wenigstens zwei Noten auszuwählen.</claim-text></claim>
<claim id="c-de-01-0008" num="0008">
<claim-text>Notenzuordnungsprozessor (3402) nach Anspruch 1, worin die Reihenfolge, mit der die Noten den Kanälen zugeordnet werden, den spezifizierten Kanalprioritätswerten entspricht.</claim-text></claim>
<claim id="c-de-01-0009" num="0009">
<claim-text>Verfahren zur Zuordnung von Noten zu ausgewählten Kanälen, die von den Kanälen gespielt werden sollen, umfassend:
<claim-text>Bezeichnen einer Vielzahl von Kanälen, wobei jeder Kanal ein hörbares Instrument emuliert;</claim-text>
<claim-text>Definieren eines Notenbereichs für jeden Kanal;</claim-text>
<claim-text>Empfangen von Befehlen, um eine Vielzahl von definierten Noten gleichzeitig zu spielen; und</claim-text>
<claim-text>Zuordnung von jeder der Vielzahl der Noten zu wenigstens einem der Kanäle entsprechend dem Notenbereich, der jedem Kanal zugeordnet ist;</claim-text>
<claim-text>wobei, wenn ein Kanal keine Note innerhalb seines Bereichs hat, eine Transposition von einer der Noten durchgeführt wird, um die transponierte Note in den Bereich auf dem Kanal zu bringen.</claim-text></claim-text></claim>
<claim id="c-de-01-0010" num="0010">
<claim-text>Verfahren zur Zuordnung von einer Sequenz von Schallereignissen, wobei jedes Schallereignis eine Vielzahl von Noten umfasst, wobei das Verfahren umfasst:
<claim-text>Auswählen einer Vielzahl von Kanälen;</claim-text>
<claim-text>Zuordnen einer Anzahl von Stimmen zu jedem Kanal, um die Sequenz der Schallereignisse zu spielen;</claim-text>
<claim-text>Zwingen der Anzahl der Stimmen in jedem Kanal, während der Sequenz konstant zu bleiben;</claim-text>
<claim-text>unabhängig von der Anzahl der Noten, die zu jedem Kanal während der gesamten Sequenz zugeordnet wurden, Definieren eines Notenbereichs für jeden der Kanäle;</claim-text>
<claim-text>Zuordnen von jeder der Vielzahl der Noten zu einem der Kanäle entsprechend einem Notenbereich, der jedem Kanal zugeordnet ist.</claim-text></claim-text></claim>
<claim id="c-de-01-0011" num="0011">
<claim-text>Verfahren nach Anspruch 9 oder 10, worin die Stimmen in einem vorgegebenen Kanal ein Musikinstrument derselben Art emuliert.<!-- EPO <DP n="27"> --></claim-text></claim>
<claim id="c-de-01-0012" num="0012">
<claim-text>Verfahren nach Anspruch 11, ferner umfassend Durchführung einer am höchsten gewichteten oder am tiefsten gewichteten Notenzuordnung, worin die höchste Gewichtung darin besteht, dass die Präferenz einem höher höhenlagigen Musikinstrument gegeben wird, und dass die tiefste Gewichtung darin besteht, die Präferenz dem Musikinstrument mit der tieferen Höhenlage erteilt wird.</claim-text></claim>
<claim id="c-de-01-0013" num="0013">
<claim-text>Verfahren nach Anspruch 11, ferner umfassend Zuordnung eines Prioritätswertes zu jedem der Kanäle und Zuordnung von Noten zu den Kanälen entsprechend der Priorität.</claim-text></claim>
</claims>
<claims id="claims03" lang="fr"><!-- EPO <DP n="28"> -->
<claim id="c-fr-01-0001" num="0001">
<claim-text>Processeur d'attribution de notes (3402) pour attribuer des notes aux canaux sélectés pour être jouées par lesdits canaux, comprenant:
<claim-text>- une entrée pour recevoir un signal de notes à jouer;</claim-text>
<claim-text>- une unité de traitement centrale (3404) pour détecter ledit signal, déterminer le nombre de notes à jouer simultanément, et réaliser le procédé itératif pour attribuer chaque note à un canal sélecté;</claim-text>
<claim-text>- un registre de notes (3405) pour stocker le nombre total de notes à jouer simultanément;</claim-text>
<claim-text>- un registre avec la liste de notes (3415) pour stocker les notes à jouer simultanément dans un ordre de hauteur du son;</claim-text>
<claim-text>- un registre de notes courantes (3420) pour stocker l'identité de la note courante traitée par ladite unité de traitement centrale (3404);</claim-text>
<claim-text>- un registre de canaux (3425) pour stocker le nombre total de canaux disponibles pour l'attribution de notes;</claim-text>
<claim-text>- un registre de listes de canaux (3430) pour stocker les canaux dans un ordre spécifié; et <b>caractérisé par</b></claim-text>
<claim-text>- un registre de gammes de hauteurs de son par canaux (3435) pour stocker les hauteurs de son à jouer les plus basses et les plus hautes par chaque canal,</claim-text>
<claim-text>- un registre de transposition vers le haut (3440) pour chaque canal pour indiquer la transposition vers le haut d'une note pour ce canal, pour amener la note transposée dans la gamme sur le canal; et</claim-text>
un registre de transposition vers le bas (3445) pour chaque canal pour indiquer la transposition vers le bas d'une note pour ce canal, pour amener la note transposée dans la gamme sur le canal.</claim-text></claim>
<claim id="c-fr-01-0002" num="0002">
<claim-text>Processeur d'attribution de notes (3402) selon la revendication 1, comprenant de plus un registre de préférences de pondération (3450) pour stocker soit l'attribution pondérée<!-- EPO <DP n="29"> --> supérieure de notes aux canaux pour donner, en cas qu'une distribution impaire de notes survient, des notes extra aux instruments à hauteurs de son plus hautes, en donnant ainsi préférence à l'instrument musical de son plus haut, soit l'attribution pondérée inférieure de notes aux canaux pour donner lesdites notes extra aux instruments à hauteurs de son plus basses, donnant ainsi préférence à l'instrument musical de son plus bas.</claim-text></claim>
<claim id="c-fr-01-0003" num="0003">
<claim-text>Processeur d'attribution de notes (3402) selon la revendication 1 ou 2, comprenant de plus un registre de priorités de canaux (3455) pour stocker une valeur correspondant à l'ordre dans lequel les notes jouées seront attribuées aux canaux dans lesquels elles sont jouables.</claim-text></claim>
<claim id="c-fr-01-0004" num="0004">
<claim-text>Processeur d'attribution de notes (3402) selon la revendication 3, comprenant de plus faire fonctionner le processeur (3402) pour designer les notes réelles à jouer par un ou plusieurs canaux particuliers, qui sont déterminés pour être capables à jouer les notes, en remplissant un réseau en concordance avec une gamme jouable spécifiée dans le registre de gammes de hauteurs de son de canaux (3435), le registre de transposition vers le haut (3440), le registre de transposition vers le bas (3435) et le registre de préférences de pondération (3450) pour chaque canal.</claim-text></claim>
<claim id="c-fr-01-0005" num="0005">
<claim-text>Processeur d'attribution de notes (3402) selon la revendication 1, où le nombre total de canaux reste constant pour la durée totale d'une pièce musicale jouée.</claim-text></claim>
<claim id="c-fr-01-0006" num="0006">
<claim-text>Processeur d'attribution de notes (3402) selon la revendication 1, où ledit processeur (3402) réalise un procédé itératif pour déterminer auxquels canaux disponibles les notes jouées peuvent possiblement être attribuées selon la hauteur de la note et les gammes disponibles de chaque canal, telles que désignées par les limites des gammes de hauteurs de son stockées dans les canaux et comme elles peuvent être étendues en vertu de toutes les valeurs stockées dans le registre de transposition vers le haut (3440) et dans le registre de transposition vers le bas (3445).</claim-text></claim>
<claim id="c-fr-01-0007" num="0007">
<claim-text>Processeur d'attribution de notes (3402) selon la revendication 1, où le nombre total de canaux peuvent varier de zéro au nombre de canaux disponibles quand plusieurs notes sont jouées après quoi le nombre de notes le nombre de canaux ne s'augmente pas avec les notes additionnelles jouées et au lieu un procédé itératif excédentaire fait attribuer les notes non<!-- EPO <DP n="30"> --> attribuées restantes à un canal déjà attribué, pour attribuer de cette manière au moins un canal pour jouer au moins deux notes.</claim-text></claim>
<claim id="c-fr-01-0008" num="0008">
<claim-text>Processeur d'attribution de notes (3402) selon la revendication 1, où l'ordre dans lequel les notes sont attribuées aux canaux est en accord avec les valeurs de priorité des canaux spécifiés.</claim-text></claim>
<claim id="c-fr-01-0009" num="0009">
<claim-text>Procédé pour attribuer des notes aux canaux sélectés pour être jouées par lesdits canaux, comprenant:
<claim-text>- designer une pluralité de canaux, chaque canal émulant un instrument audio; définir une gamme de notes pour chaque canal; recevoir les instructions à jouer une pluralité de notes définies simultanément; et</claim-text>
<claim-text>- attribuer chacune de la pluralité de notes à au moins l'un de ces canaux selon la gamme de notes attribuée pour chaque canal;</claim-text>
où quand un canal ne présente pas de note dans sa gamme, réaliser la transposition d'une de la note pour amener la note transposée dans la gamme sur le canal.</claim-text></claim>
<claim id="c-fr-01-0010" num="0010">
<claim-text>Procédé pour attribuer une séquence de son, chaque son comprenant une pluralité de notes, le procédé comprenant:
<claim-text>- fixer une pluralité de canaux;</claim-text>
<claim-text>- attribuer un nombre de voix à chaque canal pour jouer la séquence de son;</claim-text>
<claim-text>- imposer le nombre de voix en chaque canal pour rester constant tout au long de la séquence, quelle que soit le nombre de notes attribuées à chaque canal tout au long de la séquence;</claim-text>
<claim-text>- définir une gamme de notes pour chacun des canaux;</claim-text>
<claim-text>- attribuer chacune de la pluralité de notes à au moins un d'entre les canaux selon la gamme de notes attribuée pour chaque canal.</claim-text></claim-text></claim>
<claim id="c-fr-01-0011" num="0011">
<claim-text>Procédé selon la revendication 9 ou 10, où les voix dans un canal donné émulent un instrument musical du même type.</claim-text></claim>
<claim id="c-fr-01-0012" num="0012">
<claim-text>Procédé selon la revendication 11, comprenant de plus réaliser une allocation pondérale de notes hautes ou basses, ou l'allocation pondérale haute comprend donner préférence à<!-- EPO <DP n="31"> --> l'instrument musical de son plus haut et l'allocation pondérale basse comprend donner préférence à l'instrument musical de son plus bas.</claim-text></claim>
<claim id="c-fr-01-0013" num="0013">
<claim-text>Procédé selon la revendication 11, comprenant de plus attribuer la valeur de priorité à chacun des canaux, et attribuer les notes aux canaux selon la priorité.</claim-text></claim>
</claims>
<drawings id="draw" lang="en"><!-- EPO <DP n="32"> -->
<figure id="f0001" num="1,2"><img id="if0001" file="imgf0001.tif" wi="165" he="191" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="33"> -->
<figure id="f0002" num="3,4"><img id="if0002" file="imgf0002.tif" wi="165" he="191" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="34"> -->
<figure id="f0003" num="5,6"><img id="if0003" file="imgf0003.tif" wi="165" he="191" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="35"> -->
<figure id="f0004" num="7,8"><img id="if0004" file="imgf0004.tif" wi="165" he="192" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="36"> -->
<figure id="f0005" num="9,10"><img id="if0005" file="imgf0005.tif" wi="165" he="179" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="37"> -->
<figure id="f0006" num="11,12"><img id="if0006" file="imgf0006.tif" wi="165" he="198" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="38"> -->
<figure id="f0007" num="13,14"><img id="if0007" file="imgf0007.tif" wi="165" he="198" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="39"> -->
<figure id="f0008" num="15,16"><img id="if0008" file="imgf0008.tif" wi="165" he="198" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="40"> -->
<figure id="f0009" num="17,18"><img id="if0009" file="imgf0009.tif" wi="165" he="198" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="41"> -->
<figure id="f0010" num="19,20"><img id="if0010" file="imgf0010.tif" wi="165" he="198" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="42"> -->
<figure id="f0011" num="21,22"><img id="if0011" file="imgf0011.tif" wi="165" he="198" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="43"> -->
<figure id="f0012" num="23,24"><img id="if0012" file="imgf0012.tif" wi="165" he="198" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="44"> -->
<figure id="f0013" num="25,26"><img id="if0013" file="imgf0013.tif" wi="165" he="198" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="45"> -->
<figure id="f0014" num="27,28"><img id="if0014" file="imgf0014.tif" wi="165" he="198" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="46"> -->
<figure id="f0015" num="29,30"><img id="if0015" file="imgf0015.tif" wi="165" he="198" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="47"> -->
<figure id="f0016" num="31,32"><img id="if0016" file="imgf0016.tif" wi="165" he="198" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="48"> -->
<figure id="f0017" num="33"><img id="if0017" file="imgf0017.tif" wi="165" he="99" img-content="drawing" img-format="tif"/></figure><!-- EPO <DP n="49"> -->
<figure id="f0018" num="34"><img id="if0018" file="imgf0018.tif" wi="165" he="204" img-content="drawing" img-format="tif"/></figure>
</drawings>
<ep-reference-list id="ref-list">
<heading id="ref-h0001"><b>REFERENCES CITED IN THE DESCRIPTION</b></heading>
<p id="ref-p0001" num=""><i>This list of references cited by the applicant is for the reader's convenience only. It does not form part of the European patent document. Even though great care has been taken in compiling the references, errors or omissions cannot be excluded and the EPO disclaims all liability in this regard.</i></p>
<heading id="ref-h0002"><b>Patent documents cited in the description</b></heading>
<p id="ref-p0002" num="">
<ul id="ref-ul0001" list-style="bullet">
<li><patcit id="ref-pcit0001" dnum="US7109406A"><document-id><country>US</country><doc-number>7109406</doc-number><kind>A</kind></document-id></patcit><crossref idref="pcit0001">[0001]</crossref><crossref idref="pcit0003">[0004]</crossref></li>
<li><patcit id="ref-pcit0002" dnum="US0617757W"><document-id><country>US</country><doc-number>0617757</doc-number><kind>W</kind></document-id></patcit><crossref idref="pcit0002">[0001]</crossref><crossref idref="pcit0004">[0004]</crossref></li>
<li><patcit id="ref-pcit0003" dnum="US2006236848A"><document-id><country>US</country><doc-number>2006236848</doc-number><kind>A</kind></document-id></patcit><crossref idref="pcit0005">[0008]</crossref></li>
</ul></p>
</ep-reference-list>
</ep-patent-document>
