本文介绍了如何n音讯的WaveStream写入内存流?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个程序,它在MP3数据字节数组。它具有与mp3数据转换成wav格式,并将其存储在一个字节的数据。我试图用n音讯用于这一目的。我使用用于这一目的下面的代码
I have a program that takes in mp3 data in a byte array. It has to convert that mp3 data into wav format and store it in a byte data. I am trying to use NAudio for this purpose. I am using the following code for this purpose.
Stream inputStream = ...; Stream outputStream = ...; using (WaveStream waveStream = WaveFormatConversionStream.CreatePcmStream(new Mp3FileReader(inputStream))) using (WaveFileWriter waveFileWriter = new WaveFileWriter(outputStream, waveStream.WaveFormat)) { byte[] bytes = new byte[waveStream.Length]; waveStream.Read(bytes, 0, waveStream.Length); waveFileWriter.WriteData(bytes, 0, bytes.Length); waveFileWriter.Flush(); }当我运行上面的代码,所有我收到字节数组中为0 。但是,如果使用WaveFileWriter将数据直接写入一个文件,该文件接收到正确的数据。 ?任何原因
When I run the above code, all I receive is 0 in the byte array. But if use WaveFileWriter to write the data directly to a file, the file receives the correct data. Any reasons?
推荐答案试试这个:
using (WaveStream waveStream = WaveFormatConversionStream.CreatePcmStream(new Mp3FileReader(inputStream))) using (WaveFileWriter waveFileWriter = new WaveFileWriter(outputStream, waveStream.WaveFormat)) { byte[] bytes = new byte[waveStream.Length]; waveStream.Position = 0; waveStream.Read(bytes, 0, waveStream.Length); waveFileWriter.WriteData(bytes, 0, bytes.Length); waveFileWriter.Flush(); }更多推荐
如何n音讯的WaveStream写入内存流?
发布评论