Electronic music display appliance and method for displaying music scores2010-03-26 00:00:00line, the line assignments for the selected measures are updated 1010.
Once the line is complete, the page assignment for the measures contained in that line is determined. In a preferred embodiment, the vertical size of the line is determined 1012 by analyzing vertical position data in the active data structures912 for the measures contained in that line. The EMSF format includes a vertical position on the staff for a notation object, as indicated in Table 2. In a preferred embodiment, a vertical size parameter for a line of music is determined as follows: c.Determine the maximum vertical position and the minimum vertical position of the notation objects in the measures assigned to the line of music; d. Subtract the minimum vertical position from the maximum vertical position to give the vertical sizeparameter for the line.
The line and the measures it includes are selected for a page if its vertical size parameter added to the vertical size parameters of any previously selected lines for that page is less than the vertical size of the page, represented by the fiton page 1014 block. If the line fits on the page, the next line selected 1004 is tested for fit on the page. Once all the lines are selected for a particular page, the page assignment of the measures in the selected lines is updated 1016. Measures andlines are then selected for the next page 1018. Once the end of score 1020 is reached, the score analyzer 916 completes the updated measure/line/page assignment table 1022 that includes the assigned line and assigned page for each measure in the score.
Score analyzer 916 responds to view parameters derived from view command input 914 in the calculations for measure/line/page assignments. For a resizing command, the associated view parameter corresponds to a template size. The template sizeindicates the scale of the displayed notation objects. The score analyzer calculates the measure/line/page assignments for the selected template size. Since the horizontal size parameter of a measure depends on template size, the resulting lineassignments for the measures can be different for different template sizes. Also, the maximum vertical position and the minimum vertical position of the notation objects in a line and the associated vertical size parameter can be different for differenttemplate sizes. The resulting measure/line/page assignments are appropriate for the selected sizing. For the orientation option, score analyzer 916 applies horizontal and vertical page size parameters that correspond to portrait and landscapeorientations. Score analyzer 916 responds to the view part command 914 by selecting active data structures 912 in each measure that correspond to the user selected part 612. The organization of the EMSF data structure includes a PART chunk, asindicated in Table 2, which facilitates part 612 selection.
The active data manager 910 makes modifications to the active data structure according to a command to modify 906 the music score. Modifications 906 include transpose, annotate, expand, and mark. For the transpose operation, the active datamanager 910 creates an active data structure with modifications in accordance with a musical transposition. For an annotation 530, the active data manager 910 manages the bitmap annotation image data and associated pointers to music data structurescorresponding to the annotated notation objects. In response to a user request, the active data manager 910 creates an annotation file for storing bitmap annotation image data and associated pointer data. For marking a music score, the active datamanager 910 maintains a table of marker positions relative to measures of the music score. For expanding a repeated portion of the music score, the active data manager 910 manages access to music data structures for the repeated portion at theappropriate point within the music score.
FIG. 11 is a block diagram of a preferred embodiment of the page builder 918. The page builder 918 uses the page selection parameter from the page manager 930 and the measure/line/page assignment table 1022 from the score analyzer 916 toidentify the top line for the page image 919. A preferred embodiment builds the page image 919 line by line. For each line, the data structures corresponding to the notation objects in the line are extracted 1106 from the active data structures 912. The relative location of a measure within the line and the relative location of the line within the page are indicated by the measure/line/page table 1022. The relative location of the notation object within a measure is indicated by the "start time"for the horizontal location and by the "staff number" for the vertical location. These parameters are included in the preferred EMSF format and are listed in the VOIC chunk description section in Table 11. A coarse location for each notation object isdetermined 1108 using the relative locations of the notation object within the measure, the measure within the line and the line within the page. The coarse locations of the notation objects in the line are checked for spacing problems. Spacingproblems can include the notation objects being too close, overlapping or being too widely spaced. The locations of the notation objects are adjusted 1110 to resolve spacing problems. The notation objects dimensions 1112 table provides predetermineddimensional parameters in the horizontal and vertical directions used for adjusting locations 1110. An example of
correcting overlap of two notation objects is described as follows: a. Determine a coarse x,y location of a first notation object b.Determine a footprint by adding the horizontal dimensional parameter to the x-coordinate and the vertical dimensional parameter to the y-co...
Electronic musical instrument with semi-automatic playing function2009-09-22 00:00:00may be corrected according to sound
correcting data before being used to generate musical tones.Claims
What is claimed is:
1. An electronic musical instrument comprising:
playing data generating means for production of playing data in response to an action on a playing controller;
musical piece data memory means for storing musical piece data c...