public WavFormat(Stream stream) { sourceStream = stream; if (!WavReader.LoadSound(stream, out wavStreamFactory, out channels, out sampleBits, out sampleRate)) { throw new InvalidDataException(); } }
public WavFormat(Stream stream) { this.stream = stream; var position = stream.Position; reader = Exts.Lazy(() => { var wavReader = new WavReader(); try { if (!wavReader.LoadSound(stream)) { throw new InvalidDataException(); } } finally { stream.Position = position; } return(wavReader); }); }