matlab音頻信號處理,音頻頻譜特效 jaVa_基于Matlab dsp工具箱 的實時音頻采集及頻譜顯示

 2023-12-25 阅读 29 评论 0

摘要:題外話這幾天在尋找可以使 Matlab 實時采樣音頻并處理的函數。剛開始找到的是 網上很多例子采用的 analoginput( ),但是目前在 64位 Windows上無法使用。其次是 audioRecorder( ) , 可以調用但缺點是每次調用都會開關一次麥克風,延遲十分嚴重, 無法實現要

題外話

這幾天在尋找可以使 Matlab 實時采樣音頻并處理的函數。剛開始找到的是 網上很多例子采用的 analoginput( ),但是目前在 64位 Windows上無法使用。其次是 audioRecorder( ) , 可以調用但缺點是每次調用都會開關一次麥克風,延遲十分嚴重, 無法實現要求的實時效果。

在 Matlab 幫助文檔里游蕩一會兒之后,發現DSP工具箱里面有個函數 dsp.AudioRecorder( ),試了一下可以實時采樣。創建對象之后麥克風會一直處于開啟狀態,后臺線程也會持續將麥克風數據寫入到緩沖區,我們只需要去緩沖區讀取數據就行。

效果演示

0fad67422dc8aabd04f97a9c5f9519f0.gif

matlab音頻信號處理?代碼

PS:對于dsp.AudioRecorder在新版Matlab中的變化情況,參考官方文檔。

function soundtest()

timeLength=0.1; % 采樣時長,單位秒

samples=timeLength*44100; % 默認采樣率44100,計算采樣點數

音頻頻譜圖怎么看。H = dsp.AudioRecorder(...

'NumChannels' , 1 ,... % 1 個通道

'DeviceDataType', '16-bit integer',... % 16位采樣

'OutputNumOverrunSamples',true,... % 啟用溢出標志

'SamplesPerFrame', samples); % 采樣點數

可視化音頻頻譜手機版。[audioIn,~] = step(H); % 第一次采樣

figure('Name','實時頻譜','MenuBar'...

,'none','ToolBar','none','NumberTitle','off');

xdata=(1:1:samples/2)/timeLength;

axes1= subplot(1,2,1);

dsp音頻解碼芯片,axes2= subplot(1,2,2);

pic= plot(axes1, 1:1:samples, audioIn); % 初始化音頻波形圖

pic2= bar(axes2,xdata, xdata*0,'r'); % 初始化頻譜圖

set(axes1,'xlim', [0 samples], 'ylim', ...

[-0.15 0.15],'XTick',[],'YTick',[] );

音頻頻譜軟件、set(axes2,'xlim', [min(xdata) max(xdata)], 'ylim',[0 6] , ...

'xscale','log','XTick',[1 10 100 1e3 1e4],'YTick',[] );

xlabel(axes2,'頻率 (Hz)');

xlabel(axes1,'波形');

axes2.Position=[0.040 0.48 00.92 0.48]; % 左,下,寬度,高度

matlab播放音頻函數?axes1.Position=[0.040 0.06 0.92 0.25];

drawnow;

while 3>2

[audioIn,Overrun] = step(H); % 采樣

if Overrun > 0

DSP音頻 開發、warning(' 數據溢出 %d 位\n',Overrun);

end

ydata_fft=fft(audioIn); % 傅里葉變換

ydata_abs=abs(ydata_fft(1:samples/2));% 取絕對值

set(pic, 'ydata',audioIn); % 更新波形圖數據

dsp音頻信號處理、set(pic2, 'ydata',log(ydata_abs)); % 更新頻譜圖數據

drawnow; % 刷新

end

end

b739ec46bb5c46d9c0aa4ce35ba1ea56.png

關于找一找教程網

本站文章僅代表作者觀點,不代表本站立場,所有文章非營利性免費分享。

本站提供了軟件編程、網站開發技術、服務器運維、人工智能等等IT技術文章,希望廣大程序員努力學習,讓我們用科技改變世界。

[基于Matlab dsp工具箱 的實時音頻采集及頻譜顯示]http://www.zyiz.net/tech/detail-93705.html

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/5/194697.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息