在C#中绘制波形

时间:2011-02-26 07:12:49

标签: c# audio waveform

我希望能够在C#中显示WaveForm,以及一些简单的功能,如缩放和选择。我已经将数据作为幅度值的短[]。

然而,当涉及到硬编码GUI时,我是一个业余爱好者。我已经找到了一个可能帮助我实现这个目标的辅助类WaveFormClass,但作为备份,我想学习如何手动完成它。

那么我可以要求一些方法,可能还有一些有用的链接吗?谢谢!

2 个答案:

答案 0 :(得分:2)

NAudio有一个显示波形的WPF示例应用程序 - 您可以从codeplex获取源代码,作者还有一篇关于主题here的文章。

答案 1 :(得分:1)

与任何图表一样,您必须遍历X值并从您拥有的样本数组中绘制适当的Y值。

如果您想要在音频中左右平移,则必须偏移从阵列中获取数据。如果您要广告缩小功能 - 屏幕上的一个像素对应于某些样本(尝试使用整数开头),您必须平均一些值,然后绘制适当的值。

如果您的词汇表中尚未包含PIXEL和SAMPLE字样,那么在绘制波形之前您应该熟悉它们,因为没有其他人的代码可以教您如何操作。