8 ms·
Generative.fm – Endlessly unique ambient music
- dmit 8y agoThe source code is available on GitHub: https://github.com/generative-music/generative.fm https://github.com/generative-music/generative.fm
- pryelluw 8y agoWonderful project. Beware: my top of line android phone rebooted itself after a minute or so of music.
- saagarjha 8y agoI'm really excited for where this can go. I'd love for it to be possible to feed a generator like this with the style of music I like to have on in the background and then it interpolate an "infinite stream" from there–naïvely, I feel like certain genres (e.g. progressive house) would be ideal for this kind of treatment since they seem to be inherently quite structured and recurrent.
- irln 8y agoThe content is amazing. Concentration, insomnia, etc. Is it difficult to build systems?
- jaquers 8y agohttps://github.com/generative-music/pieces-alex-bainter/blob/master/packages/piece-observable-streams/src/piece.js https://github.com/generative-music/pieces-alex-bainter/blob... Difficulty? hard to say, looks like knowledge of the various libs used is pretty critical, but pieces look to be between 100-200 lines.
- rovyko 8y agoSimple, but pleasant. This is how it starts. It might take some time, but I think most ambient music in video games will eventually be procedural. EDIT: Just want to say that these are better than I expected. As good or better than about half the ambient music recommendations I get on Spotify.
- rcthompson 8y agoYeah, the first thing I thought of when seeing this was video game BGM. Ideally you would want some way to smoothly change the parameters over time as the player moves from one zone to the next, although you could probably cheat it pretty well just by having a separate track for each zone and cross-fading between them.
- saagarjha 8y agoThis was supposedly something that No Man's Sky was doing, was it not?
- sjwright 8y agoAnd Monkey Island 2—though that wasn’t generated, it was just a large pile of musical glue that let the music flow from one area to the next.
- mypalmike 8y agoWe did a similar thing with System Shock 2 for ambient sounds/music. We had zone triggers which fed into a DSL for queuing up/randomizing/looping audio segments. I built the runtime on top of an existing virtual-machine style audio playback system which had been developed for flight sims, where it was used to stitch together voices for ground control. I was a fairly junior dev at the time, and IIRC I was not able to implement the requested cross-fading feature in time to ship. Fortunately, the silence between tracks worked pretty well with the desired atmospheric effect.
- applecrazy 8y agoYes, their sound designer Paul Weir did a GDC talk on the sound engine that they built for the game. It included things like procedural riffs on an existing non-procedural soundtrack, advanced spatial SFX, and had a demo of the engine in action. Edit: here's the talk: https://www.youtube.com/watch?v=zKJ_XuQjjiw https://www.youtube.com/watch?v=zKJ_XuQjjiw
- 8y ago
- vcavallo 8y agoIf you like this type of thing and want to go darker/heavier, Iron Cthulhu Apocalypse and Cryo Chamber are personal favorites of mine for “music” while programming.
- ehnto 8y agoThe Red Strings Club OST and the calmer Deus Ex soundtracks are really excellent for programming too. The mood I attribute it to is "competent thoughtfulness with light pressure toward action". I know that is a silly way to put it, but that is music for you. Similarly good are parts of the Fallout OSTs and Minecraft OST. I have listend to a bunch of game and movie OSTs for films and games I haven't even watched, it's a great source of programming backing tracks.
- jlborxes 8y ago> competent thoughtfulness with light pressure toward action I am definitely stealing this for my twitter bio.
- intopieces 8y agoThis is great, I paid for a lifetime membership to brain.fm but the app is still broken on iOS. If these can play for longer then 25 minutes (where brain.fm dies on mobile for me) then I’ve found my go-to.
- joshschreuder 8y agomyNoise is good on iOS, it's not exactly like Brain.fm but has a whole bunch of different sounds. I think the author is a member here and that's where I heard about it a few years ago. Edit: and it absolutely does play more than 25 mins, I quite often leave it on overnight playing rain noises and it's fine.
- kylek 8y agoCame here to mention mynoise. Absolutely love the website (plays all day in my home, I've spent an embarrassing amount of time curating my tunes) but think the app needs some work. If the author does indeed peruse HN, I've got a few suggestions for sounds, but I'm sure you're completely inundated by such things :) Thanks!
- OccamsMirror 8y agoDamn how'd you get that lifetime membership? Seems they don't offer that any more.
- netgusto 8y agoIt was a special offer 3years ago to celebrate brain.fm hitting the HN front page. https://news.ycombinator.com/item?id=11148896 https://news.ycombinator.com/item?id=11148896
- thr0w__4w4y 8y agoYikes. Also have a lifetime membership, don't recall the 25-minute hiccup. Probably haven't used the app in the last 30 days, did it become broken recently? Also I've had nothing but positive experiences when emailing for help / support / suggestions, have you tried that? You probably did the lifetime membership when the intro / debut post was on HN a few years back... not sure if the app developer(s) are still active on HN (probably?) but you could probably contact / post / follow up that way too.
- jcutrell 8y agoIs this currently working on mobile? I’m not getting audio but seeing indications that it is playing, so maybe it’s just not accounted for. I love Brian Eno, so I’m super excited to see something like this pop up. Would love to contribute generative systems!
- saagarjha 8y agoDoesn't work for me at all on Safari, so it might be an issue with WebKit?
- nchase 8y agoAre you on iOS? I’ve had a ton of problems with iOS and WebAudio (really anything that uses Webkit, but the issues aren’t as bad on macOS). Didn’t play for me either on this device, but I wasn’t surprised given previous experience.
- jaquers 8y agoWas able to get it to play in iOS, but Safari crashed after 1m or so. Not sure if that's cause I let the device lock or what.
- snorlaxle 8y agoWorking for me on Android Chrome.
- mikeash 8y agoTry flipping your ringer switch. For some reason that silences the music for me.
- orpheline 8y agoWorked for me on Firefox Focus. Which is kinda surprising, considering how often media doesn't work...
- jamestomasino 8y agoThis is wonderful! I've been listening a few minutes and I think I'm going to hold onto this link for writing. Well done.
- person_of_color 8y agoAny recommendations for a textbook or scholarly work on generative music?
- XnoiVeX 8y agohttp://euterpea.com/haskell-school-of-music/ http://euterpea.com/haskell-school-of-music/
- danra 8y agoCan’t wait to try it out on my desktop. On my mobile (iPhone), I get clicks and other artifacts on playback, which increase when scrolling the view, which I guess indicates samples not being generated fast enough.
- williape 8y agoExcellent execution. I could easily see this used with contextual seeds/triggers in a VR experience.
- IgorPartola 8y ago“Human music. I like it.” ~ Jerry Smith
- alexbainter 8y agoHey folks, I'm the creator of the site and the music on it. I'm happy people are enjoying the music. I see some people are having a rough time on mobile devices so I wanted to help with that. I have found that iOS Safari will mute the site if you have your iPhone in silent mode (there might be a way for me to fix this but I haven't explored it much yet). However, you'll probably find that many of the pieces snap crackle and pop a bit on mobile devices. I'm looking into ways to improve that but for now unfortunately the best advice I have is to try it on your desktop or laptop or to try some of the less complex pieces towards the end of the list. I really appreciate the feedback; I've only done so much testing with the devices I have available so hearing from more people with a larger range of devices is super helpful. Feel free to open issues on Github as well: https://github.com/generative-music/generative.fm/issues https://github.com/generative-music/generative.fm/issues
- yuchi 8y agoThis is a fantastic piece of software. I’ll use it a lot while programming. The generated performances are great.
- XnoiVeX 8y agoYou may find this useful. http://euterpea.com/haskell-school-of-music/ http://euterpea.com/haskell-school-of-music/
- _Codemonkeyism 8y agoReally nice design, was there any inspiration? I would like to use something like those squares to illustrate an ebook.
- alexbainter 8y agoThanks, I have to admit I really just ripped off Google Play Music's interface. The square icons were inspired by the album art for Ryuichi Sakamoto and Alva Noto's "Virus" series of albums. I made a program which generates them for me. The way it works is to split the square into squares, rectangles, and triangles, and then randomly choose which to stroke and fill.
- vaastav 8y agoThis is an amazing project! Kudos
- ComodoHacker 8y agoLooks like it's been generated client-side. While impressive, it's also CPU demanding. Unfortunately, muttering fan on my (quite dated) notebook kind of ruins the experience.
- foxes 8y agoWith this and other generated music, often it feels like you are only capturing local information about what it means to be a song, and maybe missing something global. For example things can feel a bit disconnected, chords and progressions that don't "transition" properly. To me, that is a bit unpleasant. I feel like that means you need to give it some extra constraints, but this might depend on the style.
- spiralganglion 8y agoAgreed, and I think that speaks to the difficulty of being sufficiently grounded in both worlds — music and programming. To make generative music that is rich in detail and follows the thousands of conditioned expectations of listeners and that has a narrative arc ("global connectedness") at multiple time scales, you need that grounding, interesting & unexpected constraints, and a lot of practice. I make generative music (sometimes professionally), so I'll share what constraints I've found helpful. None of these are rules, just battle scars. • Embrace determinism, especially at first. It can be tempting to lean-in to the essence of generative music and have randomness reign supreme ("it goes on forever and never repeats, different every time"), but that makes it very difficult to track the consequences of your decisions as you're composing the system. The stability of determinism really helps you build up a system that can produce minutes or hours-long narrative arcs within the music, and avoid that "lack of global connection". It's this stability that allows conventional musicians to compose music that holds listeners' interest for hours. Hang onto that, and then slowly release it in small, controlled increments. • Pick a genre, reverse-engineer it, write down its rules, and then turn those into systems. Don't just start blue-sky inventing systems that make music, or it won't scale up to a high degree of intricacy, and the result won't be able to hold listener interest. • The tones and textures matter more than how you use them. So if you're using samples, make sure you have samples that can elicit and maintain interest and attention. That means variety — multiple instruments, multiple aesthetics, variations of every sound. If you're using synthesis, spend a good portion of your effort making sure the sounds are lush and varied and convey the right aesthetic. It's powerful to mix both samples and synthesis, and to apply dynamic filtering like reverb or EQ, and that too should be driven by a procedural system. Ultimately, tone and texture are your signifiers of quality and maturity, sophistication, professionalism, so pay them special attention.
- ubu7737 8y agoIt seems to generate the elements of certain styles, but there is no ligature or movement in the overall music at all. I suppose this meets the definition of "ambient" but it is not really suitable for the genre.
- g3ol4d0 8y agoWow, that's really amazing!
- spiralganglion 8y agoI'm a big fan of procedural/generative music, and have created some of my own. I tend to take a very different approach from Alex, embracing determinism rather than infinite variations, trying to make something more musically complex rather than ambient. If you're interested, the most recent piece I've made is here, accompanied by a visualization of what's happening and a detailed writeup explaining how the system works: http://ivanish.ca/diminished-fifth/ http://ivanish.ca/diminished-fifth/
- kkaranth 8y agoThis is very cool! Some things were broken for me(On Firefox 65.0.1, Ubuntu 18.04): * Pause button doesn't immediately pause, the current note(?) ends over a period of time before pausing * Fullscreen, and a few other buttons don't work. Also, I can't tell if my mouse click even registered on the button Very interesting project nonetheless, and the music generated is quite nice to listen to. I particularly like how well placed the silences are. The percussion does need some tuning, like you've mentioned.
- spiralganglion 8y agoThanks for that feedback! The pause button is actually an interesting design decision. The way it works currently allows the system act more like a physical instrument — if you hit a bell three times and then stop, the bell keeps ringing. This has some utility when the piece is being used in a public setting, or when being accompanied by human musicians playing live. That's why there's a mute button. Though you raise a good point. For the web, I should probably change that so it's in keeping with digital expectations, and pause the sound as well as the performance.
- deanalevitt 8y agoThis is really cool!
- matthewhartmans 8y agoAwesome job mate, I'm loving this!
- bibyte 8y agoI can't believe how good those songs are and it's all computer generated. Thank you for creating this.
- TaupeRanger 8y agoWell...no...it's definitely not "all" being computer generated. The human creator made all the sounds and then gave the program some rules for combining them and manipulating them based on the human's aesthetic and compositional preferences. On the spectrum between human-generated and computer-generated this is very close to the human side.
- Lerain 8y agoThis is absolutely fantastic and exactly the kind of music I love to hear while working. It has already conquered a rare spot as one of my pinned tabs! Wouldn't this be a great usecase for a tiny OSX tooolbar-app that lets you use your media-controls to play/pause and move between songs? Offer that with a free tier of one or two songs and upsell the rest for a few bucks (with a 1min demo-tune-in for unpurchased songs). Oh, and throw in a few subtle but noticable war drums when ever a new email arrives, that would be brilliant! ;)
- edoo 8y agoI imagine someday you'll be able to tie this to a neural sensor for a feedback loop that enables machine learning to generate the exact music for the exact mood you want.
- oysterfish 8y agoYou don't actually need a neural sensor for that, right?
- edoo 8y agoFor targeting general levels of physiological stimulation probably not. You might be able to get away with basic vital signs, maybe some sort of stress detection. With a neural sensor though it might be able to lead you into deep meditative or even lucid dreaming like states.
- retsibsi 8y agoThanks for sharing this! I just spent, I'm not sure, maybe an hour and a half listening to it ('Trees', to be specific) while reading. I usually struggle to concentrate for extended periods, but this really seemed to help. Just the right balance to be calming and undistracting, but interesting enough to occupy the part of my mind that would normally jump out every 10 minutes and suggest a change of focus.
- muvek 8y agoWe use contextual cues to help in recalling memorized information. If I learn/study about ABCD while listening to music FFF, I'll more easily recall ABCD while listening to FFF. This is why I don't see "endlessly unique" as something inherently good. It would be cool, however, to play it for 1h (or so), save it and then re-play it whenever.
- cuddlecake 8y agoI love `Trees`. Listening to this along with the clicking sounds of my coworker's keyboards makes me feel like I am in a rainy forest.
- kirbysnacks 8y agoDelightful! Do you accept submissions?
- eismcc 8y agoCool! Recommend removing “never played” and using something like “popular” on more played. This way new content doesn’t look like no one likes it.
- O_H_E 8y agoI believe it means you "never played" it yet
- vdesibabu 8y agoPlease add cast support (google/Amazon) and it's something's I would live running all the time in my house
- zengid 8y agoI like it, but could there be some more instrumental elements? Ie, not just a piano, or a droning synth, but a piano with a droning synth!
- gregknicholson 8y agoThis is great. It would be nice to have a way to auto-play each piece (something like https://somafm.com/player/#/now-playing/dronezone https://somafm.com/player/#/now-playing/dronezone) so that I can start the music automatically (e.g. from a script) without having to click.
- psteinweber 8y agoI'd use this too :)
- bykhun 8y agoIt is very good! Tried it yesterday, and opened again today. Now I want is as a soundtrack for my life :D You should totally publish a Desktop app which loads on system boot! Also, did you think of partnering with one of these relaxation or meditation apps?
- bykhun 8y agobtw, I can help build and publish a small iOS app, if you're interested