basharovV / musicat

A sleek desktop music player and tagger for offline music 🪕. With gapless playback, smart playlists, and a map view! Built with Svelte and Tauri
GNU General Public License v3.0
420 stars 24 forks source link

DSP plugins #16

Open timvancann opened 2 months ago

timvancann commented 2 months ago

No an issue, but a feature request, if that is in line with your vision of the project.

I "was" building my own music player in Rust (using Dioxus) until I found this awesome project. I was playing with implementing DSP plugins like the old Winamp plugins to:

https://github.com/SamiPerttu/fundsp looks promising to implement those features.

basharovV commented 2 months ago

Hi! There is already a basic looping feature in the waveform view, which you can open here:

image

Click and drag to create a loop, click again on the loop region to remove it. It definitely needs more work, but it's a start.

And yes, a DSP layer would be a great addition and would open up many possibilities. I would use pitch shifting to learn songs in different keys for example :) Also an EQ would be nice.

It looks like fundsp doesn't include time stretching or pitch shifting yet, but it's on the dev's TODO. What did you use in your player? I don't know much about time stretching algorithms but do some research. Thanks for the suggestion!