MIDI Driver, music-driven animation creator

great advice jason and great video . A huge thump up from me.

JasonWard: I’m…just… speechless :eek:. Three weeks… I just can’t wait to see your next animation. You’ve really made a good use of the script - it’s the best MIDIDriver-made animation, I have seen so far.

Now, you’ve really given me a motivation to speed up the work with the new version of the script.

Keep that going!

Wow…My first blender project was similar to that but without this midi script I never finished it. Now I have inspiration to drag it out of storage!

SirGagarin: When I attempt to apply Sync with these settings I get a python error. Any chance you could tell me what I might be doing wrong? (See following screen captures)

PS: I used this method to change emit values on several objects in my Tiny Bouncing Objects scene without ever encountering this or any error.

These are my settings before attempting to apply the Sync:

http://www.jason-ward.com/images/personal/Scr_01.png

This is the message I get when I try to Sync. MIDI Driver unloads:

http://www.jason-ward.com/images/personal/Scr_02.png

This is the console window with the python error:

http://www.jason-ward.com/images/personal/Scr_03.png

Even though it isn’t anything too spectacular, I created this music video using MIDI Driver so that fans of The Cynic Project would have an easy way to follow the notes in my piano arrangement of the song.

Antimatter Raystorm is my second foray into computer generated animated music videos. Once again I made use of Paweł Adamowicz’s MIDI driver pyhon script to bring the music animation to life. All of these magical instruments were modeled, rigged for animation in, and rendered by Blender.

@SirGagarin:

As you can see I’ve been busy playing with your MIDI Driver python script and Blender. Some of the more fun features I’ve seen in Wayne Lytle’s ANIMUSIC features seem to utilize modulation to create some wah and flutter in the animated items and pitch bends allow the animated item to change during the “hold” duration of the note.

I know you are very busy, but if you do get a chance to create a new MIDI Driver for Blender 2.6 I would be grateful to see these 2 new additions to your already amazing array of utilities included in the package.

Thank you again for all of your hard work and dedication, you’ve really helped make a long time dream of mine become a realization.

~ Jason

@JasonWard: Congratulations on another fine animations! Good job! I really like the idea with arc shooting to the bells. Extendable pipe as synth bass reminds me the Blue Man Group’s Drumbone :slight_smile:

Pitch bend is already on the to-do list. The flutter effect (I understand you have in mind ex. the behavior of the electric arc in Harmonic Voltage, yes?) should be achievable with a proper source animation, however current script lacks functionality to handle that case (source animation, when not duration-scaled, should be cut at the end of the note).

Thank you for your patience. Since I’ve got a regular work it’s much harder to spare some time for the script and the development doesn’t go as smoothly as with the previous version. But don’t worry, I won’t abandon this project.

Stay tuned.

@SirGagarin: I’ve run into a snag. I’m attemping to trigger an event after a note has passed, which works fine because I have a zero value in my IPo curve up to the event. However, if another note occurs before the event triggers MIDI Drive seems to over-write the even with the zero value of the master IPo even effectively erasing the event. Post events work fine because MIDI Drive will not over-write values past the final key frame in the IPo. However MIDI Driver will overwrite zero value preceding the final key frame. I understand in most cases this is what we want, but in this instance it is stumping me.

Here are some basic examples:
Master IPo (First Key Frame is the leading key, there are several frames of nothing before the action):
___________/\

MIDI Sequence:
_________-________---

What MIDI Driver does to create the new IPo curve:
(dashes represent where a MIDI note on event occurs, /\ represents the IPo action)
_________-________--- ___________/\

What I want:
(dashes represent where a MIDI note on event occurs, /\ represents the IPo action)
_________-____-/--_/_/____/\

I think I may just have to try another idea, but I wanted to get your input before I scrap this idea. Thanks again for everything!
~ Jason

@JasonWard: Try creating the source animation without preceding empty frames. Before the synchronization, set the spinner on the bottom of the script (initial offset, more about it in script’s manual in par. 3.7) to the number of frames the actions are to be shifted after the beginning of the notes. Then synchronize. Remember to set the spinner back to 0 if you don’t want to repeat this effect on other notes.

Another thing on the ToDo list: enable turning off overlapping keys removal. :slight_smile:

Cheers.

do not let him die T_T blender 2.6 Please

Yes! That would be awesome!

A new version of this script for Blender 2.6 would be amazing!

SirGagarin, I hope you still monitor these threads. Can MIDI Driver be used to synchronize particle emitters? I don’t think it is possible, but I wanted to ask before I seek alternate ways of handling this.

Thank you my friend.
~ Jason

Hi there,
@JasonWard: Yep, I’m still here, less active but still conscious. :o

MIDI Driver does not work directly on emitters, while there was no access to particle IPO’s back in 2.49. However, one can easily bypass this by using ex. location of an Empty as a driver for emitter’s IPOs. The same can be done with any other type of IPO not supported by the script (Constraints, Sequence, etc.).

Attached is a sample blend file with simple emitter setup ready for further synchronisation.

Attachments

emitterSynch.blend (382 KB)

Please… Just please make the midi driver script for 2.6 :frowning:PLEASE!!!

:smiley: Good explenation

absolutely, and add a donation link to the website!

What happens to that project? It look so amazing, Sirgagarin you left the project forever ? :frowning:

Good God, it’s been two years since my last response!

Heavens forbid! I had too much fun with the project to just leave it like that. The problem is that each time I’m starting with the script, something more important has to be done and when I get back to the topic, I have to catch up with recent changes in Blender and sometimes even start all over again.
Nevertheless, lately I have two strong motifs to really get to work and at last release the working script for 2.6/2.7: one is a bet with a couple of guys from the forum that I’ll finish it before Animusic 3 :wink: and the second is a really talented (and patient) guy who want me to do a video to his music. I do hope, soon there will be something more to show here.