Skip to main content

libtsm

A Python toolbox for Time-Scale Modification (TSM) and Pitch-Shifting.

Details and example application:

https://www.audiolabs-erlangen.de/resources/MIR/2021-DAFX-AdaptivePitchShifting

libtsm is based on a re-implementation of the Matlab TSM Toolbox by Jonathan Driedger and Meinard Müller:

https://www.audiolabs-erlangen.de/resources/MIR/TSMtoolbox/

If you use the libtsm in your research, please consider the following references.

References

Sebastian Rosenzweig, Simon Schwär, Jonathan Driedger, and Meinard Müller: Adaptive Pitch-Shifting with Applications to Intonation Adjustment in A Cappella Recordings Proceedings of the International Conference on Digital Audio Effects (DAFx), 2021.

Jonathan Driedger and Meinard Müller: TSM Toolbox: MATLAB Implementations of Time-Scale Modification Algorithms. In Proceedings of the International Conference on Digital Audio Effects (DAFx): 249–256, 2014.

Jonathan Driedger and Meinard Müller: A Review on Time-Scale Modification of Music Signals. Applied Sciences, 6(2): 57–82, 2016.

Jonathan Driedger, Meinard Müller, and Sebastian Ewert: Improving Time-Scale Modification of Music Signals using Harmonic-Percussive Separation. IEEE Signal Processing Letters, 21(1): 105–109, 2014.

Installation

With Python >= 3.6, you can install libtsm using the Python package manager pip:

pip install libtsm

Documentation

The API documentation of libtsm is hosted here:

https://meinardmueller.github.io/libtsm

Contributing

We are happy for suggestions and contributions. However, to facilitate the synchronization, we would be grateful for either directly contacting us via email (meinard.mueller@audiolabs-erlangen.de) or for creating an issue in our GitHub repository. Please do not submit a pull request without prior consultation with us.

If you want to report an issue with libtsm or seek support, please use the same communication channels (email or GitHub issue).

Tests

Central to our tests is the comparison of libtsm with the MATLAB TSM Toolbox. To this end, please execute tests/test_matlab.m in MATLAB to create the MATLAB output. Then, you can use pytest for executing our Python test scripts. pytest is available when installing libtsm with the extra requirements for testing.

pip install 'libtsm[tests]'
pytest

Acknowledgements

This project is supported by the German Research Foundation (DFG MU 2686/12-1, MU 2686/13-1). The International Audio Laboratories Erlangen are a joint institution of the Friedrich-Alexander Universität Erlangen-Nürnberg (FAU) and Fraunhofer Institute for Integrated Circuits IIS. We thank Edgar Suarez, El Mehdi Lemnaouar and Miguel Gonzales for implementation support.

Metadata

Release files for libtsm 1.1.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for libtsm 1.1.2
File Size Uploaded
libtsm-1.1.2.tar.gz 17.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for libtsm 1.1.2
File Interpreter ABI Platform
libtsm-1.1.2-py3-none-any.whl Python 3 none any Details

Total release size: 34.5 kB

Release files / libtsm-1.1.2.tar.gz

Download URL libtsm-1.1.2.tar.gz
Size 17.9 kB
Tags Source
SHA-256 checksum
How to use checksums
fa508f2b57c29bfffdaf3fed2faf9094430434edcf06605c46374a89ab32a8ea
BLAKE2b-256 checksum
How to use checksums
613c7bc06bfe1e6a2ffaef41a884c7335cb49f11e30a189d2053ed13660867c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.10

Release files / libtsm-1.1.2-py3-none-any.whl

Download URL libtsm-1.1.2-py3-none-any.whl
Size 16.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9c33591c063db1f6a5722f73fd86ba602e04786bb54aa52139913b59ad910b14
BLAKE2b-256 checksum
How to use checksums
2bedeaca67f13e3b878e79af784ac2d2ba99d4ef5c839cacead3323b2641e641
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.10

Release history Release notifications | RSS feed

This release

1.1.2 This release

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page