gtk123

A GUI frontend to mpg123/mpg321 that supports playlist files

I have a 486 laptop (among my other computers). I've found that I can play mp3s on it, including ice/shoutcast streams, using an old version of mpg123. However, mpg123 doesn't support playlist files, and doesn't exactly have the smartest approach for playing directories full of mp3s that one could wish for.

Initially, I wrote a script named perl123. This script has as its only requirements a copy of mpg123/mpg321 and the AppConfig perl module from CPAN. However, I have expanded it significantly into a GTK-based graphical frontend. gtk123, available below, also uses gtk2-perl, and URI, Filesys::Statvfs, and MP3::Info from CPAN. In Debian terms, that's libgtk2-perl, libmp3-info-perl, libappconfig-perl, and liburi-perl, plus some package that provides mpg123 or mpg321. The installer script is also happier if you install lsb_release from the Linux Standard Base distribution (lsb-release in Debian), although the actual program doesn't use it.

If you're running Debian, you can now download a prepackaged form of gtk123 using apt-get (or dselect, aptitude, synaptic, etc). Simply add these two lines to your /etc/apt/sources.list file:

deb http://homepage.mac.com/danflemming/debian unstable/
deb-src http://homepage.mac.com/danflemming/debian unstable/

I have vold available from the same archive; the vold package appears to have been abandoned by its maintainer, and is currently only available in Woody. Since gtk123 probably won't even run on Sarge, but is compatible with vold, this is a problem. Anyway, the old Woody .deb is there, along with the source package files.

If I should package any other programs, then they'll appear here as well. Currently, it's just gtk123. You can download both a "binary" and source package for gtk123 using apt-get. If you're using secure apt (etch or sid), you'll get a warning, as I haven't set up a secure apt archive. (I probably will when etch moves from testing to stable.) However, if you trust the network, you can just say Y when apt asks you, and the packages'll install anyway.

Downloads available here
Release 0.7.0 GZip; md5 checksum BZip2; md5 checksum; Debian package
Release 0.6.0 GZip; md5 checksum BZip2; md5 checksum
Release 0.5.0 GZip; md5 checksum BZip2; md5 checksum
Release 0.4.0 GZip; md5 checksum BZip2; md5 checksum
Release 0.3.0 GZip; md5 checksum BZip2; md5 checksum
Release 0.2.0 GZip; md5 checksum BZip2; md5 checksum
Release 0.1.0 GZip; md5 checksum BZip2; md5 checksum

It takes one optional command-line argument, which is a playlist file that you want played. If there are no playlists on the command-line, or if there's some kind of problem reading them and it gets no URLs or filenames, it scans the current directory for mp3s and builds a tracklist consisting of all mp3s in the current directory. If you start it with the option -version specified, it prints its version number and exits.

This is beta software. It works for me, but to say that it hasn't been tested stringently would be understating greatly. ;)

In its current version, gtk123's installed size is about 50K, most of that being the HTML documentation. Of course, you need the perl libraries, plus an mp3 player, but it's still one of the smallest X-based players out there.

It's licensed under the GNU General Public License.

You can email me with comments about this script if you like. Keep in mind that I get an avalanche of spam each day; do not change the subject heading for fear of sudden deletion, and expect slow responses. ;) My GnuPG public key is available.

Also, there is a SourceForge page for this project, which I encourage you to use to file bug reports and ask general questions.

If you're interested in developing using gtk2-perl, I have a collection of code snippets that you might find useful in your own programs available. So far, all of these snippets are taken from gtk123. Also, my buildrelease script is available. That's the script I use to post new releases of gtk123.

Made on a MacValid XHTML 1.0! SourceForge Valid CSS!Made with Macromedia DreamWeaver MX