没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
word 格式
小提琴音准练习软件设计
小提琴音准练习软件设计
引言
音准是小提琴的灵魂和生命,是小提琴学习过程中最难突破的问题。
小提琴与其它乐器不同,没有确定音准的键盘,也没有品位,而是根据演奏者手
指按弦的位置决定。传统小提琴音准练习一般都是反复练习音阶,或通过对比钢
琴声音,提高人耳的分辨能力,进而帮助练习者判断音准情况。这样的训练方式
需要有专业人员实时指导,不断纠正,逐渐提高。对于普通练习者来说,无法保
证随时都能够得到指导,只能自己揣摩,经常事倍功半。
音高是人耳区分声音振动频率高低的一个度量。虽然音高和频率并不
成正比关系(近似对数关系), 但音高与频率仍然有一一对应的关系。小提琴的
音高分析即估计每个音的基频。基频估计方法很多,有时域的短时自相关法[1]、
短时平均幅度差(AMDF)法,有频域的谐波峰值法[2],还有时频域的小波分析[3],
各种常用方法比较见参考文献[4]。其中,频域分析方法相对稳定,且精度高。
本文基于 C#编程平台,应用 Windows 的低级波形音频函数实时采集
音乐信号,经离散傅里叶变换后,采用带置信度的谐波峰值法初步估计基频,进
而引入插值算法提高基频估计精度。
1 音乐信号采集
声卡是计算机的一种多媒体设备,可以用 Windows 的 MCI(Media
Control Interface)命令来控制声卡。MCI 命令提供了一组与设备无关的控制
命令,是一种访问多媒体设备的高层方法。利用 MCI 命令来控制声卡录音时,程
序员不能在录音过程中访问内存中的采样数据,无法应用在实时性要求比较高的
场合。Windows 的低级波形音频函数提供了对声卡的灵活操作,允许在采样过程
中实时访问内存中的采样数据。
1.1 采集流程
使用波形音频函数控制声卡,应遵循以下步骤(括号内为使用函数):①
打 开 波 形 输 入 设 备 ( wavEinOpen ); ② 为 波 形 输 入 设 备 准 备 缓 存 区
( waveInPrepareHeader ); ③ 向 波 形 输 入 设 备 添 加 一 个 输 入 缓 冲 区
(waveInAddBuffer);④启动波形输入设备,开始录音(waveInStart);⑤录音
结 束 后 , 清 除 由 waveInPrepareHeader 函 数 准 备 的 缓 存 区
(waveInUnprepareHeader);⑥停止录音(waveInStop);⑦关闭录音设备
(waveInClose)。
使用波形音频函数实时录音时,应注意以下两点:
(1)如果只为波形输入设备准备和添加一个缓冲区,当该缓冲区被
采样数据填满后,波形输入设备无缓冲区可用,采样就停止了。所以应至少为波
形输入设备准备和添加两个或以上的缓冲区,以保证采样过程的连续性。
资源评论
ohmygodvv
- 粉丝: 506
- 资源: 4812
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功