NAudio v1.3.0 Release Notes

Release Date: 2009-10-10 // over 14 years ago
  • ๐Ÿš€ Release Announcement

    • ๐Ÿšค WaveOut has a new constructor (this is breaking change), which allows three options for waveOut callbacks. This is because there is no โ€œone size fits allโ€ solution, but if you are creating WaveOut on the GUI thread of a Winforms or WPF application, then the default constructor should work just fine. WaveOut also allows better flexibility over controlling the number of buffers and desired latency.
    • Mp3FileReader and WaveFileReadercan have a stream as input, and WaveFileWritercan write to a stream. These features are useful to those wanting to stream data over networks.
    • ๐Ÿ‘ The new IWaveProvider interface is like a lightweight WaveStream. It doesnโ€™t support repositioning or length and current position reporting, making the implementation of synthesizers much simpler. The IWavePlayer interface takes an IWaveProvider rather than WaveStream. WaveStream implements IWaveProvider, so existing code continues to work just fine.
    • โž• Added in LoopStream, WaveProvider32 and WaveProvider16 helper classes. Expect more to be built upon these in the future.
    • ๐ŸŽ I have also started using the WaveBuffer class. This clever idea from Alexandre Mutel allows us to trick the .NET type system into letting us cast from byte[] to float[] or short[]. This improves performance by eliminating unnecessary copying and converting of data.
    • ๐Ÿ›  There have been many bugfixes including better support for VBR MP3 file playback.
    • ๐Ÿ›  The mixer API has had a lot of bugs fixed and improvements, though differences between Vista and XP continue to prove frustrating.
    • The demo project (NAudioDemo) has been improved and includes audio wave-form drawing sample code.
    • There is now a WPF demo as well (NAudioWpfDemo), which also shows how to draw wave-forms in WPF, and even includes some preliminary FFT drawing code.
    • โšก๏ธ The WaveIn support has been updated and enhanced. WaveInStream is now obsolete.
    • ๐Ÿ‘ WASAPI audio capture is now supported.
    • NAudio should now work correctly on x64operating systems (accomplished this by setting Visual Studio to compile for x86).