User Tools

Site Tools


korg_wavedrum_midification

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
korg_wavedrum_midification [2014/03/26 17:21]
midisaron moved how to add the library to separate chapter
korg_wavedrum_midification [2014/03/26 17:26]
midisaron
Line 58: Line 58:
 ===Processing the signals=== ===Processing the signals===
 After 64 samples of the head or rim signal have been captured, a FFT (Fast Fourier Transform) on these samples is performed. This results in 33 (usable) frequency bins representing the spectrum of the signal. I did not program the FFT myself but took it from NXP'​s ​ After 64 samples of the head or rim signal have been captured, a FFT (Fast Fourier Transform) on these samples is performed. This results in 33 (usable) frequency bins representing the spectrum of the signal. I did not program the FFT myself but took it from NXP'​s ​
-[[http://​www.nxp.com/​documents/​application_note/​AN10913_CM3_DSP_library_v1_0_0.zip|AN10913]]. See below How to add the DSP library to the project. A short yet comprehensible introduction into the concept of the FFT including examples on how to use NXP's DSP library is given in [[http://​www.nxp.com/​documents/​application_note/​AN10943.zip|AN10943]].+[[http://​www.nxp.com/​documents/​application_note/​AN10913_CM3_DSP_library_v1_0_0.zip|AN10913]]. See below [[korg_wavedrum_midification#​How to add the DSP library to the project]]. A short yet comprehensible introduction into the concept of the FFT including examples on how to use NXP's DSP library is given in [[http://​www.nxp.com/​documents/​application_note/​AN10943.zip|AN10943]].
 I think it's amazing that the humble LPC1769 can calculate a 64-points-FFT so quickly that the delay is not noticable (at least to me). There are countless ways how the result of a FFT can be used. For the head signal, the high frequency components are stronger when the head is hit with a harder object (drumstick rather than hand), and when it's hit closer to the rim. This way a crude position detection is possible.\\ I think it's amazing that the humble LPC1769 can calculate a 64-points-FFT so quickly that the delay is not noticable (at least to me). There are countless ways how the result of a FFT can be used. For the head signal, the high frequency components are stronger when the head is hit with a harder object (drumstick rather than hand), and when it's hit closer to the rim. This way a crude position detection is possible.\\
 Only the absolute values of the complex frequency bin values are used. The correct formula would be Only the absolute values of the complex frequency bin values are used. The correct formula would be
Line 73: Line 73:
 ===MIDI=== ===MIDI===
 This picture shows how the signals from the sensors are processed and converted to MIDI messages. At the same time this is how the SoundDiver editor window looks like: This picture shows how the signals from the sensors are processed and converted to MIDI messages. At the same time this is how the SoundDiver editor window looks like:
 +
 {{:​wavedrum_midi:​sd_screenshot.jpg?​600|Signal flow}} {{:​wavedrum_midi:​sd_screenshot.jpg?​600|Signal flow}}
  
korg_wavedrum_midification.txt ยท Last modified: 2015/02/09 17:55 by midisaron