Welcome to Mobius! Mobius is a tool for the real-time creation and manipulation of audio loops. It was inspired by the venerable Gibson Echoplex Digital Pro (EDP) with Loop IV software. Mobius implements much of the Loop IV functionality, removes some limitations, and adds many new features. Because the EDP is an extremely complex device, I do not have the resources at this time to write a comprehensive user's manual. Instead, I will focus on those aspects of Mobius that are different from the EDP. It is strongly recommended that you either already be familiar with the EDP, or that you study the EDP manual to fully understand what Mobius does.
The EDP manual is available here.
If you are new to looping, Loopers Delight is the best place to explore and learn.
If you find problems, I kindly ask that you report them. The best place to report bugs is the Yahoo discussion group. You can also email me bug reports at jeff@zonemobius.com. Even if you don't find any problems feel free to send me a note letting me know what you liked or didn't like.
If you are a new user, proceed directly to the Getting Started section.
Thank you for helping me make Mobius better! I hope you enjoy it as much as I do.
This section is intended for users that already have experience with an earlier release of Mobius. If you are a new user, proceed directly to the Getting Started section.
The major new features in this release are support for multi-channel audio interfaces, and more options for canceling mute mode.
The standalone version of Mobius can now use all of the channels available on the selected audio interface, previous releases could only use the first two channels as a stereo pair. Channels are grouped into stereo pairs called "ports". For example, if an audio interface has 8 input and output jacks, there will be 4 stereo input and output ports.
Ports are selected in the Track Setup dialog. The selectors labeled ASIO Input Port and ASIO Output Port are used to select the port numbers, each track may have a different input and output port. See the Using Setups for more information.
The Mute Cancel feature first introduced in release 1.26 has been significantly enhanced. Several new cancel modes are now available including Never and Custom. See the section Mute Cancel for more information.
The Slip Forward and Slip Backward can be used to cause the playback position to immediately jump forward or backward by a selectable interval. See the Slip Functions section for more information.
In addition the following bugs have been fixed:
The major new features for this release are concurrent scripts, mono tracks, improved pitch shifting.
Concurrent scripts means that you can have more than one script running in a track at the same time. Previously if you attempted to use a script when there was another one waiting for an event, the first script would be canceled. This will make scripts behave more like built-in functions, and should resolve a number of reported problems related to scripting.
Most of the clicking noises during pitch shifting have been eliminated, though you may still hear some if you are using a keyboard controller and are changing pitches very rapidly (about 16th notes at 120 BPM). There is still however a significant amount of latency added by the pitch shifter, changes in pitch will sound as if they are delayed by about 1/10 second.
Mono track mode allows a track to have a single mono input channel that is then panned in a stereo output field. This is useful for instruments that are inheriently mono, such as accoustic instruments that are not passed through a stereo effects device. Previously such devices would be panned hard left or hard right and could not be moved. See the Using Setups section for more.
MIDI bindings to select Setups, Presets, and MIDI Configurations have been simplified and now work like bindings for functions and controls. Bindings for all configuration objects are now done in the MIDI Control dialog. A third panel labled Configuration contains the names of each configuration object, prefixed by the type of that object (Preset, Setup, or MIDI). This allows you to use MIDI note and control change events to select configuration objects, previously you were limited to using program change events.
To help position display components in the UI, when the shift key is helf down, the components will be erased and only their borders will be drawn. This is especially helpful for components that are often invisible such as the Tempo Display or the Message Area.
The Preset Alert display component has replaced with the Messages component. The preset alert formerly would popup a window whenever the preset changed, because this window would temporarily take keyboard focus, the keyboard would appear to freeze. Presets changes are now displayed in a normal UI component in the main Mobius window, keyboard focus does not change. The component is called Messages and may be selected in the Dispaly Components dialog.
The Restore on Reset parameter has been added to the Track Setups. This parameter lets you define which track parameters will be changed to the values defined in the setup whenever the Reset function is used. If no parameters are selected, the track will stay in its current state after a reset (though all audio content will be lost).
In addition the following bugs have been fixed:
The major new feature in this release is Setups. Setups provide a mechanism to set the initial operating parameters for all tracks including controls like output level and pan, as well as assignments like presets and groups. You can think of it like a "global preset" for quickly configuring the tracks for a particular performance. See Using Setups for details.
NOTE: The default project template concept used in previous releases to assign VST ports and other track parameters is no longer supported. When you upgrade to 1.27 the default project will be converted into a setup with the name "Default Setup". After this conversion the default project will not be used, and you may delete the file "init.mob" in the Mobius installation directory.
Release 1.26 changed the behavior of the functions that control playback direction, rate and pitch so that they do not cancel Mute mode. There were a few users however that preferred the old behavior where these functions will always cancel Mute mode. This behavior may now be controlled with the Mute Cancel parameter. When this parameter is set to Major Modes only functions that change the mode will cancel Mute (the 1.26 behavior). If this is set to Always any function that modifies the loop will cancel mute mode, including the Reverse, Speed, Rate, and Pitch functions (pre 1.26 behavior).
In addition the following bugs have been fixed:
This release includes a number of changes related to the scheduling of functions that affect how the loop is played: Reverse, Half Speed, Rate Shift, and Pitch Shift.
When quantizing, these functions (along with Overdub) may now be stacked on the same quantization point, previously they would be scheduled on successive quantization points. For example, this allows you to enter Reverse and Half Speed mode at exactly the same time by using quantization and calling both functions before the quantization point.
When using the Pitch Shift and Rate Shift functions, we will first look for an existing function event of that type scheduled at the next quantization point. If we find one, we modify the pitch or rate value accordingly rather than scheduling another event. This can be used with the incremental functions like Rate Up and Rate Down to scroll to any desired rate. The last rate selected before the quantization point will be used.
Reverse, Half Speed, Rate Shift, and Pitch Shift functions will now no longer take you out of Mute mode. This can be used to make dramatic changes to the way the loop is played without each change being individually audible.
Finally, the Reverse, Rate, and Pitch functions now have transfer modes in the preset. These modes control how the pitch, rate, and direction are carried forward into the next loop when using one of the loop switching functions. The transfer modes for each function type have the following values:
Until now, Mobius has operated as if the transfer mode was Follow for all function types.
The following new functions have been added:
In addition the features described in this section, see the README file for more information on the bugs fixed in this release.
The most significant new function is Bounce Recording which allows you to capture the output of several tracks, mix them together, and copy the result into an empty track which can then be triggered and manipulated like any other loop.
The new Solo function behaves similar to a solo button on a mixing console. When first used all tracks other than the active track are unmuted. When used a second time, the mute state of all tracks is restored to what it was before the first Solo.
The new Global Mute function mutes all tracks that are currently playing, but does not unmute any tracks that are currently muted. If you use Global Mute a second time, it will restore the previous track mutes, unmuting only those tracks that were playing previously. If you do a Global Mute, then start changing the mute state of tracks manually, global mute mode is canceled.
MIDI control has also been improved. You are now able to store the MIDI channel with a function or controller binding rather than requiring that function events all come in on the same channel. Further, there are now binding scopes for each track and group allowing you to make a MIDI binding to any function or control, and have that binding performed in only one track or group of tracks. See the MIDI Control section for more details.
MIDI device selection has been improved. You may now select any number of input and output devices, and you may select one device to be used a "MIDI through". This allows Mobius to respond to commands sent by different devices that are not connected in a MIDI through chain, and send MIDI synchronization messages to more than one device. If a MIDI through device is selected, all events received from the MIDI input devices will be echoed immediately to the through device. See the MIDI Devices section for more.
Finally a "technology preview" of the Pitch Shifting function is available for the curious. Note though that this is still in development and it has many problems. It is provided only to give you and idea for how pitch shifting will eventually work within Mobius.
The major new feature in this release is Rate Shifting. This allows you to change the playback and recording rate of the loop, similar to the original Half Speed function, but with a full range of rates that correspond to the notes of the chromatic scale.
See the Rate Shifting section for more information.
The major new feature in this release is track groups. Track groups are similar to the existing focus lock feature but more powerful. When tracks are assigned to groups, a function performed in one track can automatically be performed in all other tracks in the same group. MIDI continous controllers may also be bound to a new set of track group controls so that the output level, feedback, and pan of all tracks in a group may be set at the same time.
The way MIDI continuous controllers are assigned has been redesigned and a new concept called Controls has been introduced. A Control is a mobius parameter that may have a large range of values. Controls are bound to MIDI events in the MIDI Control dialog similar to the way functions are bound. All MIDI binding is now done in the MIDI Control dialog and stored in the mobius.xml file, there is no more Tracks dialog that stored MIDI bindings in the project files which was a source of confusion.
If you had previously assigned track controllers in the initial project, these will be automaticaly converted to the new format, but only for the default project. If you have created your own named projects that contain track controller bindings, these cannot be converted to the new format. Send me mail if you need help with the conversion.
A new global parameter named Group and Focus Lock Functions allows you to specify the functions that will obey focus lock and track groups. For example, you may want the Next Loop function to obey track groups, but not the Record or Overdub functions.
See the section Controlling Tracks for more information.
The major new feature in this release is continuous feedback where changes to the feedback level are recorded into the next layer as it is recorded. This differs from the previous behavior where feedback was only applied once for the entire layer when you reached the end of the loop and created a new layer. By allowing feedback to vary continuously, you can "sculpt" the material being copied into the next layer.
Note though that a side effect of continuous feedback is that you can no longer use the "Save Project Layers" option to save just the new material overdubbed in each layer to a file, the layer files will contain all of the material copied from the previous layers as well. If you prefer the old behavior, you can disable layer flattening by checking the new "No Layer Flattening" preset parameter.
See the section Controlling Feedback for full details.
The interface modes Expert, Stutter, Replace, and Flip are now supported. See the Interface Modes section for details.
A number of changes to the scripting language have been made. If you have been writing scripts they may not behave as they did in an earlier release, especially if you have been using Wait statements. Please read the new scripting manual, or post a message to the Yahoo group if you are having a problem using an old script with this release.
This section is intended for users that already have experience with an earlier release of Mobius. If you are a new user, proceed directly to the Getting Started section.
For most upgrades, you may simply install the new version of Mobius into the same directory as the previous version. All of the configuration performed in the previous version will be carried over to the new version.
Occasionally, a release may introduce changes to the user interface that require modifications to the UI configuration. Since we will not overwrite an existing UI configuration when upgrading, what you see in the Mobius UI may not match what is described in the manual if you have made changes to the UI configuration.
If you would like to start over with a UI configuration that matches what is in the manual, before installing the new version rename the file ui.xml in the Mobius installation directory to ui.save. You will lose changes you have made to the button list, display components, and color palette. All other non-UI configuration such as MIDI and audio device selection will be preserved.
You may also keep your current UI configuration and manually add the new components. After the install, bring up Mobius and select the Display Components item from the Configuration menu. There may be new components on the left side of the Components selector that may now be displayed. See the section Configuring the Status Area for more information.
Note that when selecting a display component that has never been selected before, it will usually be drawn in the upper left corner of the Mobius status area. You will normally want to move this to another location by holding down the Shift key, then clicking and dragging the left mouse button over the new component. If you already have a component near the upper left corner, the new component may be hidden and you will need to move the existing components before the new component is visible and can be moved.
Some components, such as Minor Modes and Synchronization are not always visible. The Minor Modes will only be visible if the Overdub, Reverse, or Half-Speed modes are active. The Synchronization component (displays the MIDI tempo) will only be visible if MIDI clocks are being received. Before you can move these components you will have to make them visible.
Release 1.24 made major changes to the way MIDI events are bound to functions and controls. Among the changes are:
Mobius will attempt to upgrade your current MIDI function and control bindings to the new format. There is one case however where this may fail. If you currently have the Mobius global channel set to "Omni" Mobius will assume that all of your bindings will use MIDI channel 1. If you have been using Omni, but sending events on a channel other than 1, you will have to modify your MIDI bindings after the upgrade to set the desired channels. If all bindings will use the same channel, the easiest thing to do run the old version of Mobius before you install the new one, and select this channel as the global channel in the MIDI Control dialog. Then after you install the upgrade, this should channel should be automatically assigned to all of your bindings. If however you are using events on several channels, you will have to manually edit each MIDI binding after the upgrade and assign the desired channel.
There will be no upgrade path for the "track channel" feature, because I don't think anyone actually used it. If you do, post a message to the Yahoo group or send me private email and we'll discuss how to proceed.
The External EDP feature has been changed such that you no longer select a MIDI output device. Instead you must first select a general purpose MIDI Through device. See the MIDI Control section for details on how to select a through device.
There is a new color in the palette used in the loop meter when the track is muted. Releases prior to 1.16 do not have this color defined in the palette and since the UI configuration is not replaced on an upgrade, the color will default to bright blue and will not appear in the Palette window. To make this color appear so that it can be changed, you will need to edit the ui.xml file contained in the installation directory.
Locate the <Palette> element, and add the following line somewhere inside it:
<PaletteColor name='muteMeter' key='613' rgb='16711680'/>
Mobius must not be running when you make this change. The next time you start, you should see "Mute Meter" appear in the color palette.
After launching Mobius, you should proceed immediately to the Configuration menu and select the Audio Devices item. Here you must select an input and output device.
You should select an ASIO device if one is available for your sound card. This will provide the lowest possible latency and make Mobius feel more responsive.
NOTE: The standalone version of Mobius cannot currently access all of the channels in a multi-channel audio device, it can only use the first two channels. If you need access to all channels, you will have to run Mobius as a VST plugin, and route device channels to Mobius tracks in the host application.
NOTE: There is an ASIO device on my system named Adobe Default Windows Sound that does not appear to work very well. If you have this, I don't recommend that you use it, in my experience the device advertises extremely high latency values.
If you do not have ASIO devices, you may select either MME or DirectSound devices. These will both have higher latency than ASIO. Mobius compensates for latency so it is still quite usable, though you will occasionally hear "skips" in audio playback after certain events.
At the bottom of the dialog you will see a field labeled Suggested Latency Milliseconds which will default to 10 for ASIO devices and 100 for other devices. This is the latency we request when opening the device, though the device may not obey it. You may experiment with lowering this value, but if it is too low you may have audible "clicks" during playback and have "dropouts" during recording.
The primary factors that determine what the lowest latency can be are the operating system, CPU speed, and sound card. A relatively recent machine (4 years or less) running Windows XP or 2000 will perform best. Windows NT is the worst, with Windows 98 somewhere in between. DirectSound devices may allow lower latencies than MME devices, though not dramatically so.
The default latencies are average for a modern machine. If you are running NT, you probably need to increase MME/DirectSound suggested latency to 200 or more. ASIO devices are not usually sensitive to the operating system, so 10 is a reasonable starting point for all.
Below the suggested latency field are fields labeled Override Input Latency Frames and Override Output Latency Frames. Leave these alone for now. If you feel that overdubs aren't being aligned properly, you will need to adjust how Mobius performs latency compensation by setting these values. See Latency Calibration for more information. You normally don't have to set these values when using ASIO devices.
You should next proceed to the Configuration menu and select the MIDI Devices item. A dialog will appear allowing you to select an input and output device. If you want to control Mobius with a MIDI controller such as a foot switch or expression pedal, you will need to select an input device.
You only need to select an output device if you want Mobius to send synchronization messages.
Once you have devices configured, send an audio signal to your sound card. You should see a narrow horizontal rectangle in the center of the screen flickering according to the level of the signal. This is the Audio Meter. If you don't see any movement in the audio meter, check your connections or try a different audio device.
When Mobius is receiving audio, press the R key to begin recording. Play something, then press R again to stop the recording and begin looping. Mobius is not smart about compressing signals to avoid digital overload, so if you notice distortion, lower the signal level.
NOTE:One common error when setting up a software looper is having the audio output of the looper feed back into the input. For example, it is common to have several sound sources connected to a mixer, then have the mixer output connected to the input of the sound card. If the output of the sound card is also connected to the mixer, you can have feedback. When Mobius is overdubbing, anything that is currently playing may then be included in the overdub (with a slight delay). The loop will become increasingly louder and sound "metallic".
If the output of the sound card is connected directly to the speakers this should not be a problem. If you are using a mixer, you will have to find a way to exclude the channel containing the sound card output from the "bus" being sent to the sound card input. If you have a Mackie, Mute Alt 3-4 combined with Control Room Source buttons can accomplish this nicely.
If you've created a loop and it plays back without distortion then you're ready to proceed. If not, drop me a note and we'll try to figure out what's happening.
Mobius may be run either standalone or as a VST plugin. Plugins are physically DLL files, the name of the Mobius plugin DLL is, surprisingly, mobius.dll and may be found in the installation directory (usually c:\Program Files\Mobius).
If your VST host application supports more than one plugin directory (many do not) configure it to include the Mobius installation directory. If the host allows only a single directory, you will need to copy Mobius.dll into that directory. One common convention is to use c:\Program Files\VstPlugins as a shared plugin directory though that is not always the case. Look to see which directory the VST host is using before copying Mobius.dll. You only need to copy the one Mobius.dll file, leave everything else in the Mobius installation directory. The Mobius installation program will automatically copy Mobius.dll to c:\Program Files\VstPlugins if it exists, so if that is the directory you normally use for plugins, you should not need to do any further copying.
After copying the DLL or adding Mobius to the host's search path, you may need to ask the host to "rescan" its plugin directories. Some hosts may do an automatic rescan automatically each time they are started, others do not.
Note that unlike most VST plugins, Mobius opens two windows. The first is a small window containing a blue oval that is under control of the VST host, this is called the VST editor window. The second is the main Mobius window. I wanted more control over the main window, such as the ability to resize it after changing the display configuration, and giving it a menu bar. You cannot resize a VST editor window, or give it a menu bar.
The VST editor window will contain UI components that the host creates, often there is one to select a "preset". These components are not currently recognized by Mobius. You must do all of your interaction in the main Mobius window. If you close the main window, you can open it again by clicking on the blue oval in the VST editor window.
Audio devices selected for Mobius in standalone mode will not be opened when running as a VST. The VST host must open the audio devices and route them to Mobius.
Mobius normally receives MIDI events directly from the VST host so it is not usually necessary to configure MIDI input or output devices if all you use is the VST plugin. See MIDI Devices for information on some special cases where Mobius may need to open its own MIDI devices.
The Monitor Audio Input global parameter is usually checked when running as a VST. This allows you to monitor the input signal being sent to Mobius which may have passed through other plugins. See the Global Parameters section for more information. When input monitoring is turned on, you should disable any monitoring you may be doing with an external mixer or with the sound card. If not, you may hear a slight "flanging" sound because the signal passing through Mobius will be delayed slightly from the signal being sent to the sound card. Because of latency, it is really only practical to enable input monitoring if you are using ASIO drivers.
If you are using a VST host that displays more than one input and output port for the plugin, you may assign each Mobius track to a different port. Hosts that expose multiple ports include Bidule, Audio Mulch, Energy XT, and Live.
Assigning tracks to ports provides several useful performance options, such as having some tracks take input from a soft-synth rather than live audio. You may also insert a different effects plugin after the output of each track, making each track sound different even though they are driven by the same input signal.
The plugin provides 8 stereo input ports and 8 stereo output ports. VST ports are assigned as part of a Track Setup see the Using Setups section for details.
Mobius uses MIDI devices in three ways:
Mobius has two different operating modes: as a standalone application, and as a VST plugin. Each mode has different requirements for MIDI devices.
In standalone mode you almost always select at least one input device so that Mobius may be controlled, usually by a footswitch. You may also select one or more output devices if you want to use the external synchronization features to control a drum machine. Selecting a through device is uncommon, but may be used in cases where the MIDI input contains commands for Mobius and one or more other devices that can receive them from the through device.
In VST mode, you often do not need to open any MIDI devices, instead the VST host opens all of the devices. Mobius receives MIDI events from the VST host and does not care which device they came from. If you want to use external synchronization however, it will be necessary to have Mobius open one or more output devices even when running as a plugin. This is because most VST hosts do not recognize MIDI clocks generated by a plugin. Selecting a through device in a VST plugin is uncommon but provided for advanced routing.
NOTE: When running as a VST plugin, it is very important that you do not let Mobius open any of the same MIDI devices that the VST host is opening. This can cause conflicts since neither Mobius or the host knows the other has already opened the devices, which can cause the VST host to crash when you open and then close the Mobius plugin. It is usually safe to let Mobius and the host open the same MIDI Yoke device, but not a hardware MIDI device.
Because there are different device requirements for standalone and VST modes, Mobius allows you to specify two different sets of devices. When you open the MIDI Devices... dialog, there will be two columns of device selection panels. The column on the left selects devices for standalone mode, and the column on the right for VST mode.
You may select any number of input devices, any number of output devices, but only one through device. If you select a through device, all events received on all input devices will be passed immediately to the through device. If you select more than one input device, Mobius will receive commands from all devices. If you select more than one output device, MIDI synchronization messages will be sent to all of them at exactly the same time.
The through device may be the same as one of the output devices.
Before diving into the details, let's review a few fundamental EDP concepts and define some extended Mobius concepts.
The Mobius UI is functional though a bit crude. It is built upon a UI toolkit that I'm developing because MFC and ATL make me ill. Another goal is that the toolkit be machine independent to assist in porting to the Mac though that won't happen for awhile. Don't worry if you don't understand what any of this means, just be aware that the Mobius UI will feel a bit different and look rather plain compared to other Windows applications. The UI will continue to improve, I've just been focusing more on the looping engine than flashy graphics.
The Mobius window is divided into three areas. The button area at the top is where the configurable function buttons are arranged. The status area in the center contains several components that display the status of the loop and the current parameters. The track area at the bottom has controls for each of the tracks.
The button area may contain any number of function buttons. All of the EDP "Direct MIDI" functions, and all of the extended Mobius functions may be assigned a button. To perform a function assigned to a button, simply click on the button. If the function name begins with "Sustain" this is a sustained function, the function will be active as long as the mouse button is pressed.
To configure buttons, pull down the Configuration menu and select the Buttons... item. A dialog box appears with two large panels containing function names. The panel on the right contains the functions that will have buttons in the UI, the panel on the left contains the functions without buttons. In the center is a column of buttons that move functions between the panels. Function buttons will be displayed in the order in which they appear in the right panel.
To add a button, select a function in the left panel by clicking on it, then click on the button labeled >. To remove a button, select a function in the right panel and click on the button labeled <. The button labeled >> will move all of the functions to the right panel, and oddly enough the button labeled << will move them all to the left.
I personally don't find the >> button very useful, but hey, you be the judge. Mobius isn't smart about resizing the window if the number of buttons starts to crowd the other areas, so if the track area is overlaying part of the status area, make the window taller. Mobius will remember the window size in the UI configuration file. If you want to control Mobius exclusively from the keyboard or MIDI, then you may remove all the buttons to reduce display clutter.
Functions may also be activated by pressing keys on the computer keyboard. To bind buttons to keys, pull down the Configuration menu and select the Keyboard Control... item.
The panel on the left contains a list of all of the functions, with the current key binding displayed along the right margin. To change a key binding, highlight a function name by clicking on it. The current key binding, if any, will be displayed in a text box to the right of the function list.
To change the binding you may type the name of the key in the text box, though it is much easier to enable key capture. Enable key capture by clicking the checkbox under the test field. Now, any key you press will be entered into the text field and bound to the function.
You may also assign functions to keys combined with the Shift, Control, and Alt keys. For example "C" and "Shift-C" may reference different functions. More than one modifier may be used, for example "Ctrl-Shift-C", "Ctrl-Shift-Alt-C". Go nuts.
The "Caps Lock" key is not recognized as a shift modifier and cannot be bound. The "Print Screen" and "Num Lock" keys cannot be bound. The right "Windows" key may be bound, but cannot be used as a key modifier. The left "Windows" key may also be bound but I don't recommend it since Windows will popup the start menu whenever this is pressed.
The keys in the number pad will have different names depending on the state of the "Num Lock" key. If Num Lock is down, the keys will appear as "Num 0", "Num 1", etc. If Num Lock is up, the keys will be duplicates of the arrow and page keys. Keeping Num Lock down will provide you with more unique keys to bind. The keys in the number pad are different than the number keys in the row above the letter keys. For example, "1" and "Num 1" may be bound to different functions.
If the key is bound to a sustained function, the function is active for as long as the key is pressed.
A window containing a summary of all the key bindings may be displayed by pulling down the Help menu and selecting the Key Bindings item. This is what Windows calls a modeless dialog meaning that you can leave it open while you return to the main Mobius window.
A track in Mobius is like stereo EDP. Each of the tracks has independent feedback and output levels and may be set to a different preset. You may build up a loop in one track, then switch to another track and build up another loop. Tracks play simultaneously.
Each track is represented by a column of controls arranged in a row at the bottom of the display. One track is considered the active track and will be displayed with a white border. You select a track by clicking on or near the knobs for that track, or by using the left and right arrow keys. The active track has input focus meaning that it will respond to functions initiated by buttons, the keyboard, or by MIDI.
Most functions will only be performed in the active track. A few functions, known as global functions, will affect all tracks. For example, a General Reset performed in one track will not affect other tracks, but a Global Reset will perform a General Reset in all tracks.
The small round button at the top of each track column is the Focus Lock Button which will turn red when clicked. When focus lock is on, it means that the track will respond to button, keyboard, or MIDI events even if it is not the active track. This can be used to create or modify several tracks at the same time. A more powerful option for controlling multiple tracks is described in the Track Groups section.
Three circular knobs control feedback, output level, and pan position. To change the value of a knob, click and hold the mouse inside the knob and drag the mouse up or down or left and right. I recommend configuring two MIDI pedals to control output and feedback instead. If you are among the legion of FCB1010 owners, you will want to do this.
The first rectangle at the bottom of each track column displays the progress of loop playing in this track. It is a smaller version of the loop meter in the main status area. The second rectangle is the output level meter, it will fill with color according to the strength of the audio in this track.
At the bottom of the track strip is some empty space in which the track group will be displayed when one is assigned. See the section Controlling Tracks for more information on track groups.
See the section Using Presets for more information on selecting presets for each track.
See the section Using Setups for more information on initializing all tracks.
NOTE:If you have several loud tracks playing simultaneously, it is easy to cause digital clipping, which sounds very nasty. Mobius is not smart about compression. If you experience this, turn down the output level in one or more tracks.
The status area contains several components that help you understand what is happening in the active track.
On the far left is a column of rectangles called the Loop List that represent the number of loops in the track This is a visual representation of the parameter the EDP calls "MoreLoops". A track may have up to 8 loops, but only one of them will be audible. The top rectangle represents the first loop, the active loop will be highlighted.
Next to the loop rectangles are the Dynamic Parameters which display a selection of parameters from the current preset. You may change dynamic parameters while Mobius is running, but these changes are not stored in the preset. They will be lost when you exit Mobius or select a different preset. To make permanent changes to the presets see the Using Presets section.
One of the dynamic parameters is considered the active parameter and will have a white rectangle around its value. Using the default key bindings, you can set the active parameter using the 8 (up) and 2 (down) keys on the number pad. Be sure that Num Lock is on. To change the active parameter value use the 4 (left) and 6 (right) keys on the number pad. Use the 5 key on the number pad to restore the original value stored in the preset.
To the right of the dynamic parameters are the Counter, Audio Meter and Loop Meter. The Counter is arranged somewhat like the LEDs on the EDP. The large numbers in the center show the loop position in seconds. The small number on the left is the number of the current loop. The numbers on the right indicate the current cycle and the total number of cycles in the loop.
When MIDI clock synchronization is being received, the tempo of the MIDI clocks will be displayed above the counter.
The Audio Meter fills with color in response to the strength of the signal present in the selected audio input device.
The Loop Meter fills with color to show the playback position within the loop. Under the meter, white markers will appear wherever a quantized event will be performed. Above the name of the event will be a small white triangle. If the triangle is pointing up, the event will happen in the current loop at that position. If the triangle is pointing to the right (or left if going in reverse), the event will happen in a later repetition of the loop.
When a user initiates a function, Mobius schedules one or more events to perform the operations required by that function at the right time. Most functions, such as starting a multiply, schedule a single event. Ending a multiply is an example of a complex function, it will schedule both a Record End event to stop recording when Round Mode is off, and a Multiply End event to finally end multiply mode. There are also many other events that are not displayed related to playback transitions and latency adjustments.
To the right of the loop meter is a set of three adjacent circles called the Blinkers. The first circle flashes each time playback reaches a sub-cycle boundary, the second circle flashes on cycle boundaries, and the third circle flashes on the loop boundary.
To the right of the blinkers is a word indicating the current mode. When the loop is in reset, "Reset" is displayed, during multiply mode "Multiply" is displayed etc.
Above the blinkers and the mode may be text that indicates that the overdub, reverse, or half speed modes are active. These are referred to as minor modes and will remain active even when the major mode changes.
Across the top of the status area is the Layer List, this is a horizontal row of yellow rectangles representing the layers in the current loop. A layer is created whenever you make a modification to the loop during playback, or whenever a loop plays to the end with feedback less than 100%. You won't see the layer list until you complete the first recording. When you use the Undo function, you will be returned to the previous layer, if there are no more layers to undo, you will enter Reset mode.
Like the EDP, Mobius will not create a new layer unless there was an audible or structural change to the loop. So if for example you leave overdub on, but don't play anything new, no new layer will be created.
If you don't happen to like the layout of the status area, you can remove components you don't want, and change their position in the window.
To change the position of a component, move the mouse over it then press and hold the Shift key while pressing and holding the left mouse button. You can now drag the component to a new location. To assist in moving components, when the shift key is pressed, the components will be erased and only their border is drawn. This is is useful for components such as Tempo Display that are normally invisible.
To add or remove components, pull down the Configuration menu and select the Display Components item. A dialog appears with four selection controls. The controls behave like the controls for displaying buttons described in the Using Buttons section. Select the items you want displayed in the left panel and click the > button, or select the items you want removed in the right panel and click the < button.
The first selector labeled Components determines which major components will be displayed in the status area.
The second selector labeled Dynamic Parameters determines which preset parameters will be displayed. The parameters will be displayed in the order they are selected in the right box, so if you want them in a particular order, clear the selection with the << button, and add them one at a time in the desired order. The parameters will only be displayed if you also have Parameters selected in the Components selector at the top.
The third selector labeled Main Track Controls determines which track knobs will be displayed in the common track control strip which is normally on the right side of the Mobius window. This will be visible only if Track Controls is selected in the Components selector.
The fourth selector labeled Track Strip Controls determines which track knobs will be displayed in the track strip at the bottom of the Mobius window. The same sub-components are available for both the track strip and the common track strip. If you like large cluttered windows, you can disable the shared Track Controls component and duplicate all the track knobs in the bottom track strip.
NOTE: There are some display bugs that may cause the display to draw incorrectly after the Track Strip Controls list is modified. You should restart Mobius whenever this list is changed.
A preset is a named collection of parameter values. On any given track, one preset is active and each track may have a different active preset. You may activate a preset by selecting an item from the Presets Menu, by selecting a preset within the Presets configuration dialog, or by sending a MIDI program change message. When you select a preset, the preset name will be displayed briefly in a popup window over the main Mobius window.
To define a preset, pull down the Configuration menu and select the Presets... item. At the top of the dialog is a row labeled Selected Preset containing a pull down selection list and a pair of buttons. When you select a preset from the list, the values of the other fields in the dialog change to reflect the values stored in that preset. The preset is also made the active preset for the active track.
To define a new preset, click the New button. A copy of the currently selected preset will be made and added to the list. The preset will be given an initial name of the form Preset n where n is a number. Unless you like ambiguously named presets, you will want to change the generated name. The second row labeled Name has a text field where you may enter a name of your own. Note that this name will not be shown in the pull down list until you save the preset.
Under the name field is a row labeled Program Change containing a text box where you may enter a number from 1 to 128, another pulldown menu labeled Channel where you select a channel number from 1 to 16. When Mobius receives a MIDI program change with this channel and number, the preset will be selected. If the program change field is empty, this preset cannot be selected with MIDI.
Under the program change field are a variety of other fields for the preset parameters. These are described in more detail in the Parameters section. When you have made the desired changes, click the Save button. If you wish to discard the changes, click the Cancel button.
After having created one or more presets, you may delete a preset you no longer want by selecting it and pressing the Delete button. The next preset in the list is then automatically selected.
A track setup is a named collection of track parameter values. They are used to define an initial state for all tracks before recording, and also define the state the track each will return to when it is reset. The following parameters may be specified for each track:
In addition you may designate which track should be the active track after a global reset.
You may have several track setups designed for different performances. Setups may be selected from the Track Setups... menu or with a MIDI program change.
When a setup is selected, all tracks that are currently empty will be modified to have the parameters defined in the setup. Tracks that are not empty will not be modified. When a track is reset with either the Reset or GlobalReset functions, it will be modified to have the parameters defined in the setup if they have been changed.
If all tracks are empty when a setup is selected, the active track is also changed to the one specified in the setup.
A common application of track setups is to configure a mix using different Output Level and Pan values for each track.
Once a track has been reset to the state defined in the setup, if you use the Reset function again in an individual track to toggle between the state defined in the setup and the default track state. In the default track state, most controls are at 100%, Secondary Feedback is at 0%, Pan is centered, Focus Lock is off, and there is no group assignment.
If the Mono option is checked, the track is configured to assume that there is a single channel input signal that is then panned between the two output channels. This is a "true" pan, unlike the usual pan that is simply controls the levels of the left and right channels. Note though that there are still 2 input channels for every track. Each channel will be combined before panning.
At the bottom of the dialog is a multi-select field labeled Restore After Reset. The field contians the names of some track parameters that are stored in the setup. When one of these parameters is highlighed, its value will be restored to the value set in the setup after the Reset function is used.
Some users like to have the track return to an initial state after a Reset, others prefer it to be left in its current state. This parameter gives you control over which track parameters will be changed. If no parameters are selected, the track will stay in its current state after a reset (though all audio content will be lost). Many users prefer to have the track level controls (Input Level, Output Level, Feedback, Pan) return to the values defined in the setup, but want focus lock and group assignments to stay the same.
The ASIO Input Port and ASIO Output Port selectors are used to select which port of the audio interface is to be used as the input and output of the track, when Mobius is running standalone. The number of ports is determined by your audio interface. Ports correspond to a stereo pair of channels on the audio interface. If for example your audio interface has 8 input jacks, there will be 4 input ports. Port selection is only available if you are using an ASIO driver for the audio interface.
The VST Input Port and VST Output Port selectors are used to select ports when Mobius is running as a VST plugin. Each port corresponds to a stereo pair of "pins" on the plugin. Some hosts will display pins visually and allow you to draw lines to connect them. Other hosts may display the port names in a menu. Not all hosts support plugins that have more than one pair of input and output pins.
Previous sections have described ways to bind Mobius functions to computer keyboard keys and UI buttons. Functions may also be bound to MIDI program change, note, or control change events. The behavior of the function is always the same, regardless of how it was initiated.
Besides functions, Mobius also supports a set of Controls which may be given MIDI bindings. Controls are used for parameters whose values vary over a large range, the following table lists the available controls.
Controls are almost always bound to MIDI continuous controller numbers, though it is also possible to bind them to MIDI notes. When using note bindings, the velocity of the note determines the controller value.
In addition to functions and controls, each of the configuration objects (Presets, Setups, and MIDI Configurations) may also be given a MIDI binding. The configuration object will be activated when the associated MIDI event is received.
To define MIDI bindings, pull down the Configuration menu and select the Midi Control item. Mobius supports the definition of several Midi Configurations which contain different bindings.
The ability to dynamically select MIDI configurations was developed for controllers such as the Ground Control Pro, which have a global set of "instant access" buttons plus a row of buttons that send program changes. Since the instant access buttons always send the same MIDI events, you can change their behavior by defining several different MIDI configurations, and selecting them with the program changes. This might also be useful if you have performance situations that require using different controllers.
The Selected Configuration. field has a pull down menu of all the current MIDI configurations. To the right of the pull down menu are a pair of buttons. The New button will add a new configuration by making a copy of the current configuration and generating a unique name. The Delete button will remove the current configuration from the list.
The Name field has a text box where you may change the name of the selected configuration. Note that the new name will not be reflected in the pull down menu until the you save by clicking Ok in the window.
Below the Name field are three list boxes labeled Function, Control, and Configuration. When you select a name in any of these boxes it will become selected and turn red. The current binding for the selected item will be displayed in the fields below the Control selector. Once a field is seldcted, you may specify a MIDI binding by manually changing the Scope, Type, Channel, and Value fields.
The most efficient way to assign MIDI bindings is to let Mobius automatically assign MIDI events sent from an device. Any MIDI events received by Mobius are displayed in the box at the bottom of the window. If you check the MIDI Capture box, the Type, Channel, and Value fields will automatically be set according to the MIDI events being received.
A MIDI Binding is defined in one of several scopes, selected with the pulldown menu labeled Scope. The available scopes are:
Each of these scopes may have a completely different set of MIDI bindings. Most bindings are made in the Global scope. Global bindings affect the active track, any track that has focus lock, and any track that is in the same group as the active track. This is where most of the function bindings are defined.
If you make a binding in one of the 8 track scopes, it will only affect that one track. If you make a binding in one of the 4 group scopes, it will only affect the tracks that are currently a member of the group.
Track and group bindings are most useful if you have a MIDI control surface or keyboard with lots of programmable knobs and sliders. One common application is to assign a different MIDI continuous controller to the Output Level in each track scope, giving you direct control over the level of each track, such as you would with a mixing console.
Track scope function bindings are useful for functions like Mute and Solo.
Group scope bindings affect only the tracks in the group. The Output Level control in a group scope behaves in a special way by maintaining the same relative levels of the tracks in the group. For example if one track is at level 127 (max) and one at level 100, decreasing the group level by 10 to will lower the level of the first track to 127 and the second track to 90. This allows you to set up a mix of tracks in a group, then fade the entire group in and out using a group controller while maintaining the original mix.
Note that unlike Mobius versions before 1.24, we now store the MIDI channel with the MIDI binding. This means that note 24 on channel 2 and note 24 on channel 6 can do different things.
Also note that it is possible to have the same MIDI event bound to different things in different scopes. For example, "note 42 channel 3" may be bound to Record in global scope and Reverse in Track 1 scope. In this case both functions will be performed when this MIDI event is received.
The Max Track Groups field lets you select how may track groups to support up to a maximum of four.
There are a few parameters that affect the operation of Mobius regardless of which Preset or MIDI Configuration is active. These are called global parameters. To set global parameters, pull down the Configuration menu and select the Global Parameters... item.
Mobius provides several options for saving and loading audio content. You may save or load individual loops as well as projects containing all layers in all loops in all tracks.
To load an individual loop, select a track, and use the Next Loop, Previous Loop or numbered loop trigger functions to select the target loop. If the AutoRecord option is on, recording may begin but it will be canceled during the load. Once the track is selected, pull down the File menu and select the Open Loop item. A standard open file dialog will be displayed, navigate to the directory containing the file you want to load and select it. Mobius can only load Windows wave files having the .wav extension.
The target loop will be reset before the loop is loaded. After the loop is loaded, the track will be in pause mute mode. The loop will begin playing from the beginning as soon as you perform the Mute function to bring it out of mute mode.
If you don't have any wave files handy, Mobius includes one you can experiment with. From the Open Loop dialog, navigate to the samples subdirectory of the Mobius installation directory (normally c:\Program Files\Mobius\samples) and select the file named gcloop.wav. No, this isn't me, I assembled it from a commercial loop library. This one is fun to use with subcycle quantized unrounded multiply. Splice out a bar, then undo back to the full loop, splice out a different bar, repeat!
To save an individual loop, select the track and the loop you want to save, pull down the File menu, and select the Save Loop item. A standard Save File dialog will appear, navigate to the directory where you want to save the loop, and select or enter a file name. Mobius can only save Windows wave files.
The quick save feature allows you to save the current loop to a file without having to interact with a dialog window. This is handy if you build a loop you would like to remember, but don't want to put down your instrument in order to interact with the computer.
A quick save may be performed by pulling down the File menu and selecting the Save Quick item. While you don't have to interact with a dialog window, you still have to select the menu item. A more interesting way to perform a quick save is by binding a button, key, or especially a MIDI event to the Save Loop function. You could for example bind the Save Loop function to a button on a MIDI foot controller, whenever you build something interesting just pounce on the button and the loop will be saved.
By default, the saved loop files are stored in the Mobius installation directory with the base name mobiusloop plus a number to make it unique, for example mobiusloop1.wav, mobiusloop2.wav etc. Every time you perform the Save Loop function, a new unique file name is generated by adding one to the highest numbered quick save file in the directory.
You may change the directory and base file name for quick save files by pulling down the Configuration menu and selecting the Global Parameters item. In the dialog, the field named Quick Save File may be set to a file system path including the base file name. For example:
c:\mystuff\mobius\quicksave
Files will be saved in the c:\mystuff\mobius directory with the name quicksave plus a number to make the name unique. For example quicksave1.wav and quicksave2.wav. Do not specify a number or the .wav extension in the global parameters dialog, these will be added automatically.
If you perform a quick save into a directory that already contains quick save files, Mobius will probe the directory to find the highest file number it must use in order to generate a unique file name. This ensures that a quick save will not overwrite an existing quick save file made during a prior Mobius session.
A project is a collection of files that contain the complete state of Mobius at a moment in time, including the audio content of all loops in all tracks. You can use projects to capture a complex collection of loops that have just been improvised, or to define a set of background loops for a new performance.
To save a project, pull down the File menu and select the Save Project... item. A dialog appears requesting you to select a Mobius project file. It may take several seconds to save the project. During that time try not to perform any functions, or the project may be saved with loop changes you did not intend.
To load a project, pull down the File menu and select the Load Project... item. Again, a dialog appears requesting you to select an existing Mobius project file. When you load a project, a Global Reset is performed, meaning that all of the current loops and tracks will be lost.
A project actually consists of several files, a single project file with the .mob extension, and one or more .wav files containing audio content. If you have a complex collection of loops and tracks, there may be many files in a project. If so you may find it convenient to keep each project in a separate directory.
As an example, assume we've saved a project named "myproject" that has two tracks, each with two loops. The project files that would be saved are:
myproject.mob myproject-1-1-1.wav myproject-1-2-1.wav myproject-2-1-1.wav myproject-2-2-1.wav
The files containing audio are suffixed with three numbers. The first is the number of the track, the second is the number of the loop within the track, and the third is the number of the layer within the loop. Depending on how the loop was constructed, the layer number will usually be different than 1.
The project .mob file contains the information necessary to reconstruct Mobius state from all of the audio files. See the XML Files section for more on the contents of this file.
If the global parameter Save Project Layers is set, then a loop's layer history is also stored in the project. See the Global Parameters section for more information on setting this parameter. When layers are saved, more than one .wav file may be saved for each loop, for example:
myproject-1-1-3.wav myproject-1-1-2.wav myproject-1-1-1.wav
As mentioned earlier, the third number in the file name is the layer number. These will be random numbers, though the most recent layer will usually have a higher number. Saving layers may be interesting if you use undo as a performance technique, and you want to start with a complex loop, and undo back to something simpler. I use this during testing, but find it to be of limited practical use since it can require a large amount of disk space if the loop length is long and you have a lot of layers.
In addition to the audio content, the project will also save the selected MIDI configuration, the selected presets in each of the tracks, the selected track, and the selected loop within each track.
NOTE: When you save a project with the same name as an existing project, all of the wave files in the existing project will be deleted first. This is necessary to avoid "garbage files" if you remove tracks or loops from the project. This will only occur however if the file is contained in the same directory as the project file. This is so you can add files to a project from a sample library and not have those files be deleted when the project is deleted.
In addition to audio files, the project also includes the current settings for each track including the selected preset, feedback, output, and pan values. A project template contains all of these track settings, but not any of the audio content. Creating a project template can be useful if you want to have different configurations for different performances, but don't want to start with any initial audio content. To save a project template, pull down the File menu and select the Save Project Template item.
In this section we will list all of the Mobius functions and provide a brief description of how these differ from the EDP. If there is a corresponding EDP function, and the function is said to be implemented, then you can assume it will behave like the EDP (assuming of course I have interpreted the manual correctly).
Let's start with a list of EDP functions Mobius definitely does not implement.
I will eventually implement Loop Windowing, TempoSelect, and some of the long presses. Things related to "beat sync" are not really relevant for Mobius since everything must be controlled through MIDI. MIDI control over parameter values may be useful but I would prefer the ability to directly bind MIDI continuous controllers to parameters rather than virtually pushing the EDP parameter buttons.
This list contains a collection of things described in the manual that are also not implemented, but they're not exactly functions.
Event "gravity" refers to the EDP's behavior of quantizing events back to a previous quantization boundary rather than moving to the next one if you are within a few milliseconds of the last boundary. In my testing, I have not been in many situations where I felt this was needed. I'm interested in hearing from anyone that has come to rely on this. A Mobius feature that may lessen the need for this is that you can "stack" more than one quantized event. For example, if you want to go into reverse and half speed at the same time, turn quantization on and perform the Reverse and Half Speed functions. You will see them stacked on the same quantized frame.
BUG: This doesn't work as intended, the second function will be quantized to the next boundary, which is consistent with the way quantized SUS functions work. These may both be useful behaviors, but are probably function specific. It makes sense to stack non-destructive functions like Reverse and Speed with one destructive function like Insert or Multiply, but it doesn't make sense to stack two destructive functions, the first one will have no effect.
You can assume that the following functions behave in the same way as the EDP excepted as noted. Please let me know if you find otherwise.
This section describes new Mobius functions that are not found in the EDP.
The Slip Forward and Slip Backward functions allow you to instantly move the playback position forward or backward. The effect is similar to a Retrigger, except that you have more control over where the new playback position will be.
The amount of slippage is determined by two preset parameters: Slip Mode and Slip Time. The Slip Mode. parameter may have one of these values.