I have two music players that I want to show, but I have to write about them in the correct order, because one is an offshoot of the other. And I screwed up the whole roguelike evolution over the past 10 days, which was a disservice to some of the later ones.
Here’s ksmp3play, which is a little hard to find and appears to have drifted away around 2008.
ksmp3play is tagged as “beta” software on Sourceforge, and that’s obvious from using it just for a little while. It has a nice, colorful arrangement, with most of the file and playback information pinned to the top of the display, and the playlist stretching down below. It’s clever mostly because it allows you to stretch the terminal to almost any dimension without scrambling the display. Tiling window manager, here we come.
ksmp3play has a few other features that are worth note: It will play at random or circle through in a loop, and it shows individual file times at the top and a total time at the bottom, along with a file size total, which is an interesting touch.
And of course, any time a program can give me a popup help screen, I’m a fan. That, and the dialog for adding files is quite helpful. I also like onboard volume controls that adjust the application’s output, and I like tag editing commands too. 🙂
Those are most of the good points. Here are some bad ones …
That help screen I mentioned is slightly jumbled. Some of the commands listed there are off by a line, meaning “Add files to playlist” isn’t the left bracket, it’s the “a” key. And so forth. If you pay attention you can decipher it, but it’s not as “helpful” as it should be.
At the least provocation, ksmp3play comes to a screeching halt. Enter an empty filename for a playlist, and your music stops and you’re back at your prompt. Skip to an impossible point in a song with the arrow keys, and you’ll know because again, you’ll be back at your shell cursor. It also locks frequently and I get a lot of “stack smashing” errors. ksmp3play needs a lot more error trapping.
Probably irritating to me, as someone who actively looks for well drawn and well designed text-based interfaces, is ksmp3play’s refusal to just start up without a specified file to play. If I enter
ksmp3play without a target, I get the help flags list. I can add files to the playlist once ksmp3play is up and running, but if I don’t give it a target to start with, it shudders and blinks like a confused pet.
There are some foggy options, too. ksmp3play offers three different options for randomised play, but nowhere can I find a description of what those three are. You can specify a delay between songs at the command line, but apparently not at the interface (unless I overlooked it). ksmp3play doesn’t bother to remember what volume level it last played at, which means it’s always going to start up at 90 percent of max (I think that’s what it is).
But the worst transgression to me is the lack of a recursive add function. I’d be satisfied to just spin up ksmp3play and feed it my master directory of music, but ksmp3play won’t have any of that. If I want to play a file I have to add it singly, one at a time, through the add dialog. (I get around that nonsense by feeding the results of find through xargs and back in to ksmp3play, which works … sometimes.)
ksmp3play is not in AUR or Debian; the author has a precompiled .deb package on the Sourceforge page, which is what you see running in Mint up there. You’ll need to install libsmpeg0 as well, which begs the question of whether ksmp3play will actually work in a nongraphical environment, if that drags in any SDL, which might drag in Xorg, and so forth.
I’m willing to give the same halfhearted recommendation to ksmp3play as I have to other incomplete projects that dwindled away in the past. It’s easy to see where software didn’t quite reach the level of “completeness” its authors probably wanted. In ksmp3play’s case, “completeness” was still a long way off. 😐
Tomorrow: ksmp3play’s “progeny.”