我被要求在MATLAB中制作一首歌曲,它的特点是采样噪声和音调同时播放,从研究和我得到的东西看起来它应该像将两种声音相加一样简单,但是我一直无法弄清楚。这是我尝试过的代码,我是新手,所以它的效率可能很低。“snare”和“A”的长度相等,均为1025。
load splat; y_splat = y;
Fs = 8192; % the sampling rate
t = 0:1/Fs:0.125; % an array of t values equally spaced from 0 to 0.125
f1 = 220;
A = sin(2*pi*f1*t);
snare = y_splat(7400:8424);
A_new = A + snare;
soundsc(A_new)此代码将导致错误消息:仅支持单声道和双声道音频。我做错了什么?任何帮助都将不胜感激。
发布于 2021-04-13 16:19:30
维度不匹配,snare为1025x1,A为1x1025。通过转置其中的一个来解决它,例如A_new = A + snare';
发布于 2021-04-14 14:32:32
我在发帖后不久就意识到尺寸不匹配。一个简单的撇号修复了这个问题。感谢您的回复。
https://stackoverflow.com/questions/67068277
复制相似问题