5 ms·
For musicians and devs, it's a good hint that Markov chains are "good enough" for most interesting music applications, ML/AI doesn't typically yield better resu
by haywirez 8y ago
For musicians and devs, it's a good hint that Markov chains are "good enough" for most interesting music applications, ML/AI doesn't typically yield better results. Happy to see this on the front page!
- mturmon 8y agoI don't disagree with this observation, but I wanted to mention a counterpoint. Eno's "Music for Airports" famously uses a system of multiple tape loops that produce sequences of different periods. As you listen, you can hear phrases that occur nearly together and then later, well-separated in time, as the periods of these loops go in and out of phase: "One of the notes repeats every 23 1/2 seconds. It is in fact a long loop running around a series of tubular aluminum chairs in Conny Plank's studio. The next lowest loop repeats every 25 7/8 seconds or something like that. The third one every 29 15/16 seconds or something. What I mean is they all repeat in cycles that are called incommensurable — they are not likely to come back into sync again." This interaction of periods will have long memory. (If the tape lengths are L and L+d, for small d, then the repeat time could easily be as long as L*(L/d), and even longer if d does not divide L evenly.) Thus, it is very different from what you get with a Markov chain.
- twic 8y agoThere was an interview with Eno in Wired in 1995 [1] that i still think about sometimes. Amongst other things, he talks about lifting himself to the next meta-level of composition, where he doesn't write music, he writes rules for a box which makes music: Q: If I could give you a black box that could do anything, what would you have it do? A: I would love to have a box onto which I could offload choice making. A thing that makes choices about its outputs, and says to itself, This is a good output, reinforce that, or replay it, or feed it back in. I would love to have this machine stand for me. I could program this box to be my particular taste and interest in things. Q: Why do you want to do that? You have you. A: Yes, I have me. But I want to be able to sell systems for making my music as well as selling pieces of music. In the future, you won't buy artists' works; you'll buy software that makes original pieces of "their" works, or that recreates their way of looking at things. You could buy a Shostakovich box, or you could buy a Brahms box. You might want some Shostakovich slow-movement-like music to be generated. So then you use that box. Or you could buy a Brian Eno box. So then I would need to put in this box a device that represents my taste for choosing pieces. [1] https://www.wired.com/1995/05/eno-2/ https://www.wired.com/1995/05/eno-2/
- pcf 8y agoThis should be doable? You could feed your entire catalogue into the machine, and have it start generating music. For every pass, you could listen to the created piece and tell it "I would not make anything like element X, because of [specific reason], so take that out." Enough of these passes and detailed removal of elements you wouldn't create, and you should get closer and closer to a machine that would be your musical clone.
- jimmcslim 8y agoHow well would it cope with the evolution of an artist's ouevre; would it recognise that certain sounds are from a certain period?
- TheOtherHobbes 8y agoYou need a machine description of "element" - which turns out to be a lot harder than it sounds.
- deleted 8y ago[deleted]
- AgentME 8y agoThis is missing the complexity to a lot of music. Swap "music" in your post for "books" or "software" or "human interactions" and maybe the skipped complexity becomes obvious. What if the key ingredient to someone's music is a long over-arching structure throughout the song of highs and lows following the emotional progression of a predictable 3-act story? The software would need to be capable of recognizing and synthesizing and tuning that kind of high-level element and surely many others like that. Even songs that are made up of a few repeating tracks overlaid probably have high-level qualities like that the artist tweaks the setup until the end results meet the high-level goal they were aiming for. I'm sure a musician who was also a programmer who understood their own tastes and creation process well enough could currently create something like this for a specific genre, but I think we're very far from a one-size-fits-all generator.
- 8y ago
- kbenson 8y ago> What I mean is they all repeat in cycles that are called incommensurable — they are not likely to come back into sync again. I remember a few years back there was some quick guide to visual design that I saw that recommended this. To provide what appeared to be randomness over repeating samples (or at least prevent easy pattern matching in the brain which is distracting), take three images that can of different prime number lengths, then repeat each one and put them next to each other. I believe the example used was the ruffles in a stage curtain, where there were a few layers. Each layer was a repeating image of length 3, then length 5, then length 7 (but the image itself had some variations between ruffles within it). You won't get a point where all the images all stop and start at the same point (a dead giveaway of the pattern) until length 105.
- emzo 8y agoHere's the article you're referring to - https://www.sitepoint.com/the-cicada-principle-and-why-it-matters-to-web-designers/ https://www.sitepoint.com/the-cicada-principle-and-why-it-ma...
- kbenson 8y agoI actually figured there was a good chance someone here would reply with it, since I believe I originally found it here either from a submission or a comment. Thanks!
- xinsight 8y agoI remember that article too! I used the same technique to make a convincing, non-duplicating flame-flicker algorithm for an led. 3 variables, all looping to different prime numbers and the sum of the 3 variables was the led intensity.
- droobles 8y agoI feel like the Markov chain could also apply go higher level song formula, with probability weights for choruses, verses, bridges, breakdowns, solos, etc. I prefer to just write a bunch of riffs and see where they grow organically, but it seems the chain would be a great tool to piece some of those ideas together or give an indicator of where they could go when a creative block is hit.
- haywirez 8y agoCoincidentally working on this right now...
- droobles 8y agoLet me know how that goes! I know as a songwriter it'd be a great tool to have on hand.
- haywirez 8y agoWhat you describe is exactly what I'm building - https://songsling.io https://songsling.io Didn't want to explicitly promote it here in the thread, but I'm building it to serve as a general music-content engine for artists (also for my own music, let's be honest) that will let you upload composition parts and the player will put them together on the fly. It already has interactivity built in where you can serve a different version of a track based on changing inputs you connect from your Internet presence etc. Plus, you can DJ with it, it supports smoothly changing playback speeds. It needs to happen.
- bjs250 8y agoJust wanted to say that this looks super dope. Love the aesthetic as well.
- fwip 8y agoOne use-case that immediately jumped to mind for an API plugin is integration with popular games for game streamers to use. Something that detects that you're in the middle of a gunfight vs just chilling in the lobby, and selects/modifies the music appropriately. Some video games do this automatically with their in-game music, but not all, and many streamers prefer using other music to avoid it getting stale.
- cauthon 8y ago> it's a good hint that Markov chains are "good enough" for most interesting music applications, ML/AI doesn't typically yield better results Are Markov chains not considered ML/AI? I would consider them to be a standard part of the field
- ssalazar 8y agoHm, it works well for this particular song/the genre of generative music but it easily hits limits with many other types of music people might want to work with. More advanced ML/AI techniques are needed to reason about sound in a semantic/latent space, which a stock Markov model will not do.