/librosa

Python library for audio and music analysis

Primary LanguagePythonISC LicenseISC

librosa logo

librosa

A python package for music and audio analysis.

PyPI Anaconda-Server Badge License DOI

CI codecov Docs

Table of Contents


Documentation

See https://librosa.org/doc/ for a complete reference manual and introductory tutorials.

The advanced example gallery should give you a quick sense of the kinds of things that librosa can do.


Back To Top ↥

Installation

Using PyPI

The latest stable release is available on PyPI, and you can install it by saying

python -m pip install librosa

Using Anaconda

Anaconda users can install using conda-forge:

conda install -c conda-forge librosa

Building from source

To build librosa from source, say

python setup.py build

Then, to install librosa, say

python setup.py install

If all went well, you should be able to execute the following commands from a python console:

import librosa
librosa.show_versions()

This should print out a description of your software environment, along with the installed versions of other packages used by librosa.

📝 OS X users should follow the installation guide given below.

Alternatively, you can download or clone the repository and use pip to handle dependencies:

unzip librosa.zip
python -m pip install -e librosa

or

git clone https://github.com/librosa/librosa.git
python -m pip install -e librosa

By calling pip list you should see librosa now as an installed package:

librosa (0.x.x, /path/to/librosa)

Back To Top ↥

Hints for the Installation

librosa uses soundfile and audioread to load audio files.

📝 Note that older releases of soundfile (prior to 0.11) do not support MP3, which will cause librosa to fall back on the audioread library.

soundfile

If you're using conda to install librosa, then audio encoding dependencies will be handled automatically.

If you're using pip on a Linux environment, you may need to install libsndfile manually. Please refer to the SoundFile installation documentation for details.

audioread and MP3 support

To fuel audioread with more audio-decoding power (e.g., for reading MP3 files), you may need to install either ffmpeg or GStreamer.

📝Note that on some platforms, audioread needs at least one of the programs to work properly.

If you are using Anaconda, install ffmpeg by calling

conda install -c conda-forge ffmpeg

If you are not using Anaconda, here are some common commands for different operating systems:

  • Linux (apt-get):

apt-get install ffmpeg

or

apt-get install gstreamer1.0-plugins-base gstreamer1.0-plugins-ugly
  • Linux (yum):

yum install ffmpeg

or

yum install gstreamer1.0-plugins-base gstreamer1.0-plugins-ugly
  • Mac:

brew install ffmpeg

or

brew install gstreamer
  • Windows:

download ffmpeg binaries from this website or gstreamer binaries from this website

For GStreamer, you also need to install the Python bindings with

python -m pip install pygobject

Back To Top ↥

Discussion

Please direct non-development questions and discussion topics to our web forum at https://groups.google.com/forum/#!forum/librosa


Back To Top ↥

Citing

If you want to cite librosa in a scholarly work, there are two ways to do it.

  • If you are using the library for your work, for the sake of reproducibility, please cite the version you used as indexed at Zenodo:

    DOI

  • If you wish to cite librosa for its design, motivation, etc., please cite the paper published at SciPy 2015:

    McFee, Brian, Colin Raffel, Dawen Liang, Daniel PW Ellis, Matt McVicar, Eric Battenberg, and Oriol Nieto. "librosa: Audio and music signal analysis in python." In Proceedings of the 14th python in science conference, pp. 18-25. 2015.


Back To Top ↥