Saturday, 15 August 2015

c# - How do I resample an in-memory audio stream (byte[]) with NAudio? -



c# - How do I resample an in-memory audio stream (byte[]) with NAudio? -

i want resample sound byte array 8khz 48khz. sound stream obtained byte[] network socket.

reading mark heath's blog resampling using naudio, came across next code

int outrate = 16000; var infile = @"test.mp3"; var outfile = @"test resampled wdl.wav"; using (var reader = new audiofilereader(infile)) { var resampler = new wdlresamplingsampleprovider(reader, outrate); wavefilewriter.createwavefile16(outfile, resampler); }

but code acts on file stream (audiofilereader) rather in memory info (byte[]). how modify code up-sample byte array?

edit: want up-sample 8 khz info obtained network peer 48 khz , play using wasapi.

your input resampler bufferedwaveprovider or rawsourcewavestream. can't utilize createwavefile16 resample in real-time though. you'd need read amount of sound expect available , write wav file.

c# naudio

No comments:

Post a Comment