我要画出handdel。Mat和量子化信号在同一个图上从t=0.2秒到t=0.4秒但是我会得到这个误差?我该如何解决这个问题?
极限必须是持续时间递增的2元素向量。
122次浏览(过去30天)
显示旧的注释
问题1部分(a)
负载handel.mat
文件名=“handel.wav”;
audiowrite (“handel.wav”, y, Fs)
清晰的y Fs
信息= audioinfo(“handel.wav”)
[y,Fs] = audioread(“handel.wav”);
%的声音(y, Fs);
t = 0:seconds(1/Fs):seconds(info.Duration);
T = T (1:end-1);
情节(t, y)
包含(“Time-sec”)
ylabel (“振幅”)
问题1部分(b)
振幅= abs(y);% abs(a)是全正意义上的振幅
Mp = max(abs(y));% Max是最高振幅。
L = 8;
dyn_range_of_interval = 2*mp/L;
thresholds = linspace(-(mp-dyn_range_of_interval),(mp-dyn_range_of_interval),L-1);
Temp_vector = [-mp thresholds mp];
为k = 1:长度(Temp_vector) 1
电报密码本(k) = (Temp_vector (k) + Temp_vector (k + 1) / 2;结束
[index,quants] = quantiz(y,阈值,码本);
情节(t y“x”t宽客“。”)
传奇(原始信号的,“量化信号”);
xlim ([0.2 - 0.4])
接受的答案
克里斯·拉皮埃尔
2021年1月15日
编辑:克里斯·拉皮埃尔
2021年1月16日
您正在将数据类型持续时间的变量绘制为x。因此,您的轴由持续时间组成。您使用的xlim值还必须是数据类型持续时间。你使用
秒
创建
t
,所以做同样的
xlim
.
问题1部分(a)
负载handel.mat
t = 0:秒(1/Fs):秒(长度(y)/Fs);
T = T (1:end-1);
情节(t, y)
包含(“Time-sec”)
ylabel (“振幅”)
问题1部分(b)
振幅= abs(y);% abs(a)是全正意义上的振幅
Mp = max(abs(y));% Max是最高振幅。
L = 8;
dyn_range_of_interval = 2*mp/L;
thresholds = linspace(-(mp-dyn_range_of_interval),(mp-dyn_range_of_interval),L-1);
Temp_vector = [-mp thresholds mp];
为k = 1:长度(Temp_vector) 1
电报密码本(k) = (Temp_vector (k) + Temp_vector (k + 1) / 2;
结束
[index,quants] = quantiz(y,阈值,码本);
情节(t y“x”t宽客“。”)
传奇(原始信号的,“量化信号”);
xlim(秒([0.2 - 0.4]))