• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Tim Cooke
  • Campbell Ritchie
  • Ron McLeod
  • Junilu Lacar
  • Liutauras Vilda
Sheriffs:
  • Paul Clapham
  • Jeanne Boyarsky
  • Henry Wong
Saloon Keepers:
  • Tim Moores
  • Tim Holloway
  • Stephan van Hulst
  • Piet Souris
  • Carey Brown
Bartenders:
  • Jesse Duncan
  • Frits Walraven
  • Mikalai Zaikin

Algorithmic Music

 
Ranch Hand
Posts: 2937
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I've been making relatively outrageous amounts of money for a long time, cutting some Java code. But the bubble has got to burst -- it's insane to make $90K by just writing a few lines of code a day. Whatever it will be -- outsourcing, a sudden realization of employers that they can pay me half that much, or maybe even some generic piece of software that will make in-house programmmers irrelevant -- it's going to come to an end.

To supplement myself with some funds to buy bread and water, I came up with this idea: custom-made computer-generated music. You see, I am having a lot of trouble finding the music that I want to listen to. I have a few pieces that I like, but I get tired of them, and to find something new that I like takes me a lot of time browsing through the music samples, among which maybe only 1% appeal to me. But even that 1% is just better than the rest -- it's not anywhere near what it could be to satisfy me.

So, here is the idea. The prospective customer is invited into my office and is given multiple music samples to listen. I ask the the customer to rate the samples, on a scale from 1 to 100. The samples are short but numerous, and cover various aspects of music -- tempo, rythm, complexity, instruments, etc.

Now that I have the rating of the samples, I feed them to my software that analyzes the patterns that the customer likes and dislikes, and the software generates new pieces of music based on those patterns. I transfer the resulting compositions on a CD, the customer is happy, and I am rich. What do you think?
[ March 23, 2005: Message edited by: John Smith ]
 
Ranch Hand
Posts: 624
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
ahhh - you mean an automated record shop clerk! (N.B. You need a decent record shop for this to work)

customer: I like "X, "Y" and "Z" - but am looking for something different - Can you give me any hints?

store clerk: Have you heard any "A"? They're new on the scene but their work has been compared with "X". Or perhaps some old classic "B" might be worth listening to?


Of course in this internet age such personal interactions are increasingly rare, so if you're an Amazon customer just check out the "Customers who bought this also bought" section.

The only difference in the system you are proposing is the *generation* of music. Unfortunately computer composed music has a long and distinguished history of being total garbage, so unless you really think you can magically invent a decent "groove algorithm" then I'd stick to the $90K job

([insert jealous rant about the non-existence of IT jobs with anywhere close to that kind of salary around here])
 
Bartender
Posts: 1098
19
Mac OS X IntelliJ IDE Oracle Spring VI Editor Tomcat Server Redhat Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
It would be difficult, it�s the inventive bit that would be hard to emulate. The problem with synthesised music is that the timing is just too perfect, even when the instruments compensate. Personally, I always can tell the difference between music from a synthesised and that from a 'real' instrument(s).

Of course its worth a go, it sounds like a AI application; good luck.

$90K by just writing a few lines of code a day

- I am also jealous

programmmers irrelevant -- it's going to come to an end

- Never been convinced about 'Silver Bullets' etc.
 
Ranch Hand
Posts: 469
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Where do they pay 90K for few lines of code per day?
I gotta apply there..
 
Ranch Hand
Posts: 376
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hmmm, actually a lot of my colleagues and friends, (full timers) get paid 90-95K. These people are not as high as architects, but more like team leads, tech leads etc. I thought this payscale is the norm.
 
Ranch Hand
Posts: 1071
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
It also depends on location. 90K in LA is not the same as 90K in Georgia.
 
Ranch Hand
Posts: 321
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Rita Moore:
Where do they pay 90K for few lines of code per day?
I gotta apply there..



20 lines a day, that is the industry average. Isn't it? When you consider all the time people spend doing other things, like testing, bug fixing, meetings, and all that crap, it is quite realistic.
[ March 23, 2005: Message edited by: stara szkapa ]
 
Peter Rooke
Bartender
Posts: 1098
19
Mac OS X IntelliJ IDE Oracle Spring VI Editor Tomcat Server Redhat Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

20 lines a day


I heard this once: A company once introduced a bonus scheme for the lines of code written each day. The programmers got big bonuses . Software quality became an issue. Next they introduced a bonus for the amount of bugs that a programmer could find. The programmers got even bigger bonuses
[ March 23, 2005: Message edited by: Peter Rooke ]
 
pie sneak
Posts: 4727
Mac VI Editor Ruby
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I can't wait to hear a computer's interpretation of "Anything that isn't Country Western or sung by a Disney child-star".
 
John Smith
Ranch Hand
Posts: 2937
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Here are a few samples of computer-generated music that I found. It looks like the offical term is "algorithmic music". I didn't realize there is a lot of activity in there. It sounds from the samples that the new technology is mature enough to produce something of interest (to me, at least):

sample1
sample2

