matlab程式设计入门篇音讯读写、录制与播放audio内容摘要:
能較為強大的指令: audioplayer play playblocking 播放單一聲音 循序播放兩種聲音 load % 載入音訊 p=audioplayer(y, Fs)。 % 產生播放物件 play(p)。 % 播放音訊 [y, fs]=audioread(„‟)。 % 讀入音訊 p=audioplayer(y, fs)。 % 產生播放物件 playblocking(p)。 % 播放音訊 load % 載入音訊 p=audioplayer(y, Fs)。 % 產生播放物件 playblocking(p)。 % 播放音訊 playblocking 的播放模式為「同步播放」。 MATLAB 程式設計入門篇:音訊讀寫、錄製與播放 Playback (2/2) If you want to control the playback mode, you need to invoke other mands: audioplayer play playblocking Single playback Sequential playback load % Load audio p=audioplayer(y, Fs)。 % Player object play(p)。 % Playback [y, fs]=audioread(„‟)。 % Read audio p=audioplayer(y, fs)。 % Player object playblocking(p)。 % Playback load % Load audio p=audioplayer(y, Fs)。 % Player object playblocking(p)。 % Playback Playback mode of “ playblocking” is synchronous! MATLAB 程式設計入門篇:音訊讀寫、錄製與播放 改變音訊的震幅 我們在第一節提到過 , 聲音的音量是由聲波的震幅來決定 , 因此我們可藉由震幅的大小來改變音量 , 例如: [y, fs]=audioread(39。 39。 )。 p=audioplayer(1*y, fs)。 playblocking(p)。 % 播放 1 倍震幅的音訊 p=audioplayer(3*y, fs)。 playblocking(p)。 % 播放 3 倍震幅的音訊 p=audioplayer(5*y, fs)。 playblocking(p)。 % 播放 5 倍震幅的音訊 聲音聽起來並沒有變成 3或 5倍大聲,為什麼。 MATLAB 程式設計入門篇:音訊讀寫、錄製與播放 Change of Audio Amplitude Volume of audio signals is determine by their amplitude. Here are modify amplitude to change the volume: [y, fs]=audioread(39。 39。 )。 p=audioplayer(1*y, fs)。 playblocking(p)。 % Original audio p=audioplayer(3*y, fs)。 playblocking(p)。 % Audio of 3x amplitude p=audioplayer(5*y, fs)。 playblocking(p)。 % Audio of 5x amplitude The playback doesn’t sound like 5 times louder, why? MATLAB 程式設計入門篇:音訊讀寫、錄製與播放 改變音訊播放的取樣率 (1/2) 如果在播放時 , 改變取樣頻率 , 就會改變整個音訊的時間長度 , 進而影響到音高。 在下例中 , 我們漸漸提高播放時的取樣頻率 ,聽到的聲音就會越來越快 、 越來越高 , 最後出現像唐老鴨的聲音。 為什麼。 [y, fs]=audioread(39。 39。 )。 p=audioplayer(y, fs)。 =*fs。 playblocking(p)。 % 播放 倍速度的音訊 =*fs。 playblocking(p)。 % 播放 倍速度的音訊 =*fs。 playblocking(p)。 % 播放 倍速度的音訊 =*fs。 playblocking(p)。 % 播放 倍速度的音訊 MATLAB 程式設計入門篇:音訊讀寫、錄製與播放 Change of Sample Rates (1/2) Change of sample rate during playback Change of duration Change of the perceived pitch Increase the sample rate during playback, and you‟ll hear Donald Duck (唐老鴨 ). Why? [y, fs]=audioread(39。 39。 )。 p=audioplayer(y, fs)。 =*fs。 playblocking(p)。 % Duration ratio: 1 =*fs。 playblocking(p)。 % Duration ratio: 1/ =*fs。 playblocking(p)。 % Duration ratio: 1/ =*fs。 playblocking(p)。 % Duration ratio: 1/2 MATLAB 程式設計入門篇:音訊讀寫、錄製與播放 改變音訊播放的取樣率 (2/2) 反之 , 如果漸漸降低播放的頻率 , 聽到的聲音就會越來越慢 、 越來越低 , 最後出現像牛叫的聲音。 [y, fs]=audioread(39。 39。 )。 p=audioplayer(y, fs)。 =*fs。 playblocking(p)。 % 播放 倍速度的音訊 =*fs。 playblocking(p)。 % 播放 倍速度的音訊 =*fs。 playblocking(p)。 % 播放 倍速度的音訊 =*fs。 playblocking(p)。 % 播放 倍速度的音訊 MATLAB 程式設計入門篇:音訊讀寫、錄製與播放 Change of Sample Rates (2/2) On the other hand, decrease the sample rate during playback, and you‟ll hear cow moo… [y, fs]=audioread(39。 39。 )。 p=audioplayer(y, fs)。 =*fs。 playblocking(p)。 % Duration ratio: 1 =*fs。 playblocking(p)。 % Duration ratio: 1/ =*fs。 playblocking(p)。 % Duration ratio: 1/ =*fs。 playblocking(p)。 % Duration ratio: 1/ MATLAB 程式設計入門篇:音訊讀寫、錄製與播放 Observations Observations Larger sample rate for playback leads to… Shorter duration and higher pitch Smaller sample rate for playback leads to... Longer duration and lower pitch How to… Generate higher pitch without duration change? Pitch modification Create longer duration without pitch change? Duration modification Demo Quiz! MATLAB 程式設計入門篇:音訊讀寫、錄製與播放 改變符號及改變時序 如果我們將聲波訊號上下顛倒 , 聽到的聲音基本上是一樣的 , 但是如果前後顛倒 , 聽到的聲音就如同錄音帶 「 倒放 」 的聲音 , 聽起來很像是某種外國語音 , 請試試下列範例: 範例 2011: [y, fs]=audioread(39。 39。 )。 p=audioplayer(y, f。matlab程式设计入门篇音讯读写、录制与播放audio
相关推荐
4 0)(0Kν 为基态原子对频率为ν 的光辐射吸收系数。 积分吸收 , 即测定吸收曲线下面所包括的整个面积 ,即吸收系数对频率的积分 , 其数学表达式为: 式中 , e为电子电荷; c为光速; m为电子质量; f为振子强度 ( 为受到激发的每个原子的平均电子数 , 与吸收几率成正比 ) ; N0为单位体积内能够吸收频率为 V0177。 △ V范围内辐射的基态原子数目 (
= ∑Ki[Ei][C] 9 有机毒害污染物归趋模式 — 转化 RT = ∑Ri = [∑Ki][C]= KT[C] KT = ∑Ki = KVM + Kb + Kp + Kh KVM挥发速率常数 Kb生物降解速率常数 Kp光解速率常数 Kh水解速率常数 污染物消失的半衰期 t1/2 = ln2 / KT 10 有机毒害污染物归趋模式 吸附过程
) amp。 e)听政会和发布工作报告 f)建立、发展对工人健康构成风险 的化学、物理和生物制剂的检验检 测制度 第 155号职业安全卫生公约 第三部分:国家一级的行动 (续 ) 第 12条 机器、设备和物质的设计、制造 引进、提供和转让 a)不会对使用者造成危险 b)提供正确安装和使用的信息 以及它们的危害、危险特性和规 避措施等方面的信息 c)承担科学研究或掌握满足上 述 aamp。
x=*cos(t)。 y=*sin(t)。 subplot(2,3,1),plot(x,y),axis normal,grid on, title(39。 Normal and Grid on39。 ) subplot(2,3,2),plot(x,y),axis equal,grid on,title(39。 Equal39。 ) subplot(2,3,3),plot(x
六 先前產生調和數列的例子,亦可用 while 迴圈改寫如下: 範例 166 : x = zeros(1,6)。 i = 1。 while i=6 x(i) = 1/i。 i = i+1。 end x % 顯示 x x = MATLAB 程式設計入門篇:程式流程控制 程式流程控制之範例七 若要用 while 指令找出最小的 n 值,使得 n! 1e100 ,可輸入如下: 範例
Matlab的数据。 Report Generator Matlab的报告产生器。 Runtime Sever 将个人应用程序包成一个软件,并在没有 Matlab的环境下执行。 Web Sever 与 NT的 Web Sever合用在 Sever端执行 Matlab的运算或绘图。 初识 MATLAB 例 11 绘制正弦曲线和余弦曲线。 x=[0::360]*pi/180。 plot(x