Quick GuideOpusMOdus
Quick GuideOpusMOdus
Contents
Graphical
User Interface
Workspace
Navigator, Composer, Listener, Assistant and Utilities
How the composer will use the Opusmodus interface with its many features and possibilities
will always be a matter of experiment and personal choice. One of the objectives around the
design of Opusmodus is to respond to the many and various approaches composers have to
make in particular projects and circumstances.
Composer
At the heart of Opusmodus is the Composer panel. This is where the script for a new piece
of music comes together. It starts as a blank page, but composers quickly learn to ll it with
expressions that can be seen as a score, listened to, shown as notation or visualised
graphically. The Composer is a script-editor; it is an active space, with the Listener
constantly monitoring its activity.
Listener
A Listener panel is provided to let you evaluate LISP expressions and OMN forms. This tool
is invaluable as a method of testing your score and for reading the results of evaluated
expressions. Anything that’s entered as data into the Composer shows up in the Listener as
a trace of the output every expression creates.
The main role for the Listener is a kind of super script-checker. If the script isn’t correct a
helpful error message shows up in the panel.
Assistant
Composing on screen needs more than a single workspace. There are often multiple scripts,
texts, audio references, even visual media that play a part in making a new piece of music
happen. So Opusmodus calls up the Assistant. This is a panel that can be divided and sub-
divided to contain and display pretty much any media. The Assistant is such a exible space
that it can, at a single keystroke command, stand on its own and take over the entire screen!
Imagine working on a multi-movement piece; a composer might want to refer to earlier score
scripts, examine and edit a library le, compare a number of System Functions side by side,
audition a midi le performance, and look at a score in PDF. This is where the Assistant, “the
composer’s assistant” becomes invaluable. It’s even possible to multitask: audition with the
MIDI Player while adding new sub panes and expand the viewing area, and then open up an
Internet link.
To close an active Assistant panel you click on the last top-right cross. To duplicate a panel
you click on the rst top-right cross.
Open Files
In the course of a composing session you may have many les open in both the Composer
and Assistant panels. You can see what you have open by clicking the grid icon in the top
left of each panel. Use the arrows to browse and display any previously opened material in
the Composer or Assistant panels.
Notation (MusicXML)
That Opusmodus has adopted MusicXML as the de facto standard for displaying notated
scores should be no surprise. This is inextricably bound up with the development of the
distinctive Opusmodus Notation script OMN. It gives the composer the means to design into
the very composition of a score a host of musical details that have until now been impossible
to bring together in a single line of script.
= 60
8
26 arco
norm. 2 3 4
Violin I
arco
Violin II
arco
Viola
arco
norm.
Violoncello
27
rit. 8 = 46 = 92
5
6
Vln. I
Vln. II
Vla.
Vlc.
norm.
sul pont.
8 = 72
Vln. I
5 5
5
sul pont. norm.
5
Vln. II
sul pont.
Vla.
3 3 3
3
sul pont.
Vlc.
3 3 3
3
Opusmodus
MIDI-Player
The MIDI Player provides an instant visual guide to the play of pitch, rhythm, duration and
velocity (dynamics). Sounding out a composer’s script is accompanied by its graphic
representation and immediate playback in this MIDI Player window. A pitch event’s
intersection with a bar and beats grid is uniquely colour-coded and matched in a display of
velocity below the bar and beat grid. Play and Rewind controls are activated from a
contextual menu or from keystroke commands: Spacebar for Play and Return for Rewind.
With Zoom In and Zoom Out one or any number of bars can be viewed in sharp detail. In the
top left corner see the time signature display. Where changing signatures are frequent this
display changes as the rst bar on the left of the window appears. Tempo changes are
displayed in a similar way at the bottom of the grid. The instruction Ignore Ports allows the
composer to choose between the on-board GM sample-player or use personal outboard or
inboard sound sources.
Graphs (Plot)
Utilities
In such a powerful environment as Opusmodus there are just so many things that are not just
useful but necessary. The advantage of a digital workspace for a composer is that it can
bring together in a single location many, di erent, and essential things we need to make
e ective music.
System Library
The rst icon on the left brings up all the “help” guidance about the System Library that form
the vocabulary of the scripting language of Opusmodus. To nd our way around the many
hundreds of words in this dictionary of functions there is a contextual menu: to nd, learn
about and see / hear examples of what might be useful. By scrolling up and down the list,
you will notice that it is organised into groups of functions of similar types. You can see the
hierarchy of this organisation, and quickly locate the types of function you require via a
contextual menu accessed by right-clicking on the Utilities panel.
Popover Preview
Clicking on any item in the Utilities panel creates a popover preview with a number of further
options, depending on the type of le you have selected.
Documentation
Learning to “speak the language” of Opusmodus doesn’t just come from its dictionary of
functions. The Documents section of Utilities has specially-written examples of How-to use
these functions in musical situations. Next, discover an extensive section focusing on a range
of musical instances from Ornaments to Repeats and Endings found in Opusmodus Notation
(OMN). Finally, there’s a reference collection of Opusmodus score scripts and PDFs of
notated scores by professional composers working in di erent styles and contexts.
Score
Welcome to your personal Opusmodus score library. Here, anything that belongs to a
particular project in scripted code can be saved and archived. Many composers nd that
producing short sections of score is often the most e cient way of working, so it’s really
important to have such a utility. Files and folders can be moved, removed, renamed and
opened in di erent workspaces.
Notice that the popover feature makes it possible to view the score “on the y”.
Here is a more personal library space, this time for midi les. When a script is evaluated it is
able to play in the MIDI Player or be viewed in Notation without a midi le being saved. A
score script can be concluded with an instruction to compile- score, and that means to
midi le. The score is now transferable to other software or loaded into the Live Coding
Instrument. In some situations saving to a midi le may be quite unnecessary as a
MusicXML le is all that’s needed to take the script to a dedicated scorewriter.
Graphs (Plot)
This is an archive of graph material that you have generated with Opusmodus. For many
composers to produce graphical representations of musical parameters may prove to be the
most signi cant development found in Opusmodus. These 2-D visualisations in a host of
di erent formats and colours are seen to open up a whole new way of conceptualising and
understanding the interaction of parametric data in multiple streams, be it pitch, rhythm,
dynamics or structure. It’s the perfect way to take in complex algorithmic data. Graphical
representations are held in “plot” les in this dedicated location and can be linked to a
composer’s working project.
Libraries
Composers working in serious sound design and digital media production for lm, TV and
web applications often have an arsenal of sound sources on-board and out-board.
Opusmodus has a great range of default sound sets – and it’s easy to set up your own. Just
imagine mapping the output of natural algorithms like white noise to midi controllers. User
utilities include “active” libraries that store retrievable data such as Slonimsky scales and
patterns, poetic metrics, and Euclidian rhythmics. This data can be brought into scripts in
random or template-controlled forms.
Search
A fast and e ective search tool supports the large number of System Functions that make
Opusmodus the exciting environment for composing. In script-based composing it is so
necessary to reduce the cognitive load – the ability to remember our knowledge so we can
understand and work in partnership with software rather than battling against it!
This is where robust search tools are essential – no one can remember every detail of several
hundred functions when some of these are often rich in variable parameters.
The complexity of the function documentation varies depending on the complexity of the
function. Some will be very straightforward to grasp, others might need a little more time.
Knowing how to interpret the documentation will help you make sense of even the most
complex-looking functions.
Clicking the Open button on the popover opens the function documentation in an Assistant
panel. As a demonstration we'll select the PITCH-FRAGMENT function documentation.
Immediately we can see that this function PITCH-FRAGMENT has a large number of possible
arguments and values associated with it. Fortunately, most of these are optional. By looking
at the rst section of the documentation, the function de nition, we can discern which
arguments are mandatory and which are optional.
In the above example, the rst three arguments (times, range and pitch) are required to
successfully run the function. The additional optional elements of the function are de ned as
a series of “keywords”, following the &key marker. You will notice that each of these has a
default value associated with it – usually NIL – which can be overridden if desired. What each
of the arguments and keywords actually means is detailed below the function de nition in the
Arguments and Values section of the document.
As with material in the Composer panel, anything in an Assistant panel can also be
evaluated and auditioned as an aid to understanding how the functions work. By selecting an
expression and using the Evaluate Expression (⌘E) or Snippet → Audition and Notation
(⌘1) you will be able to see and hear the output of the function:
Navigator
Writing score scripts in Opusmodus begins in a similar way to composing on paper. It’s
equally messy. But in a virtual workspace we can keep everything in place that connects with
rst thoughts and experiments, no matter what the format. The three sections of the
Navigator help make that journey towards music possible.
Finder
The Navigator opens a script into the Composer and/or as many other documents in the
Assistant panel.
Definition
The De nition icon activates the display linked to the score script current in the Composer
and enables a search for a particular de nition of an expression. When it’s identi ed the
mechanism places a green pair of cursors highlighting each end of the expression. If it is a
long score this feature can be an invaluable ‘navigation’ aid!
Find
Further help to navigation is found with the Search Tool. It can and does search inside every
le and folder placed in the Navigator. This is wonderful for searching out instances of use
(and reuse) of particular System Library. In the illustration below there is a search for a word
tenon-thy. The pointer selects one instance and immediately the le in which it belongs
appears in the Composer.
View
At any time you can tailor the display to your needs by hiding the panels. You can show and
hide any of the panels by using the View menu at the top of the screen.
QuickView
The QuickView area is a exible multi-application space occupying the top half of the
Utilities panel. It can show the Midi Player, the Live Coding Instrument (LCI), PDF, text or
image les. Opening the Midi Player in the Assistant can break up the pattern of work ow in
a session, so there’s a contextual menu alternative to take the Midi Player into the additional
space of QuickView. When working on a complex orchestral score composers may nd
themselves needing to script in both Composer and Assistant panels. By leaving the
Assistant free and to hear and see results quickly the use of QuickView area can relieve the
log jam!
Via a contextual menu accessed by right- clicking on the Navigator panel you can open any
le with the command Open in QuickView.
A score can be de ned and played in the QuickView panel via the Tools → Evaluate Score
→ QuickView menu.
The popover window can open a le in the QuickView panel via a click on the QuickView
button.
To show LCI in QuickView panel can be done via the View → Show Live Coding
Instrument menu.
The Live Coding Instrument in the QuickView panel (top right) can explore in realtime the
further potential of your own script or midi le recording. Performing with LCI allows two
modes of interaction: with the scripted code itself, and with the buttons and slider of the LCI
interface. Live Coding is sometimes called “on-the- y programming” or “just in time
scripting”. It is a scripting practice centred on the use of improvised interactive programming.
The LCI gives the composer an intuitive control panel and the possibility of working in true
live coding style directly with the script. In practice composers who use the Live Coding
Instrument often begin with a script, make a change, then “playing” that change from the
buttons of the LCI control panel.
Snippet
There are four types of snippets. One is the Audition snippet which will play any selected
expression, list or fragment of your material, the second is the Voices notation snippet. To
audition an expression for example, you highlight it (select) and then via contextual menu by
right-clicking on your mouse you select the command Snippet → Audition and Notation
(⌘1).
The same process is used to show a notation snippet. The snippet is designed to deal with
three di erent inputs, OMN, integers and intervals.
'((-e -s (leg eb5 pp< ponte+con-sord 3e a6 < eb5 < a6 < leg)
((leg 3e eb5 mp> a6 > eb5 >) -e -e
(-e -3e - (leg+stacc e4 ppp< < < p))
con sord.
sul pont.
2 3 3 3
3 3
Opusmodus
35
Output
Opusmodus can export your compositions to a number of formats including MIDI data,
MusicXML notation and Midi to Score. However, to export your music it is necessary to rst
set up a score de nition.
For any evaluation of data within the Composer, Assistant or QuickView panels it is
essential for the chosen panel to be “active”. This can be done with a mouse click inside the
chosen panel or by using the menu items Move Focus to Next Area or Move Focus to
Composer.
A score de nition is created using DEF-SCORE. It is here that you can bring together all your
composed materials and assign them to MIDI tracks and instrumentation. A basic score
de nition might look like this:
(def-score score-name
(:Title "Titel"
:composer "Komponist"
:copyright "copyright"
:key-signature '(c maj
:time-signature '(5 8
:tempo '(q 120)
(instrumen
:omn melody-om
:channel
:sound 'g
:program 'acoustic-grand-piano)
In the above example, score-name is a variable and can be anything you choose. You could
even have multiple DEF-SCORE in the same le for di erent arrangements of your piece.
Following the variable name is the score header, which contains the high-level information
about the score such as the :tempo, :key-signatures and :time-signatures. Note that
these can also be lists of values allowing multiple changes in tempo, time and key signatures.
The remaining sections of DEF-SCORE comprise of de nitions for each instrument in the
piece. In the above example all the musical data has been turned into OMN. However, you
can still use :pitch, :length and so on to provide discrete lists for each track.
fi
n
fi
ff
fi
fi
36
MIDI Playback
Once a score de nition has been created, it can be played via the Tools → Evaluate Score
→ MIDI Player menu item. You can also preview your composition notated in standard
notation within Opusmodus via the Tools → Evaluate Score → Audition and Notation
menu item. This will open up a new Assistant showing the preview of your score.
Last Score
You can export a MIDI le via the File > Export → Last Score to Midi... menu item. In this
instance the last evaluated DEF-SCORE section will be compiled into a MIDI le. All MIDI les
will be saved into Opusmodus’ MIDI folder. Specifying an additional folder name will create a
new folder and output the score in that location. The same goes for transferring your score-
le to a MusicXML le. File → Export → Last Score to MusicXML...
MIDI to Score
A new score doesn’t have to begin from working with Opusmodus. A composer’s
improvisation can be recorded and captured to midi le; in making music for lm, TV or web
production composers often source a style or atmosphere from one of the many midi le
libraries on-line. Opusmodus provides a unique Export feature in its le menu. This allows a
midi e to be converted into an .opmo le format with every detail faithfully transcribed.
The Export dialogue box for Midi to Score... shows quantisation, elimination of dynamics
and the invaluable ‘section capture’ feature as in-built additions. Now you can take that
fragment from a Vivaldi concerto and extend it with Opusmodus functionality.
Consolidate Workspace
Finally, the Consolidate Workspace command is able to create a copy with a dedicated
folder of all the les in a particular workspace (project).
Preferences
In Opusmodus Preferences there are three window sub-panels in which two are for
Composer and Listener setup, and the third for Audition snippet setups.
Appearance
Here you can set the Composer and Listener default font and font size.
The colourisation is very valuable preference. Here you can assign your own choice of colour
to the De nition, Function, Articulation etc... for better reading and writing, particularly in
those scores written in OMN.
Audition
Notation