
CueStation User's Manual,  ©1997 Level Control Systems Ltd., all rights reserved.

The following is a text-only excerpt from the Cuestation user's manual, available  in its entirety as a PDF file from our web site, www.LCSaudio.com

INTRODUCING SUPERNOVA--A MODULAR SOUND SOLUTION

The SuperNova Series™ is a modular system that brings unprecedented power to audio control systems for theater, sound reinforcement, and location-based entertainment. SuperNova can be configured to create anything from a straightforward matrix mixer to a completely dynamic automated sound system that replaces a house console, matrix mixer, outboard signal processors, playback systems, and control computer.

All LD-88s in a system are digitally interconnected to form a unified audio matrix. To facilitate programming in a number of styles, the matrix has been virtualized to the topology of a theatrical mix console. The Cuestation software lets you determine how you want to "see" the matrix.

The primary configuration decision is how many outputs are to be treated as aux sends and how many as matrix outs. In addition, the number of mix busses to employ is specified.

So, for example four LD-88s yield a 32x32 matrix. This can be configured in a number of ways, including 32x24x32, 32x16x20 with 12 aux sends, 32x40x30 with 2 aux sends, etc.

Sound diffusion may be specified with specific matrix presets, or by employing a "SpaceMap" and matrix bus trajectory.

SOFTWARE AND HARDWARE

Cuestation is the name of the software used to program LD-88s that runs on BeOS compatible computers, including the LD-CS1.  Occasionally "Cuestation" is used to refer to the computer running the software.  The LCS LD-CS1 is a rack-mounted BeBox with Advantek PCL 745-B RS-422 card. 

The software runs in a similar fashion on both platforms.  However, the Macintosh ships with a one button mouse, while the BeBox ships with a two button mouse.  Cuestation software uses both left and right buttons.  A Kensington two button mouse for the PowerMac is supported; however, the right button behavior is also achieved by simultaneously holding the "control" and "command" (between option and space bar) keys and depressing the mouse button of a single mouse button.

In addition, the BeBox includes MIDI and RS-232 support, which are not supported by the PowerMac family.  Be support for Intel - based PC's is forthcoming.  Ironically, the serial support for these PC's will be much like the original BeBox hardware.

INSTALLATION EXAMPLES

Following are a few applications of the LD-88.  The audio and control connections vary greatly from one installation to another.  By examining a few, you might be able to determine the best way to install the LD-88s in your system.

Theatrical Sound Effects Management and Control - One or two LD-88s control one or more MIDI Machine Control (MMC) compatible hard disk players such as the Akai DR4, and Samplers via the MIDI output of the LD-88.  The audio outputs of the hard disk players and samplers are patched into the LD-88(s), and the outputs of the LD-88s are patched into the inputs of the main Front of House (FOH) console.  These inputs are then assigned to specific speaker locations in the theatre via the console's matrix section or bus assigns.  This provides an integrated platform for automating the sound effects system.  In addition, simple shows that don't require sound effects can be operated without the LCS.

Sound Reinforcement - Four LD-88s provide a 32 x 32 mix matrix to a distributed system of speakers in an auditorium or amphitheatre.  The sixteen group outputs from the FOH console are patched to the first sixteen inputs of the LCS system.  Outputs from satellite submixers and signal processors such as reverbs are patched into the remaining inputs.  Output Eqs and delays are set with the LCS and seldom changed from day to day.  A basic mix matrix is "burned" into the internal non volatile memory of the LD-88 to provide a simple way to run the system without operator control over the automation control software.  Matrix presets are built up as the season progresses, and re-used appropriately.  A RIF control surface provides hands on control of input levels, matrix levels, output levels, and system levels.

Theatrical Sound Effects Management and Matrix Mixing - Combining elements of the first two designs described, two LD-88s are employed to provide a 16x16 matrix from a combination of 8 group outputs from an 8-bus console, and 8 outputs from a pair of 4-track audio recorders.  The outputs of the LCS are patched directly to fifteen  amplifier channels, while the sixteenth output is patched to the input of an external reverb, used to enhance distance effects during audio panning.

Multi-channel Sound Design for Virtual Reality Environment Development - Audio outputs from samplers, computers, and microphones are mapped to multiple speakers by the LD-88s and panned under external control from another computer.  This computer sends coordinate information to the LD-88 via RS-232, and the LD-88s in turn spatialize the audio inputs according to the external control.

Orchestral Mixing and Room Equalization - Eleven LD-88s are combined to provide 88 inputs and 88 outputs.  Sixty four microphones are patched to the LD-88 inputs via external Mic preamps.  The LD-88 outputs are patched directly to amplifiers.  In addition, a submix of sixteen vocal groups and eight effects sends are patched from a FOH console to the final twenty-four inputs of the system.  A RIF control surface provides hands on control of the orchestral inputs.

Themed Retail - A set of eight LD-88s are used to automate a mix from a variety of video disk players, hard disk recorders, and microphones.  The cuelist is driven without operator intervention via an external timecode source.  An external control system is used to set overall system levels.

On-board Audio for a Parade Float - A single LD-88 is equipped with an LD-16S 16 track SCSI audio interface card.  All automation data as well as audio is stored on an external SCSI drive.  When the system is turned on, the automation data is loaded from the SCSI drive, and the system is ready to accept external timecode to drive both the audio playback and the automation of the mix.

INTERFACING FROM THE LD-88 TO THE HOST COMPUTER
The computer that runs the Cuestation software communicates to the network of LD-88s with a serial cable.  As cues are edited, the data is modified synchronously between the host computer and the LD-88s.  In general, only small sets of messages need to be passed over this serial line.  However, larger amounts of information may be sent when transmitting an entire document.

