A synthesizer made in C# that will allow midi functionality using only the compact framework for any .net device: (windows pc, xbox, or phone).Project Goals
- To learn about synthesis and audio development.
- To provide fellow XNA developers with an alternative way to play music.
- At least provide basic midi playback for both windows and Xbox users.
- At most be an interactive alternative for the incorporation of music in games and other projects.
For those of you who have questions/comments and don't have a codeplex account use:
UPDATE #17 July 18, 2014
Binary & Source Release
Updated the project to vs 2013 portable library. Fixed some issues with playback and with sf2. Reduced memory usage when loading bank files. See downloads to get version 1.2,
UPDATE #16 Dec 11, 2012
I have recently released the most up to date source code for the project. So if you want the newest version check out the source code section. The newest version will contain both Xna and Windows libraries and will be constantly updated. An official release can be expected when I can produce a partial GM instrument set (at least half of the instruments would be nice), a workable demo, and some documentation.Source Link
Help with any one of these things would be greatly appreciated.
UPDATE #15 May 22 2012
This release will eventually become the newest version of the project. However it has a ways to go yet and needs more testing. It is still a little buggy, but offers more comprehensive sfz support including the use of filters, envelopes, and LFOs. For this version there are just 2 demos available and only the sfz sound banks are supported.
Please feel free to leave a comment if you see a bug or a mistake in my code.Download Link
UPDATE #14 March 13 2012
Version 1.1b Beta
Over the break I decided to once again to start from scratch. I went through all the classes and made alot of changes adding features and increasing the performance in certain areas.Changes
1. Midis use less memory once loaded
2. Seeking is now supported by the sequencer
3. Pitch Bending is much more responsive now
4. More wave formats supported including 24bit
5. Banks can have mixed instruments
For the rest of my changes check out the readmeDownload Link v1.1b
UPDATE #13 Feb 18 2012
Version 1.0b Beta
This is mainly a minor update with a few new features including a demo for non xna users using
direct sound through naudio. I have also fixed a few things and cleaned up the directories a bit.
UPDATE #12 Jan 27 2012
Version 1.0b Beta Release
Yes I've changed the version because the library is no longer an XNA game library, but rather a regular .net library; However the library works just fine in Xna and can easily be converted back to an Xna library.
Also: XnaSynthProject is now called CSharpSynthProject
There are a lot of changes including real fm synthesis, or at least I tried to =)
Also there is a new Instrument Editor among other things, So check it out!Download Link v1.0b