mxPlay 2.1.2Ultimate Music Player?
This is getting to be an increasingly common story in Atari software
development. A project starts with high hopes and happy dreams of a neat and
finished end result. Only things don't turn out like that and the project is
quietly dropped. Years later, the coder has second thoughts, blows the dust and
tumbleweed off their source code and starts afresh. We've seen this notably with
the rebirth of the 'Bad Mood' game engine. Mikro has also been at the rebirth
potion, with his revival of the mxPlay project, previously abandoned several
years ago.
From out of the ruins of mxPlay 1.0, Mikro discovered the magic of the portable
XMP player, which seems to be able to cope with just about any obscure digital
music format thrown at it. At that point, he resolved to port this to the
Falcon, at least for the 68060 machines, with a Firebee version thrown in free
of charge.
How many formats?!
To describe it in a bit more detail, the heart of the mxPlay application is the
Extended Module Player, or XMP. This is a portable command-line module player.
XMP plays over ninety mainstream and obscure module formats from the Amiga,
Atari, Acorn, PC and others, including the classic Protracker (MOD), Scream
Tracker 3 (S3M), Fast Tracker II (XM), and Impulse Tracker (IT). This has all
been wrapped in a nice GEM shell by Mikro and placed firmly under the 'mxPlay'
banner.
Also there are options for various platforms from standard Atari Falcon upward
without a super fast CPU. We're mostly talking about the legacy v1.0 plugins for
the '030, often DSP-dependant and sometimes not optimally stable. Standard mod
files, Ace Tracker tunes, AON tunes, other Falcon specific mod files and .SND
are all here. These include the classic Bitmaster DSP mod replay, Thomas of New
Beat's Ace tracker replayer, Grauomf (.GT2) players, .MGT music, .the AON
format and even .SND. These are all then combined under the mxPlayer shell,
which was the original intent with version 1.0.
For higher end machines, such as the CT6x series, Firebee and the Aranym virtual
machine, plug-ins specifically for these machines include 'Asap' for Atari 8-bit
Pokey tunes. The real crowning achievement for the lucky high end users though
is the 'extended' XMP plug-in, which as stated earlier on, has a bewildering
range of well-known and obscure music formats from across many platforms at its
beck and call.
This is all great and groovy, but we'd like to hear what it can do for us,
Atari-wise. Here's their list and it's quite a good one.
Digital Tracker (MOD): FA04, FA06, FA08, Digital Tracker (DTM): 1.9, Flextrax (FLX)
[effects not supported], Graoumf Tracker (GTK): GTK1, GTK4 (was described as
unstable in main docs), Megatracker (MGT): 1.1, Octalyser multichannel (MOD):
CD61, CD81, TCB Tracker (MOD): 'AN COOL.'
Well I think we can manage quite adequately with that. I've yet to be tempted by
the extremely 'legacy' TCB Tracker right now though!
It works with Aranym too, once the replay has been set to the correct frequency
on the Aranym config file (49170). There are no issues with replay speed, even
with Impulse Tracker tunes.
With the 2.1 version, it also added MP3 playback from the 'mpg123' plug-in,
which is a useful add-on even with the already available CT60 alternatives. For
music starved Firebee owners, this is their first 'official' MP3 player.
Testing times!
For this initial batch of testing, my reference is a CT60 system - Mint 1.18 -
90 MHz and a CTPCI extended desktop.
I rediscovered an old favourite, the SH3 composed Graoumf Tracker tune 'Lordz'.
A GTK 12 channel tune plays back better than 95% correctly and it is
surprisingly stable. It also seems to be quite light on CPU usage at around 3%
(whilst multitasking with making these notes!) The 8 Channel 'Blipno' tune
deploys more in the way of effects and the CPU load goes to 11%.
Moving on to another format, the tune 'Inside-outside', an .XM module made by
Drax plays back 32 channels and maxes at 17%. This varies and is generally less.
Also it plays very nicely.
A big test was with Impulse Tracker tunes. 'Zerohard', all 31 channels of it
tops out around 20%. However there were some issues with that tune
skipping/stuttering near the start, but smoothing out later on? For information,
this and other Impulse Tracker tunes played back without any flaws on MacAranym.
After a little more investigation, it turns out that Impulse takes up a sizeable
chunk of modern systems and seems to be a CPU greedy format in general. Too much
even for 060 class hardware. It also seems that the CT60 CPU meter can be
fooled into giving false readings if overloaded?
On the other hand, another old favourite, 'World of Plastic', a classic
Screamtracker tune sits happily at 3% of CPU and with and flawless playback.
Although it is not recommended, music through mxPlay in general seems to be
happy to multitask within reason on an 060 or high end equivalent. There are
areas to be careful of though, for example zView in full screen picture viewing
stutters the tune.
One or two issues were encountered on the way.
Some initial issues with a premature termination of playback of some MP3 files,
were solved after a few days of investigation between the writer and Mikro. It
turned out the disputed sound files were probably not that well encoded on my
part anyway, but still, the problem was taken care of.
The replay quality on a variety of tunes is more than satisfactory. The mpg123
plugin seems to flatter and enhance even poorer MP3's, where as FalcAmp harshly
emphasises any quality problems with lower bit rate tunes. There is some cost to
CPU time, but not as much as, say running Aniplayer with the DSP off.
There is no Ace Tracker replay from the XMP plugin. Thomas's player works on the
CT60, but tends to crash after a couple of songs (non-fatally, and you can get
mxPlay back.)
And on other systems?
We've done a little bit of checking out of mxPlay on lower powered Atari
hardware too.
That ideal in-between machine, my Centurbo 2 plays back on the Atari/Falcon
specific plugins, with one or two interesting exceptions. For example, it does
try to replay mp3's with a great deal of stutter on the 50 MHz 030 with mpg123
in the building. XMP hates to be left out of things when it comes to certain
other exotic formats. This can *almost* successfully play back old style Graoumf
tracker tunes! It also makes a fair fist of Screamtracker tunes, with only a
little slowness related skipping or stuttering. On the standard Falcon, you do
get a warning dialogue to ram home the point that you've got a slow machine!
There seems to be return of the truncated playback issue with some mod files on
the CT2 using the DSP Mod player. mxPlay also works with the MagiC O/S as well
as from bare TOS, but this seems to kill off the Jinnee desktop. From my
recollection of the .readme file, this was to be expected!
As for going right down to a standard Falcon. All the elements that worked with
the Centurbo 2 are still here. The DSP Mod player works with an identical
truncation issue as seen on the CT2.
A closer examination of the 'using.txt' revealed this snippet, which might be
worth bearing in mind for further exploration of the prematurely ending playback
issue.
3.1.8 Playtime
By clicking on the playtime you change time addition/substraction a la Winamp or
XMMS. Please note that most of the plugins do not support time reporting so a
hardcoded value is used (3 minutes). You can change this in mxplay.inf.
(Reviewer's note - Yup, seems to help changing that!)
The unstable on 060 Ace Tracker plugin manifested an occasional instability on
030, with muteness if the mouse was moved carelessly. I had to exit and restart
mxPlay to get those tunes back.
The Twiddly stuff hidden underneath!
When you first run mxPlay, you have the option of selecting one of several skins
to define the look and feel of the program. I've opted for something fairly
minimalist in blue.
The primary controls are the standard video/tape player style buttons for
loading, playing, stopping the tune etc. There is a volume control slider bar at
the bottom. Play time and a rolling scroll text with information about the tune
is shown in a display window. There is a selection of three buttons in the
display window towards the left hand side. The first of these displays
information about the tune. The second is a general info box about mxPlay. The
third option goes into detail about the plugin currently in use, and can offer
extra options to tweak the playback if these are available. To give a good
example, the options of interpolation and surround sound for the Bitmaster DSP
modfile player can be selected from here.
There are a number of keyboard shortcuts which I haven't been tempted to
explore.
Better still, mxPlay supports lots of nice protocols, such as va_start, long
file names and drag and drop. There is a playlist that you can set up if you
choose.
The Ultimate Music Player?
Is this the best an Atarian can get, sonically speaking?
Well on the higher end systems, whether it be Aranym, CT6x or Firebee, mxPlay is
a definite must have item for your machine. In the case of the Firebee, afaik
there are no alternatives currently available. For the CT6x, it is also an
essential application, especially for revisiting greatest hits from old trackers
not supported by the 060. The MP3 replay offers a decent alternative to what's
currently available without taking over the system completely.
For some formats, the only place to go is Aranym specified to use JIT
processing, especially for those tricky Impulse Tracker tunes. Yes it does hurt
a bit to find something that's 'too much' even for a 68060.
As for the lower end, maybe mxPlay is not quite so essential. It tidies up the
plugins from mxPlayer 1.0 but does not offer anything that can't be duplicated
elsewhere. At some point it may be worth exploring the XMP engine on something
like a CT2, with some non-Atari exotic formats, that aren't as demanding as an
.XM or S3M tune.
Anyway, it's a welcome revival from Mikro of a great project. I'd like to see
what he's doing next!
CiH - For Mag! - Oct 2013.
Back to Serious Stuff.
|