While I find this sort of demo very impressive I must confess to find little art in it and I'd compare the experience to reading a long sentence which is very tiring with no excitement or tension and one's wondering if there's ever going to be a point to it or whether it's just going to fizzle out and one's left with the unsatisfactory feeling of having experienced nothing.
That's such an interesting thought. I've played some procedurally generated dungeon games in my time and I've always thought it was interesting to have a new experience but there was always that nagging feeling of aimlessness.
So in order for a machine to be able to craft an interesting narrative for a human, I think it would need to take into consideration the temporal element of how humans consume things and how that impacts the experience.
In a dungeon, that's when you go down ten different dead ends and you are losing interest.
In music that's probably a long drawn-out melody that ends abruptly, like what you're talking about.
How would something beyond that be modelled in a program, though?
I guess the question is does AI get used to generate a final product or produce building blocks of a final product. These midi pharses can be extremely useful to a producer. i.e. remix with your own beats etc.
Very nice. Curious about the licensing for the compositions because I could not find information. Seems like a critical component of a music composition web application from the user's perspective for many uses beyond just listening...and even for some 'just listening' contexts.
Thank you and yes, good question. The generated compositions are completely royalty free and can be used commercially - they do not require any attribution (though attribution always appreciated). I should add it to the website.
Since the output of an algorithm can't be copyrighted, does it make an sense to apply a license to it? You can't waive rights that you don't have.
> 503.03(a) Works-not originated by a human author.
> In order to be entitled to copyright registration, a work must be the product of human authorship. Works produced by mechanical processes or random selection without any contribution by a human author are not registrable.
I'm not a lawyer. If I were, that phrase would give me a toehold or restless sleep depending on which side of the pile of money I was on...ok, actually if I was on the "hands on the money side", I would just advise avoiding the risk because that's what lawyers are expected to do.
Or to put it another way, the argument that works created by the program are not copyrightable might tend to be more expensive than simply paying licensing fees in a business context.
If there is a contribution from a human, then it would be from the user who entered some parameters and ran the program, not the author of program. Therefore the copyright would belong to the user, which is fine.
The only way the copyright could belong to the author of the program, is if the program contained copyrighted material that it copied directly into the output.
For example, if the program contained 1000 prewritten melodies, and randomly selected one and copied it into the output.
Not sure why you ask for Chrome, however, as your site works perfectly in Firefox too. Let's not go back to the days of "Made for Internet Explorer 6", eh?
Thank you! You're right, though there are a few issues with the extra controls in FF right now, difficult to drag the volume sliders - only text input works.
When I read Hawkins's book _On Intelligence_ back in the mid-2000s I had thought it'd be cool to generate music by having the system predict what was novel and what was familiar. By mixing some novel and familiar notes/rhythm/tempo/timbre/percussion into the stream I should be able to make new music from scratch. I was annoyed that so many systems trained blindly on existing music instead of using first principles to generate something (although existing music seems useful for seeding the novelty/familiarity parameters). For games especially it would be nice to turn up or down different types of novelty to match what the player is doing.
However, as often happens, I got distracted before I got there. I learned Pure Data, and then got into audio synthesis, and then got into signal processing, and that led to procedural map generation … :)
Do you plan to make an API available in future or make it a library? I work on a DAW, and it would be a nice feature to auto generate a song for the user when they start, rather than just giving them a fixed demo song. Any plans to support other genres? Please email me at roland@tracktion.com
Thank you! The algorithms are universal and not tied to any particular modality (rhythm/melody/harmony) or particular tuning though they can exploit certain given relationships eg consonance if the algorithm is given knowledge of them. Exploring other tunings and making them available in the UI is definitely on the list. The core algorithm works by creating repetition/variation at multiple levels over time which is modality agnostic.
You're welcome! Yes, 'fewer controls' is probably better. Re: API/SDK, which would be more suitable for you, API or SDK? What platform do you use, unity/unreal etc., or are you talking about a web game? And would you want rendered audio or note data, such as MIDI from the API/SDK? And if SDK, what language, or maybe it's not important? Good to get ideas so I can plan the most useful delivery mechanism for the most people.
It would be nice if you could provide the ability to create an account and save songs to it. This way you could go back and edit your compositions later, would probably increase repeat traffic.
Yes that's the plan for the next release. The site currently is just a demonstration of the tech. To be more useful as you rightly suggest it needs to be more of a tool where people can create songs or fragments and edit and save etc.
Its straight up webaudioapi making use of the fluid soundfont - see credits at bottom of website. I have not used tone.js though I have come across it.