O QUAM PULCHRA ET GLORIOSA (2022) for realtime Csound (PC and Android versions) Arthur B. Hunkins abhunkin@uncg.edu www.arthunkins.com GENERAL O QUAM PULCHRA ET GLORIOSA is not so much a composition as it is an instrument, or a framework for (solo) improvisation. It exists in two versions: one for PC's (all platforms), and one for Android devices. Output for both versions is stereo. OQuam.csd is intended for PC's (Csound 5.19 or higher). It requires a MIDI controller with 8 knobs/sliders. (A limited rendition of this work may be realized with the first 6 knobs/sliders only.) OQuam.csd is normally performed from the console (Csound command line). The Android version is OQuamAndroid.csd. It runs either on the standard Csound for Android app (free @ play.google.com), or any of the "alternative" Android apps except Csound6a found at: http://arthunkins.com/Android_Csound_Apps.htm. The standard app requires at least OS 5.0 and works on all smartphones and tablets, while the "alternative" apps run on any OS from 4.1.1 up. Note that to download one of the alternative apps directly to Android, you may need (in Settings -> Security) to select "Unknown Sources" to install apps from other than play.google.com. After installation, copy/paste one of the Android csd's to any user-accessible folder on your device (suggestion: the Music folder). Then Open that file within the app, and Run Csound. You also have the option to download an alternative app to your computer, then copy it (via USB transfer) to the Download folder on your device and install it from there. NECESSARY EDITS TO OQUAM.CSD The following edits may be required for the *PC version only*. These changes can be made in any text editor (e.g., Notepad), and are found toward the beginning of OQuam.csd. First, under , you'll need to adapt for Linux if you are on other than a Windows or Mac system. (Recall that an opening semicolon comments out a row of code; removing the semicolon implements the row.) If you have a single MIDI device, the default -M0 is fine. If your console outputs an "unrecognized MIDI device" error, look for the MIDI device list, and substitute your appropriate device number for the zero in -M0; then rerun Csound. (With more than one audio output device, you may need to follow a similar procedure for -odac, appending the appropriate device number - e.g., -odac6. The default is effectively -odac0, the number of your usual stereo device.) You'll also probably need to modify the MACROs found a little further down the .csd. CHAN and CTRL are MIDI-related settings, and allow your MIDI controller do communicate properly with Csound. CHAN defines the MIDI Channel your controller is sending on (default is 1, the normal channel). A special code, CHAN "0", indicates that your MIDI device sends Continuous Controller 7 (CC 7) messages on its first 8 channels. The order of controls in this case parallels the slider sequence outlined below. Otherwise, CTRL (default=20) specifies the beginning controller number of 8 successive controls. Note that for both CHAN and CTRL, numeric substitutions must be enclosed by #'s. PERFORMANCE CONSIDERATIONS The MIDI and Android knobs/sliders vary the following parameters. They do so in two groups, each representing one portion of the total sonority. (A "limited rendition" consists only of the main "voice," i.e., group 1.) Group 1 (the main "voice" - compact members of single harmonic series): SLIDER 1: master volume for Group 1; with slider 1 at 0, #'s 2-6 are no-op SLIDER 2: adds progressively higher odd-numbered harmonics SLIDER 3: adds "shimmer" (undulation) to sonority SLIDER 4: speeds up/intensifies existing "shimmer" SLIDER 5: expands/broadens range of existing "shimmer", randomly quantifying it in specific ranges SLIDER 6: speeds up quantification, transforming to a single large mass/cloud Group 2 (the secondary "voice" - stacked and slightly enhanced octaves in the above harmonic series): SLIDER 7: master volume for Group 1; with slider 7 at 0, #8 is no-op SLIDER 8: adds random "tremble" (amplitude agitation) to stacked octaves. Performance is completely improvised; no score is provided. (Performers are free, however, to pre-plan anything they like.) As can be seen from the Group 1 description above, there is a natural progression/buildup of sonority from slider to slider. Group 2 then adds to (stabilizes or caps) this buildup. Whatever path (if any) is chosen, simply observe the following: 1) Set all controllers to 0 prior to running Csound. After start, optionally adjust any controller other than 1 or 7 to a higher value. Performance begins by raising either 1 or 7, and ends when both finely return to 0. 2) Move knobs/sliders slowly and evenly. On Android, be sure that, if you stop a slider midway, you pick up close to the same spot; otherwise a "skip" will occur, which should not happen. (No skips or sudden movements anywhere please!) 3) It is not necessary to use all available sliders. 4) Finally note that, on Android, only one control can be moved at a time. On PC's, with MIDI, there is no such limitation; feel free to manipulate several controls simultaneously, keeping in mind that controllers 1 and 7 are masters. There is no suggested duration for performance. The simple demo performance available on this website consists of the following: each of the 8 sliders is successively raised from 0 to MAX, after which slider 1, followed by slider 8 and finally 7, return to 0. It traces the general performance path (sonority buildup) suggested above.