Does anyone have any idea how to modify the sound speed and play a sound file faster/slower than the original in C#?

At the moment I am using .wav files, I have searched a lot and found that SoundPlayer and AudioVideoPlayback are the only two options to play sound, but none of them contain any special method to increase or decrease the sound speed with which to play with.

I am building a piano application which lets user modify the tempo, this is the situation I am in at the moment. I hope a few musical programmers can help me! Cheers

有帮助吗?

解决方案

A similar question was asked earlier:

C# Audio Library

One of the answers there suggested the following tool which might be helpful to you:

http://naudio.codeplex.com/

其他提示

What you are looking for is a time-stretch audio library, which changes the playback speed but not the pitch -- with almost no artefacts.

A few excellent timestretch libraries available:

dirac: http://www.dspdimension.com/ (best)

rubberband: http://breakfastquay.com/rubberband/

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top