Skip to main content

TagLib bindings for python 2.x/3.x, written using cython

Project description

Overview

pytaglib is a package of Python (2.x/3.x) bindings for TagLib. To my knowledge this so far is the only full-featured audio metadata library that supports python3.x.

Also, the package gives you complete freedom over the tag names – you are not limited to common tags like ARTIST, ALBUM etc.; instead you may use any string as key as long as the underlying metadata format supports it (most of them do, including mp3, ogg, and FLAC). Moreover, you can even use multiple values of the same tag, to e.g. store two artists, several genres, and so on.

Requirements

To compile the bindings you need need the Cython compiler for your version of python. Note that some distributions do not yet ship Cython compiled for python3, but you can easily get it by typing:

sudo easy_install3 cython

into a console.

pytaglib uses TagLib features that have been added only in version 1.8-BETA, so you need at least that version along with development headers. The recent releases of most linux flavours nowadays ship taglib-1.8, including:

  • Ubuntu 12.10

  • Debian “experimental” branch

  • Linux Mint 14

  • Up-To-Date Arch Linux

  • Gentoo Linux (unstable)

  • Fedora 17

Installation

The easiest version is to use easy_install:

::

sudo easy_install -U pytaglib

On most systems, this will install the python2 version; use something like

::

sudo easy_install3 -U pytaglib

to build the package for python3 (the exact command depends on your distribution).

Alternatively, you can download the source tarball and compile manually:

python3 setup.py build
python3 setup.py test  # optional
sudo python3 setup.py install

Replace 3 by whatever Python version you use.

Usage

$ python3
Python 3.2.2rc1 (default, Aug 14 2011, 19:02:04)
[GCC 4.6.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import taglib
>>> f = taglib.File("x.ogg")
>>> f.tags
{'ALBUM': ['omgwtf', 'lol'], 'ARTIST': ['öätrnüö']}
>>> f.length
472
>>> f.sampleRate
44100
>>> f.tags["ARTIST"] = ["A new artist"]
>>> del f.tags['ALBUM']
>>>
>>> f.save()
True
>>>

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pytaglib-0.2.5.tar.gz (31.3 kB view details)

Uploaded Source

File details

Details for the file pytaglib-0.2.5.tar.gz.

File metadata

  • Download URL: pytaglib-0.2.5.tar.gz
  • Upload date:
  • Size: 31.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pytaglib-0.2.5.tar.gz
Algorithm Hash digest
SHA256 2ae3ba210dc9e372257fee80597e3d5ec40dddd1447faef7a999b748a5d30e3d
MD5 33fd1c3b2b622028416565adaba48d7a
BLAKE2b-256 230364f27ba2e956c590cd13fa710f8f43a668f65506d21d57938580a47683c5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page