When you’re playing playlists with SoundPlay, you sometimes find yourself wanting to delete the occassional crappy song in order to save disk space. SP doesn’t offer a „Delete from disk“ option. But right-click any track in the playlist editor and you’ll get a Tracker pop-up you can use to quickly open the home folder of that track (or any track, for that matter). You can then delete, rename, move, or do whatever you want, without having to run a query to find the track in question.
If you have CVS output from a PIM or database and want to create an HTML database for use in Gobe Productive, BeGeistert publishes just the script you need.
When drawing icons, you often want to blend two different colors to perform anti-aliasing between them. The icon editor in QuickRes includes a feature to help you do this. WIth the Eye Dropper tool selected and one of the colors in your color well, hold down the command key while clicking on another color in your icon. This will slightly tint your color well with the selected color. Repeatedly clicking will tint even more, making your color well more like the color in the icon.
Better yet, if you are working with a 32-bit image this blending fully supports the alpha channel, so you can easily perform anti- aliasing and other mixes with a transparent background.
You can also put the alpha channel to good use with the „Paste Uses Alpha“ in the editor’s „Image“ menu. When this is turned on, copying and pasting an image with alpha transparency will blend it with the underlying image where your original is transparent. This allows you to draw an image that is anti-aliased on a transparent background, and paste it over another image so that it is correctly anti-aliased with the colors in that image.
As of version 5.1b15, OpenTracker includes a system which makes it easy to create new documents or folders of any type, from any Tracker window.
Under the Tracker’s File menu, you’ll find a New… option. New Folder is present by default, but if you choose Edit Templates… the folder ~/config/settings/Tracker/Tracker New Templates
will be launched. Fill this folder with new documents of any type, blank or partially filled in, and with intuitive names. You can even create custom associations (for example, you might want a template for new HTML documents, but change the association so a new HTML document will open in a text editor rather than in NetPositive when double-clicked). You can even create custom Tracker templates, such as MP3-customized folders, and drop them here.
All of your templates will then be available from any Tracker window, anytime.
The BeOS Workspaces panel has the hidden ability to open files dropped on the window. It acts the same as if you opened them from a Tracker view.
If you install OpenTracker 5.1b13 or later, Tracker will respect a new setting in ~/config/settings/Tracker/TrackerSettings:
SortFolderNamesFirst on
If your TrackerSettings file doesn’t have this line, add it. If it has it but it’s turned off, turn it on. Restart the Tracker and you’ll find that when Tracker is in list view, all folders are listed before all files, which can help to organize things visually.
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.
In BeOS 5, WON (World of Networking) is only partially supported, and may prove somewhat flaky. This situation should improve when BONE is released, but for now, you’ll probably have better luck by avoiding WON altogether and just using cifsmount.
First, you’ll probably want to tweak your Tracker settings file so that Windows shares are mounted on the desktop. Restart the Tracker or reboot.
Now, open a Terminal and create a directory to mount the remote share in. For this example, we’ll use /sharemount:
mkdir /sharemount
Now enter something like:
cifsmount -I 192.168.168.168 -W WORKGROUP \\HOST\SHARE user pass /sharemount
Where the number following -I is the IP address of the share machine, the word following -W is the name of your workgroup, HOST is the name of the machine in that workgroup, and SHARE is the name of a directory on that machine to which you have access. All of these must be in ALL CAPS. Use your real username and password (presumably not all caps).
If successful, the remote shared folder will appear on the desktop under the name „sharemount“ and you’ll have read/write access to it. If it worked, add this to ~/config/boot/UserBootscript
:
mkdir /sharemount cifsmount -I 192.168.168.168 -W WORKGROUP \\HOST\SHARE user pass /sharemount
If you would like to move the Twitcher „window“ to a less intrusive location, open it (ctrl+tab unless you’ve changed your default modifier key). While its open, use the mouse and drag its window border. Your change is permanent until you decide to move it again. The position is also saved individually for each workspace, so the Twitcher’s default location may be top left in workspace #1 and bottom right in workspace #6, for example.
If you’re not familiar with dynamic DNS addressing, a dynamic DNS service lets someone who doesn’t have a static IP address (DSL/Cable/Dialup) to have a static DNS entry so they can run web servers, etc. The most common way of doing this is to run a client that will look up your IP address at specified intervals and see if it matches the database of the DNS server you’re using. If not, it simply updates the database.
The problem is that there is no native BeOS client for dynamic DNS updates. I’ve found tons of C clients but they all relied on arpa/inet.h which I don’t have. Some were even written in Perl, but Perl for BeOS doesn’t support sockets. So after I had all but given up hope I ran across a client that used Python. Only one problem — it didn’t work and the error message was as vague as can be, „Error updating…“ So I delved into www.python.org to see what I could do. I later find out that the error is that the script is not reporting what kind of agent it is (basically, „Who are you?“). I found the answer by looking at the source of one of the C clients. As it turns out the problem was a misplaced “ „. Here’s how to get this working on your own:
- Download and install Python.
- Download the DNS module. Extract it to a temporary location. Then take the DNS folder (not its contents, the WHOLE folder) and drop it in
/boot/home/config/lib/python1.5
. - Download DDUpdate1.6 . Edit the script and make the first line read:
#!/boot/home/config/bin/python
Go to line #136 and change it from:
request = request + ' '
to:
request = request +
Make sure the permissions for the file is executable. Take the modified script and drop it in /boot/home/config/bin
.
Read the instructions. There’s a file you can create in /boot/home
called .ddupdaterc
in which you can put your info in so you can just call ddupdate instead of typing out the whole command line every time.
Keep in mind this only works with dyndns.org.