I am looking for an audio library for Windows Mobile 5+. Internally we have developed an audio library as per the code samples in MSDN but have been unsuccessful at making that library stable.
The requirements for this project are:
1) The library must have a simple object-oriented interface. Ideally there would be a single object with load, save, record, play, pause, seek, and stop methods.
2) The load and save methods must load data from and save data directly to a file.
3) The audio data must be accessible via the library as some form of array of audio samples in case we need to do some form of audio processing.
4) The play method must update some variables in the library that keep track of how long the particular audio file is, what the current position is, and how much time is remaining.
5) The seek method must allow us to skip directly, with decent accuracy, to a particular moment in the recording.
6) There must be a method that translates a given seek time (from #5) into the offset into the array of audio samples (from #3) and vice versa. For example, if we wanted to know the sample that corresponds to one second into an 8 KHz, mono recording the method would return 8000.
7) There must be methods to set the format options (stereo, mono, ADPCM, etc) and sampling rate (8000, 16000, 44100, etc).
8) The save and load functions must throw exceptions when files aren't found, data cannot be written, etc.
The deliverables are:
1) A Visual Studio 2005 and/or 2008 project file, with full source, that compiles to a library that can be imported into a C# application for Windows Mobile 5+ (both PocketPC and SmartPhone).
2) Documentation on how to use the library in an application.
3) A sample application that can be deployed to a phone for testing. ? The test application should only exercise very basic record and playback functionality. ? We will develop test code for the remaining objects and methods.