OPERATING CUESTATION:  WORKING WITH CUESTATION AND CASL

Whether 1 LD-88 or 16 LD-88s are used, the system acts as one unified matrix mixer. If for instance 6 LD-88s are used, the system provides a 48 in, 48 out matrix mixer.

To deal with this matrix, we have employed a virtual mix architecture that lets you configure outputs as either matrix outputs (to amplifiers) or aux sends (to signal processors or monitor feeds). In addition, the number of mix busses (groups) is configurable. Up to 64 mix busses may be employed.

The same set of LD-88s could be configured as a 48x8x48, a 48x24x32 with 16 aux sends, or a 48x16x2 mixer with 46 aux sends.

MIXER CONFIGURATION

To configure the system, select "Configure mixer", select the appropriate settings, and press OK. This will create a synchronous mixer setup with Cuestation and the LD-88s.  If you will always be using this setup, select "Save as Default Mixer" from within the Console window.

Choices for mixer configuration are broken down into two sections.  The top set of settings constrains how the system may be programmed, and affects the total number of control points in the system.

The bottom set of settings constrains the appearance of control elements to the user in any one window pane, but does not in any way limit the total number of control points in the system.

After you press "OK", Cuestation will ask you to confirm that you want to send this configuration to the hardware.  Whenever the mixer configuration is resent, all control values are set to their default values.

MIXER WINDOWS

Mixer windows include the Console, SCSI, Group Masters, Matrix, Output Masters, System Level, Aux Masters, Input EQ/Delay/DCA, Output EQ/Delay, Aux EQ/Delay, and Virtual Groups.

For each window, related items are grouped together when storing presets as "subcues" within collections of presets, or "cues".

For instance, Console fader levels are stored together as one subcue type, and SCSI fader levels are stored together as another subcue type.  A detailed list of subcue types will follow.

AUTOMATION WINDOWS

Automation windows are used to organize information and provide structure for automation data.  These windows include Cuelist Transport, Cuelist Editor, Cue Library, Subcue Library, Externals, and SpaceMap windows.

The "Transport" window provides the primary interface for operating a show and traversing a predefined list of Cues.  The very top of the window shows the most current cue recalled, whether by cuelist entry, external show control, or the user double-clicking in the cue library.  Beneath this the most current cuelist entry is shown.  Under this the pending cues are shown, along with a timecode and time of day display.  Transport buttons are used to return to the top of the list, skip forward or back, or execute the next cue (go).

The "Cuelist" window is used to edit cuelists.  Cuelist entries are sequenced and may be triggered by a manual "Go", SMPTE/MIDI Timecode, or autofollow.  Multiple cuelists may be maintained in the same project file; however, only one may be active at once. 

The "Cue Library" window displays the list of cues in the project in the left hand side of the window.  In the right hand side of the window, subcue entries are displayed for the current cue.  Cues may be created that are empty, and then subcues may be dragged and dropped into the cue library window.  Or, "Capture All" may be employed to capture all current mixer settings into the cue.

The "Subcue Library" window is used to create, store and edit subcues.  One subcue type may be displayed at a time by selecting the desired type in the window's menu.  If a new subcue is created, the current data for the selected type is stored in the subcue.  Recapture subcue data in place will cause the data for the selected subcue to be rewritten with the current data in the mixer windows.  This will affect all cues that refer to that particular subcue.

The "Externals" window is used to create sets of MIDI or other serial messages.  These messages may be used to control external hardware, or used to send messages between LD-88s in order to configure or control some aspect of the system.

The "SpaceMap" window is used to construct custom multi-channel panning curves and create trajectories which may be mapped to busses via the Bus Trajectory subcue type.

LOG WINDOW

The Log window displays messages which may be useful to the operator.  For instance, every time a cue is recalled the cue name is printed with a timestamp.  This can be used to calculate auto-follow times.

CUESTATION SHORTCUTS

F12 and F11 select the previous and next mixer windows in linked lists of windows. Windows in Cuestation are in one of two groups; mixer windows (Console, Groups, Matrix, Outputs, System Level, Aux Masters, Input EQ, Output EQ, Aux EQ, Virtual Groups) and high level control windows (Cuelist transport, Cuelist editor, Cues, Subcues, SpaceMap, Externals).

F7 and F8 page side to side in pageable windows such as the inputs window.
F5 and F7 page up and down (aux sends, for instance).

"Page Up" and "Page Down" keys in the keypad make a numerical go up a bit and down a small amount.  The "End" key sets to min value, "Home" to max value, and "Delete" to 0. The letter "z" sets a numerical to zero.

In general, values can be "drag and dropped" from one channel to another by right mouse-clicking a parameter, then dragging and dropping it on another parameter value of another channel.

Some key equivalents are window context sensitive; for instance when the matrix window is current, "alt \" sets the matrix diagonal to unity, and "shift alt \" sets the matrix diagonal, bus masters, output levels, and system level to unity.

The alt key of the LD-CS1 is represented on a Macintosh keyboard by the "command" key to the left of the space bar.

A right button of a two button mouse is simulated by holding the control and command keys simultaneously and pressing the single mouse button.


MIX ARCHITECTURE

FADER TAPERS
The fader taper from full off to full on spans -infinity to +10 dB for all control values. The taper is piecewise linear, and can be visualized as a table with 1001 values spanning a 100 mm fader.

Cuestation fader bitmaps are marked off in "12mm" segments. The numericals readout in dB. Internally, levels are stored in tenths of a millimeter. All levels now use tenths of a millimeter units from 0 to 1000.  The fader taper is described in the External Control section of this manual.

