Latest version: 2.21
Support This Project

About the Python Audio Tools

Python Audio Tools are a collection of audio handling programs which work from the command line. These include programs for CD extraction, track conversion from one audio format to another, track renaming and retagging, track identification, CD burning from tracks, and more. Supports internationalized track filenames and metadata using Unicode. Works with high-definition, multi-channel audio as well as CD-quality. Track conversion uses multiple CPUs or CPU cores if available to greatly speed the transcoding process. Track metadata can be retrieved from FreeDB, MusicBrainz or compatible servers.

Audio formats supported are:

Easy to install and use

I don't like programs with lots of obscure dependencies, so I've written Python Audio Tools to require as few external libraries and programs as possible. Some formats require only one or two common executables and many require none at all. Installation utilizes Python's built-in distutils, but a provided makefile reduces the process to a simple make install command.

The programs that make up Python Audio Tools provide a consistent interface for painless switching between them. man pages are included, as is a lengthy manual for both users and programmers. See the short tutorial in the documentation for an illustration of their usage.

These Python Audio Tools are designed with Unix-like systems in mind. Although much of it is written in pure Python, the libcdio library is used to read from a CD-ROM drive and various POSIX C Python extension modules are included for speed-sensitive operations such as file encoding, resampling or ReplayGain calculation.


Because Python Audio Tools sticks very close to established, documented standards, it has no trouble interoperating with other audio-handling programs. If you want to rip CDs with Exact Audio Copy, batch convert them to M4As with these tools and play them back in iTunes, that's no problem.