New Projects

Fresh from the Labs

John Knight

Issue #178, February 2009

Eagle Mode—File Manager with a Difference (eaglemode.sourceforge.net)

For those sick of file manager after file manager that essentially do the same thing, with only a slightly different interface, let's just say that Eagle Mode (EM) takes a more ambitious approach. In the words of EM's documentation:

Eagle Mode is an advanced solution for a futuristic style of man-machine communication, in which the user can visit almost everything simply by zooming in. It has a professional file manager, file viewers and players for most of the common file types, a chess game, a 3-D mines game, a multi-function clock and some fractal fun, all integrated in a virtual cosmos. By featuring a separate pop-up-zoomed control view, help texts in the things they are describing, editable bookmarks, multiple input methods, fast anti-aliased graphics, a virtually unlimited depth of panel tree, and by its portable C++ API, Eagle Mode aims to be a cutting edge of zoomable user interfaces.

Eagle Mode's file manager lives within a virtual cosmos where other programs and trinkets float around with it.

For those chasing a lightweight file manager, you're looking at the wrong project. I almost choked when I read the system requirements: CPU 3.4GHz...per core! Plus, 1GB of RAM and a gig of hard drive space for temporary files at runtime—this is an ambitious project that shoots at the opposite end of the scale! Nevertheless, don't despair if you don't have all the hardware requirements; I still found the project usable on my apparently measly 512MB of RAM and 2.14GHz per core.

Installation