The System Level may be automated, while the Manual System Level is reserved as a control point to ride on top of the automation.

CONSOLE

The Console window has a number of channel "strips" or "modules", each of which contains the following control points (from top to bottom):

Channel Label - Labels can be defined by selecting the label and choosing "Define label..." All labels (inputs, aux sends, groups, virtual groups, and outputs) are stored with the mixer file. 

Aux sends - A row of controls for each aux send allows you to set the gain and whether the send is pre or post fader.  The total number of aux sends per channel and the number of aux rows in the view are set in "Config Mixer".  Arrow keys to the left of the aux sends provide a way to page up and down; alternatively F5 and F6 may be used as well.

Bus assigns - Up to 16 bus assign switches may be allocated per channel.  These may be assigned to specific busses by right-button clicking (on a two button mouse) or control + command clicking on a one button mouse.  Switches are turned on by single mouse clicking the buttons.

Pan - Pan value is set from -63 to +63.  The value may be set via the pan pot control or the numerical.  A "wait" and "fade" time may be set per pan in a subcue, in seconds.

Mute, Solo, Phase invert, and V Group - All four of these controls are stored with the Input Faders subcue except for Solo, which is not automated.  The V Group numerical lets you select a virtual group fader which provides an additional gain control.  V Groups may be assigned to any faders in the system, including aux masters, groups, and output levels.

Fader - The input fader is accompanied by an EQ button to bring up the input EQ window for that channel, a U button to set the channel to unity, and an ( button to turn the channel off.

As is the case with other mixer windows, values may be drag and dropped from one channel to another by using the right button of a two button mouse.  In addition, all values of the same type may be changed simultaneously by control - clicking in the user interface item.

SCSI

SCSI channels behave like Console channels, except they do not have filters available for them.

SCSI subcue types are unique from Console subcue types.  For instance a set of input fader values are stored separately from SCSI faders.  

In the following example, note that four aux rows have been allocated.

AUX MASTERS

Aux Masters control the overall levels of the each aux send.  All aux master levels and mute states are stored as one subcue type.

GROUPS

Groups provide a master level control for each of the bus assigns.  These may be referred to as bus masters or submasters.  Group faders may be paged right and left by using F8 and F7 keys, respectively.  

The group fader labels may be changed. 

Mute, phase invert, fader level, virtual group assignment, wait time, and fade time are stored together in the Group fader subcue.

MATRIX

The Matrix is used to mix groups to outputs.  All values are shown in dB.  Sets of outputs may be paged right and left by using F8 and F7 keys, respectively.  Sets of inputs may be paged up and down by using F5 and F6 keys.

A set of input levels for a given output may be copied to another output by dragging and dropping one column of data onto another.  Menu items in the Matrix menu provide options for clearing the matrix, setting the matrix diagonal and others.

OUTPUT MASTERS

Output Masters provide a master level control for each of the matrix outputs.  F may be paged right and left by using F8 and F7 keys, respectively.  

Mute, phase invert, fader level, virtual group assignment, wait time, and fade time are stored together in the Output Master subcue.  

An EQ button is provided to bring up the appropriate EQ and delay settings for the output.

VIRTUAL GROUPS

Virtual Groups provide an additional set of control points that may be mapped to any other fader or set of faders in the system.  Unlike VCA groups, Virtual groups do not affect the routing of the audio.  A Virtual group could be assigned to a particular set of output faders, for example.  Thus a set of virtual groups could provide overall control over the vocalists, the orchestra, the proscenium speakers, and the surround speakers.

SYSTEM LEVELS

Two independent system levels are provided.  The "System Level" window is an automated system level.  The "Manual System Level" is not automated, and provides a manual control over the system level.  This provides a means for sections of a show to be automated to different overall levels, yet leaves an additional control to "ride" the show level manually.

Eqs

All input EQs and input delay times are stored together as one subcue type.  Input DCA setting is stored as another subcue type.  Each input channel has five parametrics and a delay up to .17 seconds

Filter types are low shelf, band pass, and high self.

Each output channel has six parametrics and a delay up to .49 seconds.  Phase response may be plotted by selecting the item in the Plot menu.  Settings may be copy and pasted between panels by selecting items in the Edit menu.

CUE ARCHITECTURE

Creating Cuelists, Cues and Subcues

Cuestation employs a hierarchical structure very similar to Cue Control 2.4.  However, Cuestation introduces yet one more level of hierarchy, the Project. In addition, multiple cuelists are maintained in one document. Another major difference between the operation of Supernova and the LCS Analog Series is that Cuelists, Cues, and Subcues are edited simultaneously on the Cuestation and the system of LD-88s.

I. Project -- This is the highest level of the hierarchy. The Document can contain multiple cuelists, cues, and subcues.

II. Cuelist -- A cuelist is an ordered list of cuelist entries. Cuelist entries refer to a cue, and include additional information such as the manner in which the entry is triggered.

III. Cue -- A cue is a collection of one or more references to subcues, which can be of different types.

IV. Subcue -- A subcue is an entity that directly changes one or more related control points in the system.

Subcue types include:

1. Input EQ/Delay/Trim -- This contains all EQ, delay, and DCA trim settings for all console input channels.
2. Output EQ/Delay -- EQ and delay settings for all output channels. 

3. Input levels -- Levels, mutes, and phase inverts for all input channels.
4. Input bus assigns -- Bus assigns for all inputs
5. Input pans -- Pan positions for all inputs
6. Input aux row -- Aux settings for one row for all inputs.

7. SCSI levels -- Levels, mutes, and phase inverts for all SCSI channels.
8. SCSI bus assigns -- Bus assigns for all SCSI channels
9. SCSI pans -- Pan positions for all SCSI channels
10. SCSI aux row -- Aux settings for one row for all SCSI channels.

11. Aux masters -- Aux master settings for all auxes
12. Bus masters (groups) -- Levels, mutes, and phase inverts for all groups.
13. Matrix row -- Levels for one row of the matrix.
14. Output levels -- Levels, mutes, and phase inverts for all outputs
15. System level -- System level
16. Input DCA

17. Externals
18. Bus trajectory
19. SCSI Playback (Q3 '97)

Externals and Bus trajectories are "special" subcue types in that these are the only kind of subcues that will not be captured into a cue by a "Capture All" command.  In addition, these subcue types are not affected by purging unused cues and/or subcues from within the cuelist window.

CREATING AND MODIFYING CUES

In general, the programmer will not need to be concerned with all these types. The advanced Supernova programmer may find that direct access to these subcue types will be useful. The easiest way to create a cue is to "create cue and capture all" from within the Cue Library window.  This creates a new cue, and puts references to subcues for all system parameters in the cue.

An even easier way to program is directly from the cuelist. Press F4 to create a cuelist entry, create a new cue, put the cue in the cuelist entry, and capture all values. F3 is used to do all of this except for capturing all values. Shift-F3 causes the cuelist entry to be triggered by timecode, and puts the current timecode value in the entry. 

When subcues are created, all subcue parameters are downloaded from the Cuestation to the LD-88s. However, often creating a new cue will only have differences in input levels, for instance. In this case, "capturing all" requires all input levels to be resent from the Cuestation to the LD-88s, and "subcue IDs" for all other subcue types. For this reason, the time required to "capture all" is somewhat indeterminate. 

Cuestation maintains separate windows for the Cuelist editor, Cue library, and Subcue library. Cuelist entries are edited by "right-button" (or in the case of the PowerMac, control+command) clicking on the fields in the cuelist. Auto-follow, auto-follow time, trigger type, and cue may all be edited in this manner. Cues may be edited by dragging and dropping subcues from the subcue library window into the cue window. However, usually either "capture all" or "capture differences" will be used. 

"Capture differences and follow through" allows you to make a change in the middle of the cuelist and have the changes carry through for other cues.

Here's the scenario:

You've roughed in a show and have 20 or 30 cues.  Now you're going back and are tweaking.  You've skipped to the 4th cuelist entry, recalled it, and made a bunch of changes in the console and matrix.

"Capture differences and follow through"

Any parameters that have changed in the current cue (perhaps 3 or for fader levels, a pan, couple of EQs, matrix levels) will be applied not only to the current cue, but cues over a range for which the previous values all were the same.  Version 1.37 will apply changes to cues for cuelist entries after the currently selected entry in the cuelist.  Future versions will provide more flexibility for start and end cuelist entry IDs.

The default way that someone works might be the following:

1)  when creating the cuelist, "capture all" into new cues and cuelist entries
2)  to modify values only for the current cue, "capture differences"
3)  to modify values and maintain continuity throughout following cues, "capture differences and follow through"