Both samples are hosted on the fractal music server. Sounds like they start with some mathematical equations, iterate them to produce the sequence of numbers, and make them into notes.
 
stara szkapa
Ranch Hand
Posts: 321
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
You better ask how many ranchers would use your service. I wouldn't.
 
John Smith
Ranch Hand
Posts: 2937
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Umm, how about 15% discount?
 
Alan Wanwierd
Ranch Hand
Posts: 624
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Yeah thats all well and good if you want totally metronomic ambient noise - but formulaic methods of generating music have never managed to create the nuances that come from human input.

[forgive the following digression!]
Schoenberg (early 20th Century) suggested that all reasonable tunes using western harmonic structures had been written, so devised a method of "serial" music which meant specifying all 12 notes in a given order and not replaying one until all the others had appeared. He wrote a few bits of music using this technique - and although interesting as an idea, the output is utterly unlistenable to (unless you're a freaky music lecturer like I had back in uni and you want to torture your students! )

Anyway - the idea caught on a little and a few composers experimented with the idea extending the ordering method to cover not only note pitch, but also note duration and note volume... I challenge anyone here to listen to any serial music and not laugh at it! - Its a clear case of clever artistic ideas being more important than the output.

I'd worry that the same will be true of your auto-music generator - an interesting idea - but one that would produce characterless unlistenable junk! (thats even assuming you can manage to code such complex issues as generating meaningful lyrics to songs, getting natural feeling(i.e. non-metronomic) timings and finding that mysterious indefinable factor that is called "groove", "swing" or "energy" etc etc depending on which musical social circles you frequent...

If you want to proceed I suggest you split your porject into 3 phases:
1) Poetry generator - Input favourite song lyrics, novels, poems, movie scripts etc etc and use your analysis of these to formulate complex rules about what kind of language you like to hear, whatkind of imagery you like and what high level ideas seem to intrigue you. Use this data to generate song lyrics. (At this stage you can test the system easily to see if the output produces the right kinda stuff you want in your songs without worrying too much about the complex musical side of the application).

2) Music generator - tell the system what music you like and let it compose suitable music. Note - at this stage the output shoudl be printed sheet music or sound "scteches" so that musicians can be used to inject appropriate performer nuasnce and interpretation.

Assuming all is well and you think your music is onto a winner
3) Recording generator - uses input from phase 1) and 2) and introduces actual sounds, (including voice synthesis ) with real performer interpretation. Perhaps further parameters of 'Performer mood' could be provided to give a bit of colour to the recording (Live stadia event performance is always different from big festival, small intimate club venue or cheesy mainstream TV chat-show gig etc etc).

To my mind, each one of these stages is WAAAY beyond the limits of current understanding, so coming up with any of these algorithms seems a bit far fetched to me!

Even in logical tasks like playing chess we IT professionals dont surpass the human experts - How can we expect to take such a complex and indefinable thing like 'art' and program our way to success?
 
Ranch Hand
Posts: 1033
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by John Smith:
... or maybe even some generic piece of software that will make in-house programmmers irrelevant -- it's going to come to an end....



That piece of software has been written so many times it's laughable. In 1960 it was called Assembler, no more need for those overpaid coders who figured out all the addresses in hex; in 1964 it was Fortran and Cobol, no more need for those overpaid Assembler programmers, the business analysts and scientist could just write their own code in plain English; in 1970 it was APL, same story; in 1978 it was C; in 1990 it was Smalltalk and C++; in 1996 it was Java, same old story again, now its those "workflow languages" like Tibco BusinessWorks ...
 
Sheriff
Posts: 13411
Firefox Browser VI Editor Redhat
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
In "Brave New World", (copyright 1932), Aldous Huxley predicted that music composed by humans would be replaced by machine generated pulses -- loud and endlessly repetitive. That people would gather in clubs to flail around to it as a precursor to loveless sex.

Sad, how accurate he was.
[ March 23, 2005: Message edited by: Ben Souther ]
 
John Smith
Ranch Hand
Posts: 2937
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
AW: Yeah thats all well and good if you want totally metronomic ambient noise - but formulaic methods of generating music have never managed to create the nuances that come from human input.

Well, let's listen to this piece, titled "Flute and Guitar". I would argue that it's far from being "metronomic", and in fact, if I didn't tell you that it was generated by a mathematical formula, it may as well pass as one of the Mozart pieces, may it not? Well, the guitar gives it away.
[ March 23, 2005: Message edited by: John Smith ]
 
Alan Wanwierd
Ranch Hand
Posts: 624
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by John Smith:
Well, let's listen to this piece, titled "Flute and Guitar". I would argue that it's far from being "metronomic", and in fact, if I didn't tell you that it was generated by a mathematical formula, it may as well pass as one of the Mozart pieces, may it not? Well, the guitar gives it away.

[ March 23, 2005: Message edited by: John Smith ]



Fantastic... that had me in stitches!! - Takes me back to those stupid contemporary music lectures and the insanely silly extracts we had to listen to! (I particularly love the 'authentic' sounding guitar chords)
 
