Last night I sent out another small batch of query letters to producers regarding my screenplay The Melody Box, only this time I made mention of my small new site www.TheRealMelodyBox.com, showing off my attempt at programming a program that does what the melody box in the screenplay does: generates melodies. I’m hoping the potential software-movie tie-in will appeal to someone out there. It’s a bit of a long shot, but any attempt to break into the film business from the outside is probably a long shot. But it would probably be the most rewarding, I imagine. So we’ll see what happens. I hope to send out some more query letters over the weekend, and a friend suggested making a YouTube video with some of the melodies arranged into a more orchestrated piece, which I also hope to do over the weekend. Luck, be a lady…
Writing
Novel progress…
I’m about 5,200 words into my novel Atarius Destroy This World. Overall, it’s going well; the beginning always seems the most exciting. I’m coming up on the “catalyst” scene, the scene in which the main character walks out of his home to go on his adventure. It’s interesting to see the characters take shape in ways I didn’t plan in the outline. I actually changed one of the viewpoint characters from male to female; for some reason it just seems to make the character dynamics more interesting. It was originally going to be a guy named Riklorien, father of the main character Atarius, but now it is Rillorien, mother of Atarius. The plot will stay the same, just writing from Rillorien’s point of view seems more interesting, I guess because a mother figure will feel more nurturing or something. Another non-viewpoint character named Toller is turning into a sort of a comic-relief character (if you can call my corny humor comic-relief), which I didn’t quite expect, but it works. In the outline he seems more like a dark almost semi-evil character, but having him be more comical makes him more likeable. After all, he’s not supposed to be evil, he can just be a bit manipulative and determined at times. Anyway, all the characters are still taking shape, so I expect their personalities will continue to grow.
I’ve also got some query letters for film producers to send out regarding my screenplay The Melody Box, queries that mention my in-development melody composing software. I just want to create a little website showcasing some of the program’s output first so producers can take a listen if they have the time and actually read my letter before tossing it. I was going to work on the site yesterday, but lost track of time novel-writing.
Programming
Melody project – update 8
I was too tired to podcast yesterday; maybe I will today. But I’m still really tired due to my sleep schedule being awfully messed up, so who knows.
So… about my Android melody generator project… Part of me really wants to maximize profits for this thing, so, as mentioned before I am preparing to query producers about my screenplay yet again, this time mentioning that a music box that writes infinite melodies is a true possibility. (At least, to the extent that my program can do it.) Part of me also wants to focus on the algorithmic programming of this generator, and not worry so much about creating a user interface for it, for Android or anything else. So, if a movie deal doesn’t work out (it would be a miracle if it did), I’m seriously considering just hiring / outsourcing some other person or company to program the interface. It would be less work for me, and, with experience, they’d probably do a better job than me anyway. Problem is I’m not sure how much that would cost… anyway, the point is that an actual Android app is still at least months away, because I want to give the movie idea a chance, as to me that seems like the most lucrative (though least likely) path.
Programming Writing
Stories and code and stuff and whatever
I hit a snag in my in-progress short story Through a Flame of Blue and Green. I realized one of my scenes is purely expositional. The information given in the scene is important for the story, but there’s no action, at least no action that’s important to the story. My natural response to this snag is to just stop writing the story until I can figure out a way to make the scene work. “But wait,” I say to myself, “just skip the scene! Come back to it later!” Of course! Why didn’t I think of that? “You just did!” I say to myself. Oh yeah! Both I and me are the same! So I’ll do that… later.
I’m still working on my Android melody generator program as well, but learning to program Android interfaces is boooooooooring, so progress is slow. However, a friend of mine recently gave me some extremely helpful feedback on the screenplay I wrote last year, The Melody Box, so I’ve been thinking about sending out another round of query letters, this time mentioning that a potential film could have the tie-in of software that does what the melody box in the screenplay does: generate melodies. Seems like both products would boost interest in each other. Not sure if that will truly interest anyone, but it’s worth a try, yes? Then I’ll get back to trying to learn how to program Android interfaces.
Other than that, I’ve been endlessly tweaking my outlines for Atarius Destroy This World. There are some tricky little issues here and there. But I’ll probably start writing on Saturday or next week. I’m kind of scared to start. I’ll have to keep saying to myself: “It’s just a rough draft. It’s allowed to be awful. Just get something down.”
Programming
Melody project: the great reprogramming – update 7
Whew, I can’t believe it’s Friday already. This week I’ve been mostly learning Android programming. I played around with some OpenGL graphics programming for Android a year and a half ago, but that experience is really no help for what I want to do now. So I’ve been going through a book on Android programming and playing around with some examples. There’s a lot to learn, so I’m not sure how long this will take, but I’ve only got 8 more weeks until my leave of absence from Animation Mentor ends, so I hope it won’t take too long… even though there are features I still want to add to my melody generator, I wouldn’t mind releasing it as it is (at a small cost) if I end up running out of time. So my priority now is programming an Android interface for the program.
And that is all I have to say at this moment.
Happy Easter!
Programming
Making a list… checking it once…
There are still plenty of features I’d like to give my melody generator eventually, but there are only certain features I think really need to be a part of my melody generator before I work on getting it out there for the world to play around with (in the form of an Android app). So here’s what I hope to work on before I try selling it:
1. – A couple minor changes to the main algorithm. (And fix that bug mentioned in the last post.)
2. – The ability to write 8-bar and 16-bar melodies.
3. – The ability to compose in any key.
4. – The ability to write a melody in major or minor.
5. – The ability to let the user decide the chord progression.
6. – The ability to let the user decide the ending note.
7. – The ability to let the user decide the tempo.
8. – The ability to write a melody in 2/4, 4/4, 3/4, or 6/8.
9. – Create an Android interface for all this.
Obviously there are other features I’d like my program to have eventually (more bar amount possibilities, more time signatures, key changes within a melody, etc.), but they can wait until the program is actually out there and on the market.
Computer music
1,000 computer generated melodies…
For the past couple days, I’ve been working on getting my melody generation program to output MIDI files so I wouldn’t have to convert them manually from a text file, which takes an annoying amount of time. And… I’ve done it, haha! So now I can tell my program… hey, I want 1,000 melodies, go. And it spits it all out over the course of a couple minutes. So here are 1,000 short little MIDI files my program wrote just a few moments ago, in a zip file:
Zip file with 1000 computer generated melodies
Some notes:
1. – Again, the program is currently restricted to 8-bar melodies in 4/4 time, and must start with the I chord and end on the tonic.
2. – For the sake of a little variety, I set the tempo to be a random BPM between 80 and 150, and the key signature to be random between A major and D major (it starts in C major then just shifts all notes up or down).
3. – There is one small bug you might hear in some of the melodies: the bass notes are shifted offbeat. I’m workin’ on it. Fortunately it doesn’t seem to happen often.
Programming
Melody project: the great reprogramming – update 6
It’s week 3 of the great reprogramming of my upcoming melody generator! While I could continue tweaking the main algorithms endlessly, I’m at the point now where I feel I need to branch off into three directions:
1. I need to get the program to output MIDI files automatically so I don’t have to keep interpreting text files.
2. I need to get the program to write in different time signatures, different bar lengths, etc.
3. I need to figure out how exactly I’m gonna get this program on the Android.
My main goal for now is #1… being able to output MIDIs, I can then have the program write 100 melodies or so in a row, and then go through the results and pick out the melodies I like, and perhaps orchestrate them into a little piece or something…
Computer music
Yet even more computer generated melodies…
Here are yet more computer generated melodies from my in-development automatic melody generator. I have made a lot of changes to the algorithm since I posted the last set of examples, but I’m not sure how much you can actually hear. Still more work to be done… anyway, here are 12 more melodies…
Enjoy!
I’ll probably spend another week on the main algorithms, then I’ll start trying to add more diverse capabilities, like different time and key signatures.
Computer music
More computer generated melodies! Woohoo!
Even though I’ve still got plenty of work to do on my automatic melody generator, it’s at the point now where I’m finding it quite addicting. Here are a bunch of melodies it came up with today (I think there are 12 altogether, each stated twice):
Again, I don’t think the melodies sound super fantastic by themselves, but there are definitely some surprisingly good phrases, in my opinion.
Some notes:
1 – Again, it’s still limited to 8-bar melodies in 4/4 time in C major that begin and end on the I chord and can only use the basic triads. I still have algorithmic changes to make before I start expanding its abilities in this area. (For the audio above, I transposed it up a step to D major; sounded just a bit better to me.)
2 – The program is “creating” its own “melodic knowledge” and, as you might hear, the biggest problem this creates is that it likes to write large melodic leaps every now and then, which can sound funky. It didn’t do this before because it based its melodies on observations, and large melodic leaps like that would never (or rarely) be observed. So I’m going to have to hardwire an interval limit into the algorithm, perhaps letting the user set it.
3 – In the last two melodies, I gave the program the ability to use to 16th notes. You don’t hear them in the other melodies because the program wasn’t allowed to use them, but it’s an easy ability to give the program. Triplets, on the other hand, will be tricky… I guess I’ll have to figure out those at some point. Meh… that can come much later…
4 – The program outputs a text file with note values and accompanying chords; it doesn’t actually output the sound you hear in the MP3 … I had to manually enter the info into Overture 4 and use Garritan Personal Orchestra to create the actual sounds.