Scripted Milkdrop "music videos", anyone?
I'm in the midst of finishing up a project i started god knows how long ago. I came up with the idea and threw together some of it just to see how feasible it was, but just recently i opened it back up and got quite a bit of it done.
Anyway, i'm writing a visual basic program that will allow you to basically make a music video using milkdrop. For the thousands of times you thought a certain preset went *perfectly* with a part of a song, now that can happen.
I've figured out how to control almost every aspect of winamp and milkdrop necessary to do this. Im referring to 2.x, not sure if or when winamp 3x support will happen. I'm almost done with letting you quickly and easily set up scripts of milkdrop files that will coexist with the mp3 files, each mp3 gets a script file listing the .milk files to play and when. Just queue up an album in winamp, and this software will read whatever song is playing from winamp and create the milkscript file in the same folder as the song automatically when you start scripting it. The main window (see screenshot) has a directory browser and a list of milkdrop files, with ratings, and you can double click one to preview it in milkdrop. Then hit the copy button to add it to the script list. Double clicking on the script list lets you preview that milkdrop file at that point in the song. Below that list is a slider to quickly move that presets position in the song, and a text box to type in a time manually. All of this is functional so far.
Then for when you're done doing a video for a song or an entire album, youll compile it, to put all the presets into one file, and possibly an entire albums files into one single index file. This file will be associated a "player" within this program, that will look at whatever song youre playing in winamp and handle starting milkdrop at the right spot when you tell it to. I'm figuring it can sit in the system tray and just run milkdrop when you double click it, and a right click would give you a menu for options or to close it.
One feature i know i'll want to add beyond just playing the presets at the right time, is the ability to display custom messages at certain times too, or along with preset changes. I figure since its in milkdrop it might as well become part of this. This however isnt necessary and may come later. I'd also love to have some integrated way to share presets and preset scripts. My job experience includes SQL databases, so thats a possibility. But they can be shared easily anyway, once they're compiled. And the file names will be retained, so credit will still be given for the preset's creator.
I've also thought of somehow using my software to control what preset shows up in milkdrop. That way when a preset fits part of a song, its just one button to set it up that way in the script. This however would be kinda difficult, as i cant read the current preset from milkdrop, and i'd have to handle the whole rating system myself. My way around that is showing the preset ratings in the scripter window. At least then you could rate all your favorite presets to help in choosing them when you make a script.
The only help i need is knowing what features should be added to this. I'm probably capable of just about anything, considering how far ive gotten with not much work. Ryan Geiss is a genius at assembly and everything else he uses to do such fantastic madness as milkdrop. I however am a master at visual basic. There's a reason i got payed $14 an hour right out of highschool for doing this, im just good at it, been doing it since gradeschool. Thats why this software is going to be free. I'll just put in a nag screen for people to go buy my album, or paypal me the same amount of money, whatever. Either a nag screen, or if i do the feature to pop up messages in milkdrop, there'll be one in there to buy it. Ryan Geiss asks or used to ask for money if people use it at shows and shit, and something like this would make that so much sweeter. And I figure there are enough people out there who would want such a beast and be willing to pay me for doing it that im putting the effort into making it. I myself want it just so i can do a video to promote my own music, so i figure i'd give it out once its done.
Beyond finding out how in-demand this is and getting people hyped up about it, the big question and point of this thread: what features should it have? Tell me what you guys want in this and i'll see how possible it is to implement.