欢迎访问我的个人网站:http://www.qingshuimonk.com/
期末了想水一水,突然想起让MATLAB发点音,于是上网搜索资料倒腾了一下,功夫不负有心人,终于是弄出来了。
以下内容参考自“可健康了”的博客:
http://blog.sina.com.cn/s/blog_8e356e16010119lp.html
matla播放音乐是由sound(Y,fs,bits)函数完成的,该函数的3个参数代表输入信号、采样率、比特率。先说采样率fs的设置,人耳能够听到的声音范围是20~20000Hz。根据采样定理fs只需要大于40000即可(其实这里没懂)。此处采样率的设置采用了MP3的标准,即fs=44.1k.再说输入信号Y,Y一般是一个正弦波,如A*sin(2*pi*w*t)。其中A控制着声音的大小,w控制着声音的高低,t的范围控制着声音的长短,所以理论上利用这个公式可以发出任何声音,只是不能控制音色和音质(音色音质很难用参数量化,我问了一下学语音的同学,这个东西跟音频谱重心,音频扩展度和音频谱平坦度有关系,这里不作讨论)。比特率采用默认值即可,该参数省略。
于是用下面的公式就可以播放出标准音la:
fs=44100;
t=0: 1/fs: 0.5;
la =sin(2*pi*440*t);
sound(la, fs)
另外,音高和频率是指数的关系,, 其中p是音高,f是频率。

本文介绍了如何使用MATLAB来播放音乐,通过sound函数实现声音的生成,并给出了一个简单的程序设计,用于创建从Do到Xi的2,4,8分音符。通过调整参数,可以控制音高和频率,模拟不同的音符。"
111514571,10324947,好盈电调详解:型号、规格与适用场景,"['电子工程', '电机控制', '无人机技术', '模型飞机']
最低0.47元/天 解锁文章
3484

被折叠的 条评论
为什么被折叠?



