Programmable real-time audio signal processing application
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

notes.txt 4.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. TODO:
  2. + Use CSV for mod score file format (to eliminate need for labels)
  3. + Autoload of default pgm cfg, program, enable audio, sequence, score location.
  4. + Circuit switcher patch.
  5. + Review and document the app threading and locking during audio file loading.
  6. + Remove old performance evaluation code from cmScore.
  7. + All programs should be able to reload without crashing via enabling/disabling audio.
  8. + Select and save audio devices.
  9. + (done) Mac Conversion
  10. + (done) Live MIDI - to test audio/MIDI delay.
  11. + (done) As threshold increases overall volume decreases - add a compensation algorithm.
  12. + THere are unintialized variable warnings on the release build.
  13. + Add preset delete.
  14. + All uses of va_copy() should have a complimentary va_end()
  15. ** Build a database of measurements and setup the program to be able to
  16. apply a given measurement at it's assigned section.
  17. ** Redevelop spectral distortion algorithm to use a spline as the transform.
  18. ** use Log frequency frequency transform instead of FFT.
  19. ** Add a 'write' preset file button - so the preset file can be saved prior to next crash.
  20. ** measurement values can generate MAX_DBL - be sure that are not being sent through to the audio algorithm.
  21. (see ln:965 cmDspKr.c for a hack to fix this)
  22. ** add invert to scale/range .
  23. ** non-grace eveneess are used to generate a measurement value from previous tempo calibration section.
  24. (non-grace evenness notes therefore have two scores: 'evenness' and 'overall-duration').
  25. ** note that the default setting for dyn and even.
  26. ** add dyn,even,tempo,cost number boxes to allow artificial setting of these parameters.
  27. add dyn,even,tempo,cost as modulator variables to allow them to be set from the modulator
  28. With these additions we can simulate apply measurements at the 'application' section.
  29. ** add begining and ending measure numbers to 'seq' labels
  30. ** Gain compensation fore mode 4.
  31. ** Do IFFT using cos()^c + i * sin()^c - these bases are orthognal but cause harmonic distortion.
  32. To be efficient this might involve writing an FFT function.
  33. Seq 2 m24 Mark 36 & 38
  34. Seq 4: Mark 115
  35. Seq 4: m76-79 Mark 129 (W/ meas: even & dyn -> thresh change min Thresh to 40) - use 4th seq w/ b1
  36. Seq 6: m92 Mark 143
  37. Seq 7: m103 Mark 173
  38. // May 22
  39. + Add invert to scale range to cause output to go in opposite direction.
  40. + Seq 7: Mark 172 Meas 103 - always crashes on playback.
  41. Seq 4: Mark 76 Meas 40 - crash!
  42. Seq 2: First mark meas 23
  43. Crash seems to happen in cmProc4.c: _cmScMatchInitMtx() ln:1311.
  44. It looks like a memory overrun. Looks like the first line is wrong
  45. shouldn't:
  46. if( rn >p->mrn && cn > p->mcn )
  47. be
  48. if(rn*cn > p->mrn*p->mcn)
  49. BUGS:
  50. // Apr 20
  51. The tempo measurement can produce invalid values. Set score to 22 then play Mark 38.
  52. First tempo measurement is a non-sense value - probably produced by an div by zero.
  53. Also: Mark 8, Meas 10.
  54. Crash on playing Mark 37.
  55. Click on list control outside below list item - crash!
  56. Select Mark 171 (Seq 7) Section 43, m103 crash
  57. // Feb 27
  58. + Audio seems to preceded MIDI by around 250ms this probably arises
  59. from a delay that was inserted by 'mas'. Can the delay be removed?
  60. // Feb 25
  61. + Fix the audio file input/output ports
  62. //
  63. // Feb 6 & 7
  64. //
  65. + Performed notes which arrive which about 50ms could be
  66. considered chords. Extra notes notes which were not part of
  67. the chord are probably common and should be discounted during
  68. the cost analysis.
  69. + Add alignment cost as a 4th variable along with dyn,even,tempo.
  70. + In the score print out (score_loc.txt) Section 2 is starting on Bar 5
  71. when it should start inside Bar 7.
  72. + In Take 1 the 2nd dynamics set is not triggered.
  73. + In Take 3 Eveness 2 the C2 and F#4 are NOT missing althrough they are in the
  74. evalation. Also E7 which ends that set is not marked with an 'e'.
  75. + It is possible to have even-non-grace sets where the note rythm value's are not
  76. all the same (e.g. bar 20 )
  77. + User soft-thresholds for the dynamics categories.
  78. + Set 39 even measure 25 shows the first note as G#2 when it should be C#1
  79. + Missig MIDI note sounded:
  80. C1 score-loc:132
  81. A#2 140
  82. A5 173
  83. C#2 195 Marker 36
  84. E5,G33,A#2,C#1 212-218 Marker 36
  85. E3 185 Marker 37
  86. F5,C#4,G#5 986 Marker 204