Virtual Instrument Note Allocation for Balanced Orchestration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems for playing musical notes on virtual instruments often result in sonic defects, such as pitch stretching that leads to unnatural sound characteristics, when notes exceed the playable range of the instrument, due to limitations in sample libraries and MIDI specifications.
Innovation Solution
A method that allocates notes among virtual instruments using divisi principles, allowing for automatic transposition of non-playable notes by octave increments to ensure they fall within the playable range of available instruments, while prioritizing note allocation and using force octave shift functions to maintain balanced orchestration.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If pitch shifting is used to extend the playable range of sampled instruments, then playability beyond absolute range is improved, but sonic realism deteriorates due to unnatural sound characteristics
Solution Approach 1:
The system segments the orchestra into multiple virtual instrument groups (strings, woodwinds, brass, percussion) with defined playable ranges. Instead of stretching a single instrument's range, the system divides the musical content across multiple instruments, each playing within their natural ranges. This resolves the contradiction by maintaining sonic realism through segmentation rather than pitch shifting.
Solution Approach 2:
The note allocation processor acts as an intermediary between the MIDI input and the virtual instruments. It automatically transposes and reallocates notes that fall outside an instrument's absolute range to appropriate instruments within the orchestral ensemble. This mediator prevents direct pitch shifting while achieving extended playability through intelligent note distribution.
2Reliability
If the playable range of sampled instruments is restricted to improve sonic quality, then sound realism is improved, but playability deteriorates when notes exceed the restricted range
Solution Approach 1:
The system creates a universal orchestral ensemble where multiple virtual instruments work together to cover the full MIDI range. Each instrument maintains its restricted, high-quality playable range, but the ensemble as a whole provides universal playability across all 128 MIDI notes through automatic note allocation and transposition.
Solution Approach 2:
The system dynamically changes the allocation parameters (which instrument plays which note) based on the input note's pitch. When a note falls outside an instrument's optimal range, the system automatically transposes and reallocates it to a different instrument, maintaining both sonic quality and playability through parameter adaptation.
3Reliability
If automatic note allocation among virtual instruments is implemented, then orchestration balance is improved, but system complexity increases due to multiple allocation functions
Solution Approach 1:
The note allocation processor implements self-service by automatically analyzing incoming MIDI notes and allocating them to appropriate virtual instruments without user intervention. The system monitors note ranges, performs necessary transpositions, and distributes notes across the orchestral ensemble autonomously, reducing the need for complex user configuration while maintaining orchestration balance.
Solution Approach 2:
The system performs preliminary actions by pre-defining the playable ranges and characteristics of each virtual instrument in the orchestral ensemble. This preliminary configuration enables the automatic allocation algorithm to quickly and efficiently distribute notes without real-time complexity, as the decision framework is established in advance.
Data Source
Figure 1~2
Figure 3~4
Figure 5~6
AI summary
A method of assigning a sequence of sounds is provided, where each sound comprises a plurality of notes, the method 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.