I would like to create an application that would be able to take various mp3 files acting as music samples (or layers of a track) and create a new mp3 file that combines them. I know their are many Javascript libraries that allow audio manipulation from the browser (WebAudio, Tone.js, Howler.js...) but I'm looking to do this in the backend, without having the user listen to the track created...
My end goal is to create a page that could mint generative audio NFTs. So my front end would be implementing all the web3 functionalities necessary for minting, which then would send a request to the backend for generating the audio file to be minted. In the backend, I would have all the possible sound layers, and then I'd like to write a program that would pick and choose some of these layers and then create a new mp3 file from them. That generated mp3 file would then be the NFT to be minted.
I found many articles and tutorials on how to create a collection of generative art NFTs using the Canvas library and I'm wondering, how would I do something similar with audio? What are some libraries I could use to accomplish this?
I'm not a super experienced developer so I hope that what I'm asking makes sense. Any pointers or recommendations would be highly appreciated.