抱歉这个noob问题,因为我之前从未使用过matlab和信号处理。 这是我想要做的:我有一个固定长度的字节数组X,现在我想将它编码为声音文件,我也希望这个过程是可逆的,这意味着声音可以转换回X而没有错误。我在网上搜索,发现了以下代码:
M = 16;
x = randint(5000,1,M);
y=modulate(modem.qammod(M),x);
我的问题是,QAM是最好的方法吗?以及如何使用它?一点点代码示例将非常感谢,谢谢!
更新#1:我试图通过声音(y)输出y,但是matlab不允许我这样做,它说我只能输出浮动数字。我怎么解决这个问题?谢谢!
答案 0 :(得分:1)
如果你需要通过无线电传输,我认为你面前的工作很安静。在电信系统中要解决的最困难的问题通常是同步,这意味着您的接收器必须知道QAM符号的位置及时。这并不容易。如果您选择继续我同意mtrw您应该尝试dsp.stackexchange.com。
尝试例如对一个简单的调制方案进行成像,其中每个位被转换为一个短的正弦,其频率取决于该位是1还是0。您将如何在接收器端解码?您需要检测第一位的开始并使一些自保持时钟运行以便在接收器上进行同步,以便在它们不发生变化时找到位,即PLL(锁相环)。使用曼彻斯特编码可能会使这更容易,但你仍然需要做很多工作才能使它运行。
如您所见,当您离开保存Matlab港口时没有简单的解决方案:-)
祝你好运