apeinfo

Last Modified: Sun, 05/02/2010 - 15:02

Introduction

apeinfo is CLI (command line interface) program designed to display tag data and audio format information for APE (Monkey's Audio) files.

Monkey's Audio is a lossless audio compression format, similar to FLAC.  It's become fairly popular, but suffers from two primary limitations; very limited cross-platform support (only Windows is officially supported), and a non-free license (note: this may have recently changed).  As a result, I wanted an easy way to convert APE files to the FLAC format, which is my preferred lossless compression format.  There are no available CLI APE tag readers available for Linux at the time of this writing, so I modified a sample program included in the MAC distribution to output this information.  I then use this information in my Convert to FLAC script to migrate the APE tags to the new FLAC file.

apeinfo is written in C++, and utilizes the MAC (Monkey's Audio Codec non-win32 ports) libraries written by Matthew T. Ashland.  Also, special thanks to Bill Anderson for his much appreciated assistance with developing and troubleshooting apeinfo.

Return to top

Download  Current Version: 1.1, Released: 05/13/2009

apeinfo 1.1 (64-bit) binary (140.3 KB) - This is a 64-bit compiled version of apeinfo.  It was compiled on a Kubuntu Linux system with GCC 4.3.3 and glibc 2.9.

apeinfo 1.0 (32-bit) binary (127.54 KB) - This is a 32-bit compiled version of apeinfo.  It was compiled on a Gentoo Linux system with GCC 3.4.4 and glibc 2.3.5.

apeinfo 1.1 source (6.75 KB) - This is the apeinfo source code.  If you receive any error messages when trying to run the binary version, try using this instead.  To compile it, also download the MAC source code and follow the instructions below.

ChangeLog - apeinfo development details

Return to top

Installation

Downloading apeinfo binary

Installation of the apeinfo binary is simple:

  1. Download the binary
  2. Copy to a directory in your $PATH (eg, /usr/local/bin/)
  3. Ensure that the binary has the execute bit set (eg, chmod a+x /usr/local/bin/apeinfo)

Try executing apeinfo after installation.  If it returns usage information, then you're good to go.  If you get any error messages, then you'll likely need to follow the compilation instructions below.

Compiling apeinfo from source

To compile apeinfo, follow these steps

  1. Download the apeinfo source tarball above
  2. Download the MAC source tarball
    • Note: This was originally written and compiled against MAC version 3.99-u4-b5.  Other versions should work as well, but are not guaranteed.
  3. Extract the MAC tarball
  4. Extract the apeinfo tarball to the following directory: mac-<version>/src/Examples/Analyze/Sample1/
    • Note: This will overwrite the two makefiles in that directory
  5. From the root of the MAC source code, run ./configure --disable-shared --enable-static && make
    • This will configure the MAC environment and compile a static apeinfo binary
  6. Copy mac-<version>/src/Examples/Analyze/Sample1/apeinfo to a directory in your $PATH (eg, /usr/local/bin/)
  7. Optional:  If you'd like to install the mac binary as well, which can be used to encode or decode APE files, repeat the above step for mac-<version>/src/Console/mac

Execute apeinfo to verify that compilation and installation was successful.  Once apeinfo is installed, you can delete the MAC source code if you'd like.

Return to top

Usage

Execute apeinfo -h to display the apeinfo help information.  This will describe the syntax for running the program and list all available options.  Depending on which option is used, apeinfo will display detailed information about the given APE file, or will display a list of all tags in VORBISCOMMENT format.  The VORBISCOMMENT tags can be be applied to another file using a separate program, such as Convert to FLAC.

Return to top