Fun with Cortex
People often refer to the sophistication of the media infrastructure in BeOS, but one doesn’t often have the chance to see a good example of just how flexible and powerful it really is. While it’s still green in some ways, Eric Moon and Christopher Lenz’ Cortex is a great way to both visualize and utilize the power of the Media Kit.
Cortex monitors audio and video media add-ons (and their nodes) in use by BeOS, and lets you hook them up in ways the authors of individual add-ons may never have forseen. As the roster of BeOS media applications which properly publish their media add-ons to the system grows, and as Cortex matures, amazing connections between media applications are going to be possible.
Basic operation of Cortex is straightforward — connect the inputs and outputs of compatible media add-ons to create a group, then use that group’s Transport control to start it. If everything is hooked up properly, the group will spring to life, letting you do anything from controlling a digital video camera to inserting plug-ins between audio apps and the system mixer.
By itself, Cortex doesn’t do a whole lot. You’ll need to be running something that generates signal to be processed (though you can also use audio and video files dragged in from the Tracker as starting points). A great sample app for generating Media Kit-friendly signal is BeFantatics’ BeSting, which is like a theremin you operate with your mouse. Spend a few minutes playing with BeSting to get familiar with it in its standard mode (be sure to use both left and right mouse buttons while playing, and stretch the BeSting window out as wide as possible).
Now, for a great example of Cortex in action, install Lenz’ VST MediaAddOn, which lets you use Steinberg-standard audio plug-ins recompiled for BeOS. Then download a bunch of VST plug-ins to go with it. For this example, we’ll use the SupaPhaser plug-in.
Now that you’ve got everything in place, you can see and tweak the Media Kit in action.
- First, launch Cortex.
- Next, launch BeSting and notice that it publishes a media add-on to the system, which immediately appears in the Cortex workspace. BeSting gets registered as a BSoundPlayer, and is connected to the central System Mixer by default.
- Now, select the wire connecting BeSting and the Mixer, and press Delete to sever the connection.
- Drag the SupaPhaser plug-in from Cortex’ Media Add-Ons panel and into the Cortex workspace.
- Connect the output of BeSting to the input of SupaPhaser, and the output of SupaPhaser to the System Mixer.
- Select BeSting and press Start in your new group’s Transport control.
- Start playing with BeSting. Notice how dramatically different it sounds from the way it did before? You’ve just used the Media Kit to insert a 3rd-party plug-in between an application and the system.
- It gets better. With the group still running, right-click SupaPhaser and select “Tweak Parameters.” You can control virtually every aspect of the plug-in individually.
- Try stopping the group, disconnecting the plug-in, and inserting additional plug-ins into the chain.
Click for full-size version.
What’s amazing is that none of the VST plug-ins are designed to work with any specific audio application — they’re designed to work with the BeOS Media Kit, and can therefore work with any audio application which publishes add-ons to the system.
Please note that Cortex is currently regarded more as a test bed for developers than as an end-user’s application. Its developers are aware of its current limitations.
Posted in Audio & Video