Perhaps you have created an entire show with 200 cues, and input 48 wasn't used at all.  At the last minute you've decided to use this input for an extra overhead mic over the string section of the orchestra.  But for all 200 cues, input 48 is off and unassigned.  Perhaps you want the mic turned on after the third cue, and stay on throughout the show.

Recall the third cue in the cuelist edit window by double-clicking the cuelist entry.  Set the fader level to unity, turn on appropriate bus assigns, and set the pan.  Now "capture differences and follow through". As you step through cues after the current entry, note that input 48 retains those new values you just assigned.  Check the first two cuelist entries.  These two still retain the original values.

CUELIST

A cuelist is an ordered sequence of pointers to cues that are to be executed in a predefined order.  A project file may contain multiple cuelists, and each cuelist can use the same set of cues, which are maintained in a cue library.  

Cue editing operations may be performed on the cue in a selected cuelist entry by accessing the commands in the Cues menu.  "Purge Unused Cues" and "Purge Unused Cues and Subcues" may be selected to trim unused data from the current project.  It is recommended practice to save your work before purging data.

Cuelist entries may be created by selecting "New cue entry" in the Cuelists window.  A cue may be attached to a cuelist entry by dragging and dropping a cue from the cue library on top of the entry, or by right-button clicking on the Cue name.  A pop-up menu will be shown that displays all the cue names.

Cuelist entries may be triggered manually (via the Go button in the transport window), via SMPTE, or Time of Day (not yet implemented).  Trigger type is selected by right-button clicking on the type, which defaults to manual [M].

If a cuelist entry is to be triggered via timecode, then the hours, minutes, seconds, and frames may be specified at the bottom of the window.

Auto follows may be programmed by right-button clicking in the "AutoFollow" field.  An autofollow may select the next cuelist entry, or a specific cuelist entry by index number.  The delay time may be set quickly by right-button clicking on the Delay field, or entering a value in seconds at the bottom of the window.

CUE LIBRARY

As discussed earlier, "Capture All" captures instances of all subcues into a cue. Capture differences, on the other hand, puts new subcues into a cue only of the type that is already in the cue. For instance, you might want to make a series of cues that only modify the input levels. This will provide you with the flexibility of designing the matrix automation later. A cue might be duplicated that only has an input level subcue, and then "capture differences" will then change the input level subcue in the cue, regardless of changes to other system parameters. This allows for a flexible programming style.

SUBCUE LIBRARY

The menu on the far right may be changed to the desired subcue type by clicking on its name.  All the subcues of the given type will then be displayed.

If new subcues are created for mixer subcues, they will be filled with data from the current mixer state.

