TimeSide: A Scalable Python Framework for Audio Processing and Analysis

TimeSide: A Scalable Python Framework for Audio Processing and Analysis

Summary

TimeSide is a powerful Python framework designed for scalable audio processing, analysis, imaging, transcoding, streaming, and labeling. It offers a core Python module, a web server with a RESTful API, and a JavaScript SDK. This framework is ideal for complex processing on large audio or video datasets, supporting diverse applications from computational musicology to streaming services.

Repository Info

Updated on May 6, 2026
View on GitHub

Tags

Click on any tag to explore related repositories

Introduction

TimeSide is a scalable audio processing framework and server written in Python. It enables low and high-level audio analysis, imaging, transcoding, streaming, and labeling. With a high-level API, a plug-in architecture, and a secured scalable backend, it is designed for complex processing on very large datasets of any audio or video assets. TimeSide provides a core Python module for shell or program use, a web server with a RESTful API for web applications, and a JavaScript SDK based on OpenAPI for easy third-party application development.

Installation

TimeSide is readily available as a Docker composition, bundling essential applications and modern frameworks out-of-the-box, including Python, Numpy, Jupyter, Gstreamer, Django, Celery, PostgreSQL, Redis, uWSGI, and Nginx.

First, ensure you have Docker and Docker Compose installed.

Then, clone the repository and start the services:

git clone --recursive https://github.com/Ircam-WAM/TimeSide.git
cd TimeSide
docker compose up -d

Please note: To get technical support, reach the development team. If you need to use TimeSide outside a Docker image, please refer to the rules of the Dockerfile, which is based on a Debian stable system. Free support is not provided for this particular use case outside the original Docker container.

Examples

TimeSide supports a wide range of audio processing tasks. You can perform asynchronous audio processing, decode various audio or video media formats into numpy arrays, and analyze audio content using state-of-the-art libraries like Aubio, Yaafe, and VAMP, as well as pure Python processors. It also enables audio visualization with various waveforms and spectrograms, transcoding audio data into different media formats, and streaming them through web applications. For practical examples and tutorials, explore the Core tutorials and Jupyter notebooks provided in the documentation.

Why Use TimeSide?

TimeSide is an excellent choice for researchers and engineers who need to prototype and test their audio algorithms rapidly on diverse platforms and use cases, such as computational musicology and streaming services. Content providers and producers can leverage its capabilities to enhance user experiences on their platforms with rich metadata based on cultural history and audio feature analyses. Key advantages include its asynchronous and fast audio processing with Python, comprehensive feature set for decoding, analyzing, visualizing, and transcoding audio, and its flexible deployment options via Docker. The plug-in architecture allows for easy extension and integration of custom algorithms, ensuring the system can be easily updated, scaled, and deployed.

Links