做音频播放器,需要显示当前声音的变化曲线,也就是要实时显示波形,简单的波形曲线和柱状图都试过了,但是不够酷
哪位大侠有看起来酷的算法或者代码,有原理也行,最好要效率高的
哪位大侠有看起来酷的算法或者代码,有原理也行,最好要效率高的
解决方案 »
- 在Linux操作平台上使用的音视频框架是什么?
- 用sendmessage发送消息不成功,大侠们帮帮忙啊!
- listen会一直有效吗?
- 请问CBitmapButton如何从本地读取图片文件?
- 请问为什么每次我InternetFineNextFile以后都会产生ERROR_IO_PENDING错误?
- 有谁知如何建立windows2000的MMC程序( *.msc)
- 请教,有关游戏外挂
- 如何写一个可播放RM文件的播放器?
- COleDataSource文件拖放问题
- 求助:编译错误【LINK : fatal error LNK1104: cannot open file "zlib_d.lib"】
- MFC创建了一个windows explore
- mfc Combox控件 问题
就是屏保那个么 不怎么好看吧 就几个线来回走,而且这个示波器的显示区域比较小
[/Quote]贝塞尔曲线是示波器上最常用的了 主要是比较平滑
{
HDC hdc;
PAINTSTRUCT ps;
// Start a paint session, and create a Graphics object.
hdc = BeginPaint(hWnd, &ps);
Graphics graphics(hdc);
// Set up the pen and curve points.
Pen greenPen(Color::Green);
Point startPoint(100, 100);
Point controlPoint1(200, 10);
Point controlPoint2(350, 50);
Point endPoint(500, 100);
//Draw the curve.
graphics.DrawBezier(&greenPen, startPoint, controlPoint1, controlPoint2, endPoint);
//Draw the end points and control points.
graphics.FillEllipse(&SolidBrush(Color::Red), 100, 100, 10, 10);
graphics.FillEllipse(&SolidBrush(Color::Red), 500, 100, 10, 10);
graphics.FillEllipse(&SolidBrush(Color::Blue), 200, 10, 10, 10);
graphics.FillEllipse(&SolidBrush(Color::Blue), 350, 50, 10, 10);
//End the paint session.
EndPaint(hWnd, &ps);
}
[
里面很多很多音频的知识
Audacity
顺便说下,以前折腾 Delphi 的时候做个播放器,有个 bass.dll 可以达到 lz 想要的效果,
不过是收费的。
你可以网上找好看