The "Row" field may be set for certain types (Aux row, Matrix Row, Bus Trajectory) to allow preview of the subcue for that type.  For instance, to recall a matrix preset on row 10 of the matrix, set Row to 10, then double-click on the desired subcue type.

Some bus trajectory subcues are shown below.

TRANSPORT WINDOW

The Transport window is the main window from which you will operate a show.  Buttons are provided to skip forward or backward one cue entry, return to the top of the list, and recall the next cue (Go).  The current cue list entry is shown at the top of the window, and the next few cues are shown below.

If the LD-88s are receiving MIDI Timecode, a display will be updated once per second with the current MTC value. 

The current time and date are shown, and a separate box is reserved to display the most recently recalled cue.  Thus at a glance you can tell what the most recently triggered cuelist entry was, and what the most recently triggered cue was.  In general, these will match.  However, during editing you might recall a cue directly from the Cue Library window.  Or perhaps an external show control system will recall an LD-88 cue.  In both these cases, the cue recalled will be displayed.

MIDI Commands utilize the same format as MIDI Strings (described later in this document), and allow the immediate execution of a MIDI string to the LD-88.  The "LD-88" menu in the Transport window provides access to the list of installed MIDI Command.  After selecting a MIDI Command for execution, a dialog box will appear that allows parameter input and confirmation of the selection before transmitting the MIDI Command.  The message sent is MIDI protocol compatible (as are all LD-88 messages) but are transmitted over the RS-422 cable to the LD-88s.

We have built MIDI Commands to perform such functions as turning off the MIDI Timecode generator, perform diagnostics such as checking the temperature of the LD-88s, and storing and recalling automation data on SCSI drives or the internal Flash memory of the LD-88.

MIDI Commands provide a quick way for us to provide access to features in the LD-88 after the firmware is implemented.  Some of these features may ultimately migrate elsewhere within Cuestation.

Consult the user area of our web page (www.LCSaudio.com/user) for notices of changes or additions to the MIDI_Commands file.  The MIDI_Commands file is stored in system/settings/LCS_Settings in the BeOS.

EXTERNALS

CREATING AND USING EXTERNALS

Externals allow you to define collections of serial messages which can be sent to devices via MIDI, RS-232, or RS-422 or to other LD-88s via "boxnet".  Typically, Externals are used to send MIDI notes to samplers, program changes to reverbs, or sysex messages to timecode generators.  Many common messages are supported by Cuestation.  However, any sequence of 8-bit data may be transmitted, regardless of whether it is a "valid" MIDI message or not.

To create a new external subcue, select "New Subcue" from the Subcues menu.  The right hand side will be blank.  Then, select "New command entry" from the Externals menu.  Right-button select the desired type, which might be simple MIDI commands such as program change or Note messages, or more complex system exclusive or MIDI strings.

"Box" selects which LD-88 in the system will generate the message.  "Port" selects which port the message will be transmitted.  If Port is set to "BoxNet", it will be transmitted to other LD-88s (or itself) in the system.  The numerical to the right may be set to the destination LD-88 if the Port is set to BoxNet.  "Type" selects the message type.  "Chn" selects the MIDI channel, if appropriate.  Additional fields display message index (note, program number, controller number) and message data (velocity, controller value), and duration (in seconds) if appropriate.

To edit values for MIDI string command types or System exclusive messages, select "Edit Sysex" from the Subcues menu.

USING AND EDITING MIDI STRINGS

The MIDI_Strings file in the LCS_settings folder is used to configure a set of user defined macros complete with parameter substitution.  The format for defining MIDI strings is provided at the end of this document.  This provides an easy way to extend the palette of available external command options.  

This also provides a way for Cuestation to provide preliminary support for new firmware features before the final user interface is created.  MIDI strings are currently (as of 3/1/97) used for SCSI control, RIF configuration, MIDI Timecode generator control, and external trigger mapping.

A default MIDI_Strings file is provided by LCS which demonstrates much of these capabilities.

SPACEMAPS

SpaceMaps are a two-dimensional representation of a panning surface.  The surface is subdivided into triangular regions ("Trisets").  Each node of a triset can be some number of speakers.  If the node represents one speaker location, it is referred to as a "speaker" node.  More than one speakers constitute a "virtual" node.  If no speakers are assigned to a node it is a "silence" node.

Panning is performed such that the some total of power output by the speakers is unity.  This provides the sound designer with tremendous flexibility for dealing with non-uniform speaker distribution.  

CREATING AND EDITING SPACEMAPS

Select the "SpaceMap" window in Cuestation.  

Press the "Insert" button.

Left-button mouse click the positions of the nodes in your SpaceMap. The default type of a node is "speaker". To set nodes to other types, select one or more nodes by clicking on the square, drag a rectangle around a group of nodes, or shift-click a group of nodes, and then set the type using the "Nodes" menu. Alternatively, you can select a node and right-button mouse click the type. 

If the type is "derived" or "virtual" you need to associate that node with other nodes in the map. To do this, press the "Select" button, then shift-click the appropriate nodes, and press "alt-L" to link the nodes. 

To define trisets, first press the "Trisets" key.  Trisets may be defined in two ways. The most simple way is to click in the middle of 3 nodes. This will highlight the three nodes. Press "alt-T" to define the triset with the three selected nodes. Alternatively, you can "shift-click" three nodes explicitly, and then press "alt-T" to define the triset. 

Multiple SpaceMaps may be maintained in the document. To create a new SpaceMap, press "alt-N" or "New SpaceMap" in the "Space" menu. Zooming in and out of SpaceMaps is supported with the "page up" and "page down" keys. The grid size may be set in the "Grid" menu. This may be used to constrain the positioning of the nodes.

