I'm reposting this with a "sticky" because relevant questions keep arising. Many of the principles illustrated in this tutorial can be applied to the strings as well, with some adjustments. This is a tutorial I posted a couple of months ago:
Here's a quick tutorial for using GPO controllers with the flute file. Actually, this is less a tutorial than a group of illustrations. I've made a number of modifications to the data compared to the original file to illustrate the use of the various controllers in GPO. Keep in mind that the choices I have made are among myriad choices that could be made by the user. All sorts of interpretive variations could be applied. Also, I've worked rather quickly preparing this so additional refinements certainly could be made. Sometimes I have chosen to add a controller (e.g. portamento in bar 2, top note) just for the purpose of illustration. I have also added articulations and accents to show how these are accomplished. Not knowing the musical context of the flute makes it impossible for me to know how the articulation choices fit into the musical scheme of this particular project, but that is not my purpose here. Instead, I've tried to give examples of different situations and how these can be approached using the available tools. I have tried to modify the original notes of the file as little as possible. The mix is placed in an intimate acoustic using Ambience (Jazz Club 2 setting). All of the information below assumes the user has applied the latest GPO update.
1. First thing up was giving the virtual flute player room to breathe. This is a very "busy" flute part which makes it difficult to find sufficient room for comfortable breaks. As a result, I have had to rely upon very short "catch" breaths in a number of places. Otherwise, the part would need to be re-written to create larger phrase breaks for the player. Longer breath opportunities take place at locations like bar 2, beat3; bar 4, beat 1; bar 6, beat 3; and bar 8 beat 2, among others. Shorter, "catch" breaths occur in the midst of the long, relatively unbroken series of notes. These breaks always result in the foreshortening of certain notes to accommodate the need to take the breath. Examples would be bar 5, prior to beat 3; prior to bar 10, beat 1; prior to bar 11, beat 1; after the 3rd note of bar 12; and others.
2. For the purposes of this tutorial I have removed the cc7 data and disabled the cc7 option in the player. Static level of the flute is controlled by the setting of the volume knob in the player and, of course, the level settings within CubaseSX.
3. Dynamic mod wheel data (cc1) has been added for volume/timbre shaping. Notice the nearly constant expressive fluctuations of the data.
4. Sustain pedal data has been modified to reflect tongue/slur articulations. First notes of phrases are always tongued. At bar 8, beat 3 I have chosen articulations which involve tongue/slur combinations in relatively intricate, but commonly encountered, patterns. Certain notes of the patterns are accented by increasing the velocity value for those notes. Remember, velocity control of attack strength is only available for tongued notes (sustain pedal up). Examine the groupings throughout the file to see where I have chosen to apply slurs (sustain pedal down).
5. Two of the rapid arpeggios (bar 3 and bar 13) sounded unnaturally fast and even, so I used tempo data to slow them slightly. I also modified positioning and overlaps of the note data to make it more "human."
6. In line with the previous point, I modified many note positions when I felt they sounded unnaturally even. An even better approach (but one I did not take the time to do) would be to actually play the entire part in from a keyboard or wind controller. More natural expression can usually be achieved this way. If one's keyboard skills aren't up to the task at the given tempo, the tempo should be slowed during recording and returned to the original afterward.
7. Rapid runs and arpeggios are especially difficult with samples. I have applied several of the tools in GPO designed to help with this. The first is VAR 1 (cc22). This adds random intonational variations. Notice that I have applied it to the rapidly moving notes but not the start and end notes of a run or arpeggio. Wind players use their ears to center intonation but the notes must be of sufficient duration for the player to have time to make these adjustments. Rapid notes in runs and arpeggios are almost never perfectly in tune as a result. Applying intonational variations to these notes more closely emulates a real player. The next controller is VAR 2 (cc23). This adds random variations in timbre. This is also applied selectively, like VAR 1, to the rapid notes and any repeated notes to increase note-to-note variations. Portamento control (cc20) has been applied to the same notes, but confined carefully to only the slurred notes to avoid cross-layer pitch problems. Portamento adds a very subtle amount of "slide" to the transitions between rapid notes. Finally, notice that the volume of the descending/ascending arpeggios gets lower as it descends and gets louder as it ascends.
8. The "length" controller (cc21) has been applied to the rapidly moving notes too. I have found that I prefer the sound of rapid runs and arpeggios with the cc21 control set to "0" for the duration of the rapid notes.
There you have a description of the use of GPO controllers for this flute part. The principles of this example can be applied to all wind instruments and certain principles can be applied to string instruments as well.
I have supplied an mp3 file for reference, a CubaseSX file (where this tutorial was created), and a MIDI file for those who don't have CubaseSX. Here are the links: