---
title: Updates for TarsosDSP
canonical: https://0110.be/posts/Updates_for_TarsosDSP
markdown_url: https://0110.be/posts/Updates_for_TarsosDSP.md
id: 503
published_at: '2023-01-20T00:00:00Z'
updated_at: '2023-01-27T15:51:31Z'
author: Joren
tags:
- name: Code
  markdown_url: https://0110.be/tags/Code.md
- name: Music Information Retrieval
  markdown_url: https://0110.be/tags/Music%20Information%20Retrieval.md
- name: TarsosDSP
  markdown_url: https://0110.be/tags/TarsosDSP.md
- name: UGent
  markdown_url: https://0110.be/tags/UGent.md
---

# Updates for TarsosDSP

TarsosDSP is a Java library for audio processing I have started working on more than 10 years ago. The aim of TarsosDSP is to provide an easy-to-use interface to practical music processing algorithms. Obviously, I have been using it myself over the years as my go-to library for audio-processing in Java. However, a number of gradual changes in the java ecosystem made TarsosDSP more and more difficult to use.

Since I have apparently not been the only one using it, there was a need to give it some attention. During the last couple of weeks I have found the time to give it this much needed attention. This resulted in a number of updates, some of the changes include:

-   Change of the build system from Apache Ant to Gradle

-   Make use of Java Modules to make TarsosDSP compatible with the ModulePath introduced in Java 9.

-   Packaged the software into a maven compatible format, which makes it easy to use as a dependency.

-   CI with GitHub actions to automatically build and test the software.

-   Updated some examples shipped with the TarsosDSP. I have still still some examples to verify.

-   Improved handling of errors on reading audio via ffmpeg

<center>
<img width="60%" src="https://0110.be/files/attachments/503/tarsosdsp_gui_examples.webp" alt="Examples of TarsosDSP"><br>\
<small>Fig: The updated TarsosDSP release contains many CLI and GUI example applications.</small>

</center>
Notably **the code of TarsosDSP has not changed much** apart from some cosmetic changes. This backwards compatibility is one of the strong points of Java. With this update I am quite confident that TarsosDSP will also be usable during the next decade as well.

Please check out the updated [TarsosDSP repository on GitHub](https://github.com/JorenSix/TarsosDSP). <br>


![Flanger](https://0110.be/files/photos/503/tarsosdsp_flanger_effect.webp)

![Oscilloscope](https://0110.be/files/photos/503/tarsosdsp_oscilloscope.webp)

![Pitch estimator](https://0110.be/files/photos/503/tarsosdsp_pitch_detector.png)
