This project is read-only.

Source and Binary Release v2.1

Rating:        Based on 1 rating
Reviewed:  1 review
Downloads: 264
Released: Jun 2, 2011
Updated: Jul 16, 2011 by T3866
Dev status: Beta Help Icon

Recommended Download

Application XnaMidiProject v2.1.2
application, 3536K, uploaded Jul 16, 2011 - 93 downloads

Other Available Downloads

Source Code XnaMidiProject_v2.1
source code, 6583K, uploaded Jul 5, 2011 - 102 downloads
Application XnaMidiProject v2.1 Xbox And PC
application, 12996K, uploaded Jun 26, 2011 - 69 downloads

Release Notes

Release v 2.1


Other Updates

1. Fixed Fm notes to sound properly when in continuous play.
2. Added a new effect system with Echo and Normalize effects.
3. Instruments now check for duplicate samples to speed up load times.
4. Added documentation to certain classes such as the synthesizer.
5. Changed SortedList to Dictionary in the CompactMidiFramework.
6. Changed ASCII to UTF8 in the CompactMidiFramework.
7. Fixed issues with Xbox360 compatibility.

June 12th - Final update for this version

1. SFZ instruments now read in attack values (still only simple .sfz support)
2. Optimized the synthesizer by moving locks to increase performance. (nothing drastic here)
3. Banks now support Fm instruments and I have included a sample fm bank for the demo (very memory efficient)
4. Added property to keep track of rough sample memory usage in the InstrumentBank class.
5. Midi sequencer can now load partial banks with only the needed instruments for a given midi
6. Added the ability to change attack and release of fm Instruments
7. Fm Instruments respond to pitch bends
8. Midi sequencer and synthesizer can both pause
9. Midi sequencer can be set to loop
10. Midi sequencer now keeps track of song play time
11. Midi sequencer can now set play time position (you can finally seek to the favorite part of your song)
12. Yet another update on the midi support (more midi events are handled properly making more midis compatible)
13. Added individual note poly (helps protect against noteOn events with no matching noteOff)
14. Changed demo midis (I like to change them up every now and then)
15. other bug fixes/optimizations

June 3rd - Quick fix update

1. Fixed Primary issues with instruments not working
  • Updated SFZ code to make default pitchroot at 60. (this fixed most instruments)

June 2nd - original release - not complete

1. Most instruments have been removed leaving sfzInstruments and FmInstruments
(you are always able to create your own)
2. A complete port of the GM sound-set to the SFZ format
(All 127 instruments available and 9 different drums)
3. Most SFZ parameters are supported
(release, looping, pitch correction)
4. The project has been split into 2 sub-projects:
(XnaSynth - the dll) and (XnaSynthTest - a test project)
5. The Synthesizer class did undergo some changes to allow for pitch bend events and volume events
(the synth can now change pitch and volume in the middle of a noteOn event)
6. The Sequencer has been updated to handle more events too.
(pitch bend, volume, and pan)
7. The Sequencer has event handlers to catch noteOn & noteOff events
(can be seen in the demo)
8. Enforcement of SampleRate on loaded samples (uses linear sampling techniques)
9. A Basic Effect class with a few filters (nothing useful yet)

Bugs & Issues

1. Not all instruments are working properly, (probably do to my incomplete SFZ code) * fixed on June 3rd
2. The midi sequencer is still far from complete and I am always looking for midis that don't load properly
3. There are still issues with changing the pitch and volume too frequently during playback (causes popping)

Reviews for this release

Excellent library for XNA to use Midi file read/write and other activities such as playing a piano.
by bayganik on Jun 29, 2011 at 9:37 PM