matlab - 与图上的移动线同步播放音频文件,MATLAB

标签 matlab audio plot

我正在尝试播放音频文件以及在图表上移动线。

[signal,Fs]=wavread('sig_c.wav');
time=(0:length(signal)-1)/Fs;
figure(1);
plot(time,signal)
grid on;
end_time=length(signal)/Fs;
h=line([0,0],[-0.30 0.30],'Color','r','Marker','o','LineWidth',3);
sound(signal,fs);
tic
t=toc;
while t<end_time
set(h,'xdata',t*[1 1]);
drawnow;
t=toc;
end

它先播放音频文件,然后再移动图表上的线。但是不需要上面的结果。我们需要与图表上的移动线同步播放音频文件。

怎么做

您的帮助将不胜感激......

最佳答案

您可以使用音频播放器代替声音进行播放。所以

player = audioplayer(signal, Fs);

播放器是可以使用的音频播放器对象(请在音频播放器上查看MATLAB帮助)
play(player);

在播放声音时,您可以做任何您想做的事。例如,有一个CurrentSample属性,它向您显示当前播放的样本。你可以的
c_sample = get(player,'CurrentSample');

并将其用于绘图目的。

关于matlab - 与图上的移动线同步播放音频文件,MATLAB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23078243/

相关文章:

R - 绘制六边形镶嵌

plot - 在 Julia 中打印带有绘图的函数

matlab - 点到 NURBS 曲面的距离

python - wav 文件幅度计算

javascript - 如何将onclick事件存储在Django数据库中?

javascript - 第一次加载后,javascript load()方法会缓存资源吗?

r - 将绘图保存在对象中

matlab - 从定义它的文件中分离匿名函数

matlab - 在Matlab中提取嵌入在32位二进制数中的多个数字的最快方法是什么

python - 相当于 Python 中的 "genvarname"