HN user

zhinit

99 karma

Master's in CS from UPenn Bachelor's in Math from Towson Five YOE developing financial models, doing data analysis, and assessing risk at KKR and Transamerica Currently a teaching assistant at UPenn for machine learning and object-oriented programming, and a course development assistant for web development.

Posts4
Comments23
View on HN

For 1) another commenter had a simmilar idea. I think a GAN would be able to do this. It's just a matter of collecting the data

For 2) SUNO's stem separation is pretty good. The open sources ones (like spleeter) are also not bad, but they are pretty hit or miss.

For 3) This is a really cool idea. The deep dream images produced the fur and eyeball textures because they used imagenet data which had a bunch of dogs and other animals in it. The trick would be finding a good data set to use for this. May be there is a public source of animal sounds floating around you could try this with.

And yeah think people 100% generating songs is pretty wack, but I could see why it would be fun to someone who is not a musician.

The weights are ~300MB and are on hugging face here. https://huggingface.co/zhinit/kick-gen-v1

It was a lot of work to get a good DSP to work on the web hahah. Yes, I am writing the DSP in C++ and compiling to WASM. Im using multithreading so the audio work is done in the AudioWorklet while the UI is run in the main thread. I was thinking of writing another article on this because it's pretty interesting and a bit complex.

I sound designed some of the kicks myself and some of them are from sample packs. I just renamed them all to have German names.

If I wanted the model to run completely in the frontend I would need the user to download 300MB of weights and it would probably be tricky making sure it works on everyone's hardware. So I though about this but it didn't seem like the best option. I'm pretty sure it is possible though.

And yes I put rate limiting so no one goes crazy on my credits.

Im glad you're enjoying it!

Im not selling a product here so I'm not going to worry about it for my purposes.

This is the hot topic in AI ethics.

Is it just learning the same way that a human learns from hearing songs on the radio and playing them, or is it just a compression algorithm? There is not a clear answer here but it seems like the legal system so far is letting things slide and agreeing with the former argument.

(This can also be applied to other areas like open AI reading the NYT)

To do this, I think you are right that you would need to 'downgrade' modern recordings to sound old so that you have both sides of the training data covered.

This would be a cool project to work on. Ideally you would buy some vintage gear and then run the audio through both, but that would be very expensive. You could may be find some vst emulations though and get decent results.

Seems like if you build some more scaffolding around it, it wouldn't be bad. I think AI video isn't quite there yet so you probably would want to lean into that. For example you could ask for an animated or cartoon music video so the real shots don't look weird. Also if you gave it some guidance on what a good music video is like it would probably help as well. But yeah idk may be that's not the goal here.

the spectrograms are 128x173 (128 mel frequency bins by 173 time frames) the encoder is downsampling 4 stages of stride 2 convolutions so it halves dimensions 4 times

0: 128 x 173

1: 64 x 87

2: 32 x 44

3: 16 x 22

4: 8 x 11

Then i used 4 separate channels.

This was somewhat arbitrary due to the local training constraint. This would be a hyper parameter worth tuning if I had time to dig into this more.

I trained this a few month ago and don't remember exactly what I tried before I arrived here, but I only ran the whole process 2 or 3 times because of how long it took to train. Hope this answers your question!

For sure.

If you are curious I used a NVIDIA GeForce GTX 1660 SUPER So to be exact, it came out 7 years ago (I upgraded at some point on this desktop a long time ago and didn't remember the exact year) (I updated the article to reflect this now)

This cost $230 new and you can get one now for $100 which I don't think is too out of reach.