Alan Wanwierd
Ranch Hand
Posts: 624
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Ben Souther:
In "Brave New World", (copyright 1932), Aldous Huxley predicted that music composed by humans would be replaced by machine generated pulses -- loud and endlessly repetitive. That people would gather in clubs to flail around to it as a precursor to loveless sex.



Damn - I missed out on the loveless sex!
 
Ranch Hand
Posts: 95
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
computers are never known to be creative yet, they are good at crunching numbers and logic faster, and I guess depending on them to create music pleasing to the human ear may take some time.
Though the idea is a good one, a rather incremental approach could be more practical.
A prospective client comes gives a list of five songs he likes, the software analyzes these songs, and builds a list of 100 songs he may like.
probably it can be sold to itunes, napster :-)
once the software is intelligent enough to understand songs, then it can think about creating music.
 
Sania Marsh
Ranch Hand
Posts: 469
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by stara szkapa:


20 lines a day, that is the industry average. Isn't it? When you consider all the time people spend doing other things, like testing, bug fixing, meetings, and all that crap, it is quite realistic.



well, now that someone mentioned team leads.. it would make sence...
I think junior, mid-level developers write at least double that, well it depends on the work load also..
 
Ranch Hand
Posts: 815
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I like the climactic cymbal hit.
 
Bartender
Posts: 1843
Eclipse IDE Ruby Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Adrian Wallace:

[forgive the following digression!]
Schoenberg (early 20th Century) suggested that all reasonable tunes using western harmonic structures had been written, so devised a method of "serial" music which meant specifying all 12 notes in a given order and not replaying one until all the others had appeared. He wrote a few bits of music using this technique - and although interesting as an idea, the output is utterly unlistenable to (unless you're a freaky music lecturer like I had back in uni and you want to torture your students! )

Anyway - the idea caught on a little and a few composers experimented with the idea extending the ordering method to cover not only note pitch, but also note duration and note volume... I challenge anyone here to listen to any serial music and not laugh at it! - Its a clear case of clever artistic ideas being more important than the output.



My wife (a music major) is not a fan of 20th century music (Shoenberg in particular), so when she had to compose a 12-tone piece for her 20th century class, she was at a loss of what to do. Not that she couldn't; she just values the integrety of the music she writes more than that. In the end, she found a way to set "Jesu, Meine Freude" to 12-tone harmonies in such a way as to sound more "traditional." You can listen to it and never know that it was 12-tone.
 
Ranch Hand
Posts: 872
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I am not sure about a computer creating a new piece of music when there are so many other solutions possible; however, you could help a client to discover other similar music much the some way allofmp3.com does but better.

I like Pacabel�s Cannon and �Air on a G string �but hate Swan Lake.
I like Ganksta M.F. Nip, Esham and the Grave Diggers but hate 50 cent.
I like Pantara, Iron Maiden and Queen but hate Deaf Leopard and Judas Priest.
I like The Carpenters, and Dusty Springfield but hate Diana Rice.

If you can work out logically why then you are on to a winner.
 
Ranch Hand
Posts: 1408
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Instead of generating music that has characteristics like the pieces the customer prefers, why not compute the characteristics of existing music and search for close matches?

That way you're like store clerk, except that not only are you automated, but you're not limited to the specific artists and pieces of music that you personally know.

Then people could have arguments as to which is better, searches based on the computed characteristics of music versus searches based on Amazon's "other people who bought this also bought ...." (The arguments will become pretty intense and personal, if they become anything like the arguments between advocates of the Marshall & Sanow approach versus the Fackler approach for rating handgun ammunition.)
 
John Smith
Ranch Hand
Posts: 2937
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Frank Silbermann:
Instead of generating music that has characteristics like the pieces the customer prefers, why not compute the characteristics of existing music and search for close matches?



That's a good idea, I'll work on it. However, the original problem that I have is that I rarely find any existing musical pieces that truly captivate me. Thus the idea of computer-generated music. I know, Aldous Huxley may be turning in his grave at the sound of that suggestion, but I really don't share his grief. He might as well have cried about computers performing calculations that used to be done by human accountants and actuaries, or about modern cars mostly made by robots as opposed to good old horses, or about the electrical lighters to make fire, as opposed to the laborsome and "humane" process of rubbing two pieces of wood to accomplish the same purpose.
 
Frank Silbermann
Ranch Hand
Posts: 1408
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by John Smith:
I know, Aldous Huxley may be turning in his grave at the (idea of computer generated music), but I really don't share his grief. He might as well have cried about computers performing calculations that used to be done by human accountants and actuaries, or about modern cars mostly made by robots as opposed to good old horses, or about the electrical lighters to make fire, as opposed to the laborsome and "humane" process of rubbing two pieces of wood to accomplish the same purpose.

I know. People had similar complaints when the first inflatable dolls hit the market, and now everybody uses them.

 
I'm not dead! I feel happy! I'd like to go for a walk! I'll even read a tiny ad:
Free, earth friendly heat - from the CodeRanch trailboss
https://www.kickstarter.com/projects/paulwheaton/free-heat
reply
    Bookmark Topic Watch Topic
  • New Topic