【发布时间】:2010-02-21 08:19:35
【问题描述】:
我正在为毕业写一个声音编辑器。我正在使用BASS 从 MP3、WAV、OGG 等文件中提取样本,并添加回声、镶边等 DSP 效果。简单地说,我制作了我的框架,将效果从位置 1 应用到位置 2,剪切/粘贴管理。
现在我的问题是我想创建一个与来自Cool Edit Pro 的控件类似的控件,该控件绘制歌曲的波形表示,并能够放大/缩小波形的选定部分等。选择我可以这样做:
TInterval EditZone = WaveForm->GetSelection();
其中 TInterval 有这种形式:
struct TInterval
{
long Start;
long End;
}
在复杂绘图方面,我是一个初学者,因此任何关于如何使用 BASS 返回的样本数据创建歌曲的波形表示并具有放大/缩小功能的提示将不胜感激。
我正在用 C++ 编写我的项目,但我可以理解 C#、Delphi 代码,所以如果你愿意,你也可以用最后两种语言发布 sn-ps :)
感谢 DrOptix
【问题讨论】:
-
我使用 CodeGear C++ Builder 在 Windows 上工作,所以对于 GUI,我使用 VCL