Re: [ANN] ALSA MIDI Humanizer v0.0.1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Greetings:

Ah, one of my favorite threads. I compose a lot with MIDI, and sometimes I like to try making the results sound at least a little more human. A few (probably obvious) notes :

No human player can play two notes in a row with exactly the same precision, it's simply not possible. Small-range random changes to velocity at least help shake up the flatness of MIDI parts. However, if the range of variation is too wide the randomizations sound pointless.

No human players play with metronomic accuracy, nor is such a thing desirable from human players. However, the range of variation is a significant consideration. Set drummers often play the bass drum, snare, hi-hat, and cymbal in slightly different tempo relations, creating the various grooves and feels that underlie musical styles.

A "groover" would be a cool piece of software, i.e., something that shapes the existing music into another rhythmic style, but I don't think it would be easy to get right.

IMO the best way to humanize MIDI parts is to hand-code their velocities, note by note where necessary, which means the coder must have a practical knowledge of performance factors. I also routinely add a tempo track that loops an asymmetric group of fluctuating tempo values, like a very narrow-range LFO applied to tempo. Again, if the width of the range is too great the looseness becomes sloppy, destroying the intended effect. Usually I keep a range of +/-4 clicks, e.g. 120-121-122-121-120-119. If these values are applied to tempo events at the level of 16th-note triplets they'll have a nice "upsetting" effect on the rigidity of the sequencer's tempo.

Dynamics and tempo relativities are profound aspects of any engaging performance, whether a player plans them in advance or they occur as an improvised response to the music (and possibly to the other players).

 Just some thoughts for further consideration.

Best,

dp


[Index of Archives]     [Linux Sound]     [ALSA Users]     [Pulse Audio]     [ALSA Devel]     [Sox Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux