Skip to main content

This module provides a wrapper around the libav C library

Project description

This package contains a Python 3 Extension for playing audio files, reading and writing metadata and converting those files. For decoding and encoding files the libav library is used. Playback is handled by libportaudio.

The project website can be found at GitHub.


  • python3.x (Tested using python3.3)
  • libavcodec
  • libavformat
  • libavutil
  • libportaudio


Using pip:

pip install audiolayer

From GitHub:

git clone
cd python-audiolayer
python3 install


Reading song metadata:

>>> from audiolayer import Song
>>> filename = 'Finntroll - Trollhammaren.flac'
>>> song = Song(filename)
>>> song['artist']
>>> song['album']
>>> song['title']

Saving song metadata:

>>> song['album'] = 'Nattfödd'
>>> song['album']

Saving a copy of the song with the new metadata to a new file: >>>’Finntroll/Nattfödd - Trollhammaren.flac’) >>>

Converting the song (not implemented):

>>> converted = song.convert('Finntroll - Trollhammaren.ogg',
...                          format='opus', q=4)
>>> converted.filename
Finntroll - Trollhammaren.ogg

Playback (current implementation):

>>>  # Wait for the song to finish.

Playback (target implementation):

>>> song.pause()
>>> song.play_or_pause()
>>> song.playing_time


The unittests can be run using:

python3 test

It is also possible to use nose to run the tests:

python3 nosetests

Coding style

  • C code must be in compliance with pep7.
  • Python code must be in compliance with pep8.
  • All code must be covered by unittests.

To test the Python code for pep8 compliance, go to the project root directory and run:

python3 flake8


This project is licensed under the BSD 3-Clause License.

Project details

Download files

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

Files for audiolayer, version 0.1.1
Filename, size File type Python version Upload date Hashes
Filename, size audiolayer-0.1.1.tar.gz (9.9 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page