如何将WAV文件中读出的信号叠加上正弦信号
=wavread('e:\test.wav');t=0:0.01:10;
x=sin(2*pi*50*t);
Y=y+x;
显示维度不同,不能叠加,怎样解决,谢了! 原帖由 公冶玄 于 2007-4-27 15:37 发表
=wavread('e:\test.wav');
t=0:0.01:10;
x=sin(2*pi*50*t);
Y=y+x;
显示维度不同,不能叠加,怎样解决,谢了!
生成 t 时,按照 y 的维数进行 原帖由 eight 于 2007-4-27 16:08 发表
生成 t 时,按照 y 的维数进行
麻烦再问一下,比如现在y的维数是100,那么 t 应该怎样生成? t=0.01:0.01:1 原帖由 eight 于 2007-4-27 16:23 发表
t=0.01:0.01:1
好像还是不可以。
y的维度是length(y)吗
回复 #5 公冶玄 的帖子
应该是或者用size(y) 原帖由 公冶玄 于 2007-4-27 16:35 发表
好像还是不可以。
y的维度是length(y)吗
建议先阅读matlab基础书,了解matlab基本知识 =wavread('e:\test.wav')
得到的采样率是16000,WAV长度是10秒。
N=length(y)得到的是160000
那么,是不是写成t=1/160000:1/160000:1或是t=1/16000:1/16000:10?
这两个我都试过, x=sin(2*pi*50*t);Y=x+y 还是加不到一起。报错:Matrix dimensions must agree.
因为急用,麻烦各位了!不好意思 原帖由 公冶玄 于 2007-4-27 19:00 发表
=wavread('e:\test.wav')
得到的采样率是16000,WAV长度是10秒。
N=length(y)得到的是160000
那么,是不是写成t=1/160000:1/160000:1或是t=1/16000:1/16000:10?
这两个我都试过, x=sin(2*pi*50* ...
后者
对 t 或者 y 转置
回复 #8 公冶玄 的帖子
是否可以考虑下linspace指令?
页:
[1]