加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – 绘制.wav文件的波形

发布时间:2020-12-16 03:06:51 所属栏目:百科 来源:网络整理
导读:我想绘制特定绘图宽度的.wav文件的波形. 我应该使用哪种方法来显示正确的波形图? 任何建议,教程,链接欢迎…. 解决方法 基本算法: 查找适合绘图窗口的样本数 确定每个像素应呈现多少个样本 从样本块计算每个像素的RMS(或峰值)值.平均音效信号不起作用. 绘制
我想绘制特定绘图宽度的.wav文件的波形.

我应该使用哪种方法来显示正确的波形图?

任何建议,教程,链接欢迎….

解决方法

基本算法:

>查找适合绘图窗口的样本数
>确定每个像素应呈现多少个样本
>从样本块计算每个像素的RMS(或峰值)值.平均音效信号不起作用.
>绘制值.

假设n(样本数)= 44100,w(宽)= 100像素:

那么每个像素应该代表44100/100 == 441样本(块大小)

for (x = 0; x < w; x++)
    draw_pixel(x_offset + x,y_baseline - rms(&mono_samples[x * blocksize],blocksize));

尝试不同视觉的东西出现:

> rms vs block的最大值
>重叠块(块大小x,但为每个像素提前x / 2等)

下采样不太可能会失去峰值信息.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读