查看单个帖子
旧 2020-05-15, 16:19   #1
xstchh
初级会员
 
注册日期: 2020-05-15
帖子: 2
声望力: 0
xstchh 正向着好的方向发展
默认 matlab将dat格式的音频文件转化为wav格式

MusicName='test.dat';
Quant=quantizer('fixed','floor','saturate',[16,15]);
MusicID=fopen(MusicName,'r');
MusicData=fscanf(MusicID,'%s',[4,inf]);%读取字符矩阵
MusicData=MusicData';
[m,n] = stringsize(Quant,MusicData);
Music=hex2num(Quant,MusicData);%字符转数字
sound(Music,44100);
audiowrite('MusicOutput with no noise.wav',s,44100);
出现了一些问题,请大佬们帮我看看,错误如下:
错误使用 reshape
要执行 RESHAPE,请勿更改元素数目。

出错 embedded.quantizer/hex2num>hexstring2numeric (line 101)
y = reshape(y,m,n);

出错 embedded.quantizer/hex2num (line 55)
x = hexstring2numeric(q,x);

出错 dat2music (line 8)
Music=hex2num(Quant,MusicData);%字符转数字
xstchh 当前离线   回复时引用此帖