BUS TRAJECTORIES

To create a trajectory, select "New Trajectory" from the SpaceMap window's "SpaceMap" window.  Then press the "Record" button.  Data will be recorded from the time the mouse button is pressed within the SpaceMap until the button is released.  Trajectories' points have 5 values: x, y, pan, divergence and level.  Only x and y may currently be edited in the time domain.  These additional parameters may be specified in a Bus Trajectory subcue.  

The Bus Trajectory subcue allows you to specify a trajectory along with a set of parameters that manipulate the playback by scaling, offsetting, and iterating the set of trajectory data points.

pan:  pans between two space maps. This allows you to use a SpaceMap for audience level, a SpaceMap for overhead speakers, and pan as a Z coordinate. 

divergence:  when divergence = 0 the space maps works as normal. as you move toward 1.0 more power is sent to all speakers equally. At 1.0 you basically have mono from that bus to all speakers. For example at divergence equals 0.5, half the power is sent to all speakers equally, the other half is distributed to the triset. One possible interpretation of this parameter is distance to a central virtual node. If you consider the space map as a canopy of speakers then divergence = 1 is equivalent to being at a virtual node at the center of the hall that distributes equally to all speakers. Both of the above operations are power preserving. 

level:  This lets you vary the amplitude along the trajectory. When you record a trajectory x and y are recorded and the following values are set for each node:  pan = 0.0, divergence = 0.0, level = 1.0; In time there will be a strip chart editor which will let you draw in curves for pan, divergence and level. 

Trajectory subcues have the following parameters:  

trajectory ID 
map A ID
map B ID (for panning between maps)
x offset
y offset
x scale
y scale
rotation
pan override flag
divergence override flag
level override flag
pan
divergence
level

The override flags tell the trajectory player to use the pan, divergence, or level from the subcue and ignore the value in the trajectory nodes.  The user interface provides controls for x scale, y scale and rotation.

The bus for which the trajectory is played is specified in the Cue library.

CREATING TRAJECTORIES AND BUS TRAJECTORIES SUBCUES

To review, a "trajectory" is a raw vector of positional data points , and a "bus trajectory subcue" is a mapping of a trajectory with parameters such as rate, iterations (0=infinite), offset, and scaling.
1)  In the SpaceMap window, select "New Trajectory"
2)  Press "Record" button. Data will be recorded for the duration of time that the mouse is down.

To create a bus trajectory subcue:
1)  Select the Subcue Library window
2)  Select "New Subcue"
3)  Select "Edit Trajectory Parameters" and complete the dialog box


Subcue lib w parameters.PICT

To put the subcue in a cue
1)  Drag the subcue into the cue library
2)  Set "row" to specify which bus to apply the trajectory subcue to

Bus trajectories may be tested by selecting the desired "row" to test in the Subcue Library and then double clicking on the matrix bus subcue.  Similarly, this can be used to test aux row subcues and matrix row subcues.

PROGRAMMING STYLES

CueStation lends itself well to several programming styles.  The decision of which style to use is based both on the experience of the programmer, and the task at hand.  Styles can be mixed and matched, and may evolve during the course of the production.  Familiarity with the available options will help you choose which style is appropriate for the task at hand.

SEQUENTIAL PRESET APPROACH
This is the quickest way to get going, and may be the most appropriate if a small number of cues will be needed.  In this approach, start up with a basic mix setup, including levels, assignments, delays, and EQs, and make a new cuelist.  

Within the Cuelist window, press F4 to create a new cuelist entry, cue, and capture all the data into the cue.  As changes need to be made, change the mixer settings and create new cuelist entries and cues in the same fashion.

If you have to modify a setting, go back to the cue you want to change, change the mixer values, and "Capture Differences".  This will cause the current cue to be updated.

As you find it necessary, create External Commands and Bus Trajectories subcues and drag and drop them into the cue you want to change.

Advantages of this approach include speed of programming, and ability to "random access" cues in the cuelist, since each cue has a copy of all settings.  This is the easiest way to program, and recommended for new users.

Disadvantages of this approach are that Cues can contain a large amount of data, and may be difficult to quickly glance at in the Cue Library window.  In addition, global changes are only possible by "Recapturing Subcue in Place".  When this is done, the data in a particular subcue is changed, and any references to the subcue will be changed.  This may be useful in some instances; however, you will need to take care to examine cues to determine which subcues are used in multiple cues.

TOP DOWN

This can be useful if you know the structure of your show ahead of time, but don't know exactly what will change in the mix.  In this approach, a cuelist and empty cues are created first and organized into the correct order.  Timecode values and auto-follow times might be assigned as well.

Within the Cuelist window, press F3 to make a new cuelist entry and empty cue, and name it appropriately.  Continue making empty cues and name them in a consistent fashion.  For instance, you might want to prefix "SFX" to the names of all sound-effects only cues, or "TRAJ" to cues where SpaceMap panning moves are planned.

This approach lets you sketch out a rough sequence of events while sitting down with the director.  Sound effects cues (Externals) can be developed and built into the cues before the details of the mix are determined.  Once the mix changes are made, you can either switch to the "Full Preset" approach as discussed above and "Capture All" mix data into the cues, or build up the cues piecemeal from the Subcue library.  This technique can be combined with the "Cue Templates" technique, although in practice this usually won't be advantageous.

BOTTOM UP

Using this approach, you might create a library of sound effects, bus trajectories, and mixer subcues such as matrix subcues first, then organize them into cues by dragging and dropping subcues into the Cue library, and finally bringing the Cues into the Cuelist.  This approach can be useful programming a show that has a large sound effects requirement.

