The MIDI Forum

  Thursday, 03 August 2017
  0 Replies
  10.6K Visits
DryWetMIDI 1.2.0 has been released with new functionality.

New features

  • MusicalLength available now. This length class gives ability to specify lengths of objects in terms of fractions of the whole note length, for example, 1/8. You can learn more in Length section of the project's Wiki.
  • Added new extension methods for managing of timed events, notes and chords: ProcessTimedEvents, RemoveTimedEvents, ProcessNotes, RemoveNotes, ProcessChords, RemoveChords.
  • Read and Write methods of the MidiFile can now take a Stream as an argument to read/write MIDI file.
  • MetricTime and MetricLength now implement IFormattable so you can use them in string.Format or during string interpolation with format strings supported by TimeSpan.
  • SevenBitNumber and FourBitNumber now implement IComparable<SevenBitNumber> and IComparable<FourBitNumber> respectively so they can be used as key in OrderBy for example.

Fixed bugs and improvements

  • Fixed #2: Non-ASCII encoding is not supported by text-based meta events.
  • Fixed invalid combining of LSB and MSB in PitchValue of PitchBendEvent.
  • Fixed null notes were not filtered out in Chord's constructor.
  • Fixed Time was set to 0 by Chord's constructor that takes only notes as an argument.
  • Improved accuracy of metric time conversion.
  • ToTomeSpan method of MetricTime and MetricLength was replaced with implicit cast operator.
There are no replies made for this post yet.