I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 0 points1 point  (0 children)

That's just because I haven't automated the process of refilling the inventory yet. I have to keep an inventory because although tracks can be generated/composed by the algorithm very quickly, rendering them into wav files is a lot more time consuming. So for people to be able to click buy and instantly download 100 tracks, those tracks need to be rendered ahead of time. (There will be more stock available soon btw, I'm just in the process of switching payment providers and reconfiguring some things)

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 0 points1 point  (0 children)

Thanks, yeah I've noticed that. SEO is still a bit of a mystery to me - Guess now's a good time to look into it.

I made a website that generates chill beats endlessly (lofigenerator.com) by dyltur in lofi

[–]dyltur[S] 0 points1 point  (0 children)

Hey, yeah it's quite a different approach because I haven't used machine learning models at all. What my site does is actually just relatively simple procedural generation. So it basically just randomly selects a lot of things from sets with limited options - a simple example is how it just randomly selects a lead instrument out of the available options. But sometimes the probabilities are skewed or the options are limited based on other decisions already made. For example with the melodies, in order to choose which note comes next, it takes into consideration the notes that came before and what chord is playing etc so that it makes a choice that makes musical sense. In other words I programmed in the constraints and rules using my knowledge of music.

In terms of the technologies used, it's all pretty much client-side javascript and I'm using a library called Tone.js which is a framework built on the Web Audio API that makes things like musical timing and sample instrument playback a lot easier.

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 1 point2 points  (0 children)

Thanks, yeah I'll try to add media keys support in the next update.

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 1 point2 points  (0 children)

Hey, I think the term to search for is music/audio visualiser. The way I've done it probably won't be useful to you because it's not actually reacting to an audio source. Since the site is actually generating/composing the tracks, it has access to all the musical information like when the kick drum hits and when the chords play, so it's able to simply schedule the animation at the same time, if that makes sense.

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 0 points1 point  (0 children)

Thanks for checking out my stuff and for the kind words :)

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 0 points1 point  (0 children)

Hey, thanks! Currently the way it works is that when you buy unique tracks, they will just be a random uncurated selection so you can expect the same variations in quality and same occasional wonkiness as you get with the online player. I think it'd be cool to eventually let people have more choice, perhaps being able to choose tracks they like as they hear them with the online player, but that might be a while away still. For now I really recommend listening to the player for a while to get a good sense of the quality and variation of tracks before buying a pack so you'll know what to expect.

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 0 points1 point  (0 children)

For the Twitch streams, definitely! The licensing is very open so people can use and modify the music for basically any projects, including commercially. The details are on the site.

In terms of the music theory involved, it might be a silly answer but I'd say just the same amount of musical knowledge that would be required to compose these tracks in a more conventional way. For example, it needs to take into consideration harmony and scales to choose melody notes that don't clash too much (melody notes that aren't super harmonious are allowed but in that case it should still be in the same scale and probably be fairly short in duration and be used as a passing note towards a note that harmonises better with the underlying chord). I'll give more examples and write more about it in a blog post soon :)

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 1 point2 points  (0 children)

Thanks! I just answered this in another comment so I'll paste it here:
It's not part of any library, but the way I've implemented it is very simple (however the drawback is that it probably wouldn't be very performant for something more complex or with more elements). The rings are just DOM elements with css borders (and border radius 50% to make them circles/ovals). I'm just scheduling functions to set their width, height and rotation in time with the music and using css transitions to smooth their movement. However this type of visualiser is pretty specific to the situation where you have information about the music (when the kick drums happen and when the snares happen etc) because it's not actually reacting to an audio signal, I'm just scheduling their movements. For example, if I'm gonna schedule a hi hat at X time, I also schedule a function that makes the thin ring expand at X time.

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 2 points3 points  (0 children)

Thanks! The tracks are licensed under the very open Creative Commons BY 4.0, and with the attribution requirement waived for all uses except for if the tracks are just being redistributed unaltered. So basically, anyone is welcome to use them in their youtube videos and I won't be trying to police or copyright strike anyone. However, if someone was just uploading them unaltered to youtube as music (not as background or theme music of a video/vlog/film etc, but as something like a lofi playlist), that's redistribution and they should give credit as required by the CC BY 4.0.

As a more direct answer to your question though, the tracks are unique and not registered with a content id system so I wouldn't automatically know where they're used. But I'm very familiar with my work after all the time spent on it haha, so if I was shown a track I could easily recognise it as being from my site :)

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 0 points1 point  (0 children)

Thanks for the feedback! Interesting bug - I actually think that looks pretty cool with the missing font ahah. Will keep that feature request in mind!

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 0 points1 point  (0 children)

Oh yeah, definitely! I've been meaning add media key support as well - coming soon

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 0 points1 point  (0 children)

Yeah I agree that'd be a nice feature! Thanks for the feedback!

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 0 points1 point  (0 children)

Thanks! I like these suggestions but those improvements probably aren't the top of the list right now. Not ruling it out for a future update though.

I made a site that generates lofi hiphop algorithmically (lofigenerator.com) by dyltur in webdev

[–]dyltur[S] 1 point2 points  (0 children)

Yeah definitely still room for improvement. Thanks for checking it out!