CUE TEMPLATES

You may recall that "Capture Differences" is used to change only the data for which there are subcue types in the current cue.  This technique can be built on to create an efficient means for creating cues that only change certain aspects of the mix data.

You might want to create a "Console Template" cue, for instance.  This cue might only contain input fader, pans, bus assigns, and aux send data.  Whenever you want to insert a cue that only effects the console, you can copy the cue in the cue library without recalling it, make sure the new Console data is appropriate, and then "Capture Differences" to change the data.

Similarly, you could create "Matrix Template" with Matrix row subcues only or "Overall Level Template" with output levels, system level, and aux masters.

To create a template, make a new cue in the Cue Library, and name it appropriately.  Then bring up the Subcue Library window.  Set the "Type" menu to the desired type ("Matrix Row" for instance), and then drag any cue of that type into the Cue library.  Since the data will be ultimately updated with a "Capture Differences", the actual data in the subcue is inconsequential.  Repeat this process for all subcue types.  For certain subcue types (Aux Row and Matrix Row in particular) you will also need to set the "row" value in the Cue Library window.

To use the template, select "copy cue" to make a new cue based on the template.  Then check and adjust all the appropriate settings in the mixer windows.  Finally, select "Capture Differences" to update the cue you just made. 

CUE TEMPLATES EXAMPLE

The following is an example of how to use this technique to make cues that only effect matrix subcues:
1)  Start off with a cue that you have captured all into.  It doesn't really matter what the values are in the subcues.
2)  Duplicate the cue in the Cue Library.
3)  Rename the copy "Matrix template"
4)  In the cue library, delete subcues from "Matrix template" that you don't want to change from cue to cue.  For instance, EQs, Bus assign, etc. In this example let's keep just the matrix rows and output levels subcues.
5)  Adjust the settings in the Matrix window and Output Masters window with your desired settings.
6)  Make a copy of "Matrix template" in the cue library with the "Duplicate Cue" command.
7)  Rename the copy "First Matrix Setting" or whatever
8)  Capture differences into that cue.  This will cause subcues to be created for any subcue that was changed and is defined in the Cue.

If you want, you could go back to the Subcue Library, set the type to "Matrix Row", and rename the subcues appropriately to help you next time you want to use these matrix settings.  This would only be necessary if you want to use the subcues later to create cues "bottom-up" style.

CHANGING STYLES IN MID-STREAM

Reality dictates that no matter what rules you choose to program by, at some point or other you will need to break them and switch styles.  

If you switch from a style dominated by "capture all" to a style where you built up cues in a more piecemeal fashion, you will need to take care to ensure that the cuelist may be navigated in an appropriate way.  For instance, if three cues in a row change input faders and pans, but only the first of these set up the bus assigns, you'll need to execute the first cue before the pans will make sense.

MIXING STYLES:  CONSOLE OR MATRIX?

In essence, the Cuestation software and CASL provide you with three distinct matrices:  aux sends, bus assigns and pans, and output matrix.  The use of aux sends is usually fairly obvious - monitor feeds and effects sends are well suited to the aux matrix.

However, the combination of bus assigns, pans, and output matrix provide two stages at which audio can be distributed.  Sometimes, it may be easiest to assign a single output to a bus, and then use multiple bus assigns and the pan setting to distribute sound from the inputs and outputs.  This has the advantage of being very easy to "read" in the Console window.  At a glance, you can tell just where a sound is going.  However, this has a couple of disadvantages.  First, SpaceMap trajectories are applied to busses, not inputs.  In addition, this method can get unwieldy for systems with more than 16 outputs.  Finally, the relative values between assignments cannot be tweaked as well in the matrix.

Since CASL provides you with 64 mix busses, you might try the following approach.  Reserve some number of matrix busses for single outputs, and ensure that they stay assigned throughout your show.  For instance, assign busses 1 through 8 to outputs 1 through 8.  Use higher number busses for more custom matrix diffusion and SpaceMap trajectories.

This way you can always easily assign an input to a few outputs without using the matrix window, but still have the ability to program more complex diffusions.

STORING DATA IN LD-88 NON-VOLATILE MEMORY AND SCSI

The LD-88 has the capability to store and recall automation data in its internal non-volatile memory or a SCSI drive connected to the LD-88.  The automation data is stored on the host computer by Cuestation in a different format than stored on the LD-88.  Therefore it is difficult to predict exactly how much data may be stored in this way.  However, we have found that files that are about 1 MB or smaller under BeOS may be stored within the internal FLASH RAM of the LD-88.  16 MB are reserved on the SCSI drive for automation data.

The following utilizes the MIDI Commands feature detailed earlier. Before proceeding, check that the "MIDI_Cmds" file is installed in your LCS_Settings folder, and review the "MIDI Commands" description in the Transport Window section.

Although this procedure details how to store to the Flash memory, a similar procedure may be followed to use the disk drive instead.  MIDI Commands are provided to access both FLASH and SCSI.

The "Cue Rec" feature is essentially a data recorder-any data transmitted from CueStation to the LD-88 may be recorded by the LD-88, and then played back upon rebooting.  This can be used to store an entire set of automation data (file) in the LD-88, or to set it up to a default state.  If the show is ultimately controlled by an external show controller or timecode, then the Cuestation software and computer may be extraneous.  Removing the computer from the installation may provide additional security in some cases.

In addition, it may be useful to set the system of LD-88s to a default state.  This could for instance permit the use of the system with a nominal matrix mix and EQ/delay state for certain kinds of functions at a facility.

To store a default state in the LD-88s:

