Tag: 波形

使用C#显示音频波形

我已经在Stackoverflow和谷歌搜索过,但还没找到我想要的东西。 到目前为止,我得到了音频原始数据(WAV文件),我想要将其可视化。 private void Form1_Load(object sender, EventArgs e) { FileStream fs = new FileStream(“D:\\tada.wav”, FileMode.Open); BinaryReader reader = new BinaryReader(fs); char[] data = new char[4]; long fsize; long wfxSize; long dataSize; WaveFormatEx wfx; //RIFF reader.Read(data, 0, 4); fsize = reader.ReadInt32(); //WAVE reader.Read(data, 0, 4); //FMT reader.Read(data, 0, 4); wfxSize = reader.ReadInt32(); byte[] wfxBuffer = new […]

使用生成的波形数据在.NET中播放声音

如何根据我的.NET程序从用户输入和数学函数生成的波形数据播放声音? “波形数据”是指固定间隔时间序列(可能是44.1 kHz)中的SPL(声压级)值。 我认为这需要某种流缓冲区安排。 请注意,这必须是实时/实时的,所以只创建一个.wav文件然后播放它是不够的。 VB.NET是首选,但C#也是可以接受的。 只是为了澄清:我正在寻找的是一个简单的工作代码示例。

如何渲染音频波形?

有没有与音频/编程相关的堆栈交换站点? 我正试图在WinForms中制作波形 我应该使用什么算法? 例如,如果每个像素有200个样本(垂直线),我应该从200个样本的那部分中绘制最低和最高样本吗? 或者我应该绘制低和高样本的平均值? 也许两者都有不同的颜色?

使用Naudio将每个WAV通道保存为单通道WAV文件

我正在尝试将WAV文件(PCM,48kHz,4通道,16位)转换为单通道WAV文件。 我尝试将WAV文件拆分成4个字节数组,就像这个答案一样,并创建了一个WaveMemoryStream,如下所示,但不起作用。 byte[] chan1ByteArray = new byte[channel1Buffer.Length]; Buffer.BlockCopy(channel1Buffer, 0, chan1ByteArray, 0, chan1ByteArray.Length); WaveMemoryStream chan1 = new WaveMemoryStream(chan1ByteArray, sampleRate, (ushort)bitsPerSample, 1); 我在创建WAVE标题时遗漏了什么? 或者更多的是将WAV分成单声道WAV文件?

C#中的高质量图形/波形显示组件

我正在寻找一种快速,专业外观和可定制的C#波形显示组件。 我想在时域和频域主要显示实时音频波形(快!)。 我想能够缩放,更改轴设置,显示多个通道,自定义手感和颜色等… 任何人都知道任何事情,无论是否商业? 谢谢! 迭戈