Thankfully, the software requirements aren't as Draconian as the hardware requirements. The only major dependencies are Perl, GCC, libx11-dev and the libxine-dev library for playing multimedia files. There is a list of other smaller non-essential dependencies that is long enough to make you scroll down the page (such as tar, xterm, JPEG libraries and so on), but they're really the kind of things you would expect for a file manager (and unless you have a system that's more sparse than a nightclub in Salt Lake City, you probably have them all installed anyway).

So, head to the Web site, grab the latest tarball, extract it and open a terminal in the new folder's main directory. From here, I really recommend reading the documentation included in the doc directory, which, unlike a lot of documentation, actually is well set out and easy to navigate. But, for the impatient, enter the following commands:

$ perl make.pl build

And, as root or sudo:

# perl make.pl install

I got an error in the middle of compiling EM, which said:

Building emAv failed, but that project is not so essential.
So if you don't know how to solve the problem, you could     
continue the overall building now, and live without the features
the project provides. Continue? [y(es)/n(o)/a(lways)]: y

After doing some Googling, I still couldn't find out what emAv was, but it seems to be non-essential, and the installation continued on unfazed. EM seems to run fine without it. Once the compilation has finished, change into the installation directory, which by default will be:

$ cd /usr/local/eaglemode/

And, enter this command to run it:

$ ./eaglemode.sh

Usage

Once inside EM's main screen, you'll be presented with a scene that is deceptively conventional—a file manager in your home directory. Double-click on a file, and it opens it. But, double-click on a folder, and it opens a terminal within that directory—that's weird. There's a bunch of extra info in the bottom right of the folder too, what's that about? As soon as I roll the mouse wheel upward, the whole scene suddenly zooms in, and I can see the contents of those files in detail. That's kind of cool, but it still isn't what I'd call groundbreaking. Then, I give the mouse wheel a few quick rolls backward, and the whole idea of Eagle Mode unfolds in an instant. When you zoom out, you find that everything is placed within a 3-D virtual cosmos—a star field consisting of files, applications and fields of stars. Keep zooming out, and eventually it is revealed that you are looking at a cosmos that is living within the eye of an eagle—just the kind of artistic silliness of which I approve! Zooming out to the end of the universe displays this proud eagle in its entirety.

Scroll backward all the way, and it is soon revealed that your virtual cosmos is living within the eye of this proud eagle!

I'm not sure if it will come out in print, but those who look very carefully will be able to see this as a white speck in its eye. Cosmic!

Zoom back in to the eye of the eagle and you return to the virtual cosmos where you can zoom in to programs and folders in great detail. Clicking on an area of the universe changes the “aim” of the zoom, and if you hold the scroll wheel in and move the mouse in any direction, it will scroll around the screen that way. Included in these applications and objects are things like system folders, a clock, documentation and games, and I'm sure there are some hidden objects in that star field somewhere. For those looking for a distraction, a version of Chess has been included (with a rather aggressive AI, it must be said) and a game simply called Mines that is a mind-bending 3-D take on the classic Mine Sweeper.

Waste time in Eagle Mode playing a rather lovely 3-D Chess game against a rather nasty AI.

Overall, if you're sick of navigating your PC with something that feels like it was designed by a bank manager (or if you simply want to put all those GHz your new PC came with to use), Eagle Mode just might be for you (not recommended for boring people though).

Mp3Wrap—MP3 Merger (mp3wrap.sourceforge.net)

With podcasting becoming ever more popular, people are dealing with large groups of MP3s that have to be squished into one big file and sent out to the general public. This in itself isn't very hard, but these files generally are all re-encoded and placed in something like a run-of-the-mill 128kbps MP3. When something that already has been under lossy file compression, like an MP3, gets encoded a second time, it loses a great deal of audio quality, and the resulting sound is more like a warbly old vinyl record being pumped through a Commodore 64. Well, worry no more radio DJs; this project may be just for you. According to the Mp3Wrap Web site:

Mp3Wrap is a free, independent alternative to AlbumWrap. It's a command-line utility that wraps quickly two or more MP3 files in one single large playable MP3, without losing filenames and ID3 information (and without need of decoding/encoding). It also provides the possibility of including other non-MP3 files, such as playlists, info files, cover images, inside the MP3. This means you obtain a large MP3 that you can split at any moment just using mp3splt, and in a few seconds, you have all the original files again! It's useful because files created with Mp3Wrap are easy to download. In fact, you don't need to know each song name to download, and it's easy to play. Even if you don't have mp3splt to split the file, you can listen to it anyway.

The mix-tape is back! Mp3Wrap lets you compile multiple MP3s into one large file without losing any sound quality.

Installation

Installing Mp3Wrap is a doddle, with a choice of a source tarball or .rpm and .deb packages. Plus, compiling the source is easy and painless. Click the DOWNLOAD link at the bottom of the home page for a list of all the package options. If you're going with the source version, grab the tarball, save it locally and extract it. Open a terminal in the new folder, and do your run-of-the-mill:

$ ./configure
$ make

And, as root or sudo:

# make install

Usage

Mp3Wrap currently is a command-line-driven affair, but don't let that put you off, as it's quite simple. The syntax is as follows:

mp3wrap finaloutcomefile filetoadd1 filetoadd2

It looked like this after I had given it some files:

$ mp3wrap compilation1.mp3 
 ↪02-Origa_Ft_Shanti_Snyder-Rise-2004.mp3 11\ 
 ↪Inner\ Universe.mp3

The terminal output does give some useful information as to what's happening. As a side note, remember that for some reason the program will insert _MP3WRAP just before the .mp3 extension as a sort of identifying mark, so if you're doing something like writing a shell script and having trouble finding your compilation MP3 file, that will be why.

A bunch of useful switches are included, the best of which is -a, allowing you to add more MP3 files to an existing “wrapped” MP3. Another useful switch is -l, which when passed a wrapped MP3 will list whatever files are inside. Check the man page for more details.

A drawback of the command-line nature of Mp3Wrap is that it may become very tiring and strenuous when dealing with a long list of MP3 files (which probably will lead to some mistakes with long playlists). Also, although Mp3Wrap's files are usable on just about anything that will play MP3s, they do have trouble seeking in some older players, such as XMMS and the like. This project is just begging for a GUI front end (which its cousin application mp3splt already has), as a GUI on top would make things much easier for a radio DJ on Friday night and would avoid the likely mistakes that will come from compiling a playlist of songs via command-line switches. Teething problems aside though, this program is a very clever one that will give podcasters a distinct edge over their rivals with original rip quality in their songs, and it might find its way into the hearts of many MySpace emo types looking to make an awful “mix-tape” MP3 compilation for some budding emo on-line girlfriend. Radio DJs and sad teenagers rejoice!

John Knight is a 24-year-old, drumming- and climbing-obsessed maniac from the world's most isolated city—Perth, Western Australia. He can usually be found either buried in an Audacity screen or thrashing a kick-drum beyond recognition.