1)  Select "Start Flash Cue Rec" in the "LD-88" menu in the Transport window
2)  Select "Send Configuration" from the application menu
3)  Select "Send all Settings" from the application menu
4)  Select the system level window.
5)  Set the system level to the desired default value. (note--this is because currently the system level is turned down when sending all settings, and not restored to its former value.)

At this point, if you wish to store all automation data in the LD-88s, you could "Resend Project" to retransmit the entire project data.  In addition, you could select a default cuelist, or even recall a cue.  All these actions would be recorded and repeated upon power-on by the LD-88.

6)  Select "Stop Cue Rec" in the LD-88 menu
7)  Select "Boot Cues from Flash" in the LD-88 menu

You're done!

To test this, restart the LD-88s and pass audio, without touching the Cuestation software.

Every time the LD-88 boots up, the system of LD-88s will load these settings.

WARNING--If you load Cuestation software now, and "capture all" it will NOT capture these default settings, because the software on BeOS does NOT know the state of the LD-88s at this time.

MIDI TIMECODE GENERATION

The LD-88 has an internal timecode generator that may be used to generate MIDI timecode out an LD-88 MIDI port.  However a more common use of the timecode generator is to create a timeline to which Cues may be laid out.  This clock may also be used to drive SCSI audio playback, and create standalone program material.

When one LD-88 generates MTC, all LD-88s will receive the clock information and thereby synchronize their cuelist execution.

The Timecode generator is controlled by using MIDI Strings or MIDI Commands.

MIDI Strings are provided for MTCgen-Locate, MTCgen-Play, MTCgen-Stop, MTCgen-Internal, MTCgen-External, and MTCgen-Global.  The latter three commands may be used to set the mode of the clock generator.

If Externals are used to trigger playback, then the MIDI strings should besent from LD-88 # 1 to LD-88 # 1, via the Boxnet port.

A MIDI Command is provided for a quick way to stop the MTC generator. 

SCSI CONTROL

The LD-16S SCSI expansion card can be used to record and play back 16 tracks of audio simultaneously from hard disk. File conversion software and asynchronous track playback are not available yet but we anticipate this being ready Q3 '97.

Audio can be locked to MIDI timecode fed into any LD-88 in the system. Cues may be stored on the hard drive as well. Thus the LD-88 can be booted without a host computer and can be in a "standby" state ready to fire cues from either MIDI Timecode or external MIDI/serial control.

MIDI Commands are provided for the control of audio recording and playback with the SCSI card.  The procedure for storing cues to the SCSI card was described earlier.

The LCS LD-2RD is a dual bay removable drive enclosure for SCSI II drives.

The SCSI card has its own Flash Operating System file associated with it.  Synchronous and asynchronous audio recording and playback are supported.

SYNCHRONOUS AUDIO

Sixteen channels of audio are recorded simultaneously, from the first 16 inputs of the system.  The SCSI card must be installed in the middle slot of an LD-88.  All the following procedures assume that the SCSI card is installed in the first LD-88 of the system.  Input levels and SCSI levels do not effect the recording level.  Take care not to clip inputs when recording audio.

There is no dedicated SCSI record/playback window at this time.  Rather, MIDI Strings (configured as Externals commands) or MIDI Commands (from the LD-88 menu of the Transport window) are used to trigger recording and playback.

Recording will occur exactly 2 seconds after requesting the record to occur.  An external subcue may be used to initiate recording via a Cue recall.  This cue could be placed at a particular SMPTE time in a cuelist in order to trigger recording at a particular input SMPTE time.

Playback may be initiated either with the "Play in 2 seconds" command, or by using a subcue that maps external timecode to an audio range of the drive.  Once this command has been initiated, playback will automatically be mapped appropriately to incoming timecode.

If Externals are used to trigger playback, then the MIDI strings should besent from the LD-88 with the SCSI card attached, to the LD-88 with the SCSI card attached, via the Boxnet port.

The audio playback may be tied to a Phase-Locked Loop (PLL).  If this feature is selected, then playback of audio will speed up and slow down as the incoming timecode source varies.  This feature should only be used for long passages (greater than 15 minutes) or if the external clock source is unsteady.  The audio playback quality is degraded somewhat when the PLL is activated.  The PLL should be activated from an External Subcue using the MIDI strings command.
 
ASYNCHRONOUS AUDIO

Asynchronous  recording and playback  support will allow for the direct digital conversion of AIFF files to SuperNova format.  These files will then be able to be played back instantly by the LD-88 assigned to one of 16 SCSI voices.  The procedure will be quite similar to creating Bus Trajectory Subcues.

A SCSI playback subcue will specity the audio file, sample offset, duration, and SCSI voice number.  This subcue will then be drag and dropped into cues to initiate the scheduled playback. 

EXTERNAL CONTROL OF THE LD-88

LD-88s are controlled via a MIDI Sysex compatible command format.  These commands are interpreted regardless of the electrical interface on the LD-88.

The LD-88 firmware includes the facility to map simple external MIDI commands (received over any serial port or MIDI port) to LD-88 commands.  The most common use of this is to map MIDI notes to transport functions.  This enables inexpensive off-the-shelf MIDI controllers such as the JLCooper BB3, or mixing consoles that generate MIDI events to be used as an external "Go" buttons.

In addition, the contact closure input of each LD-88 may be mapped to an LD-88 message.

Each LD-88 supports 16 mappings of an external event to an LD-88 message.

We have provided MIDI Strings that map the buttons of the JLCooper BB3 to skip-, skip+, Go, Return to Top of List, and Set Manual system level Off.

The most common messages required by an external system for LD-88 control are for recalling cues and setting fader levels.  These are detailed below.
©1997 Level Control Systems Ltd., all rights reserved.


