1

很抱歉这个菜鸟问题,因为我以前从未使用过 matlab 和信号处理。这是我想要做的:我有一个固定长度的字节数组X,现在我想将它编码为一个声音文件,我也希望这个过程是可逆的,这意味着声音可以转换回X没有错误。我在网上搜索,发现如下代码:

M = 16; 
x = randint(5000,1,M); 
y=modulate(modem.qammod(M),x);

我的问题是,QAM 是最好的方法吗?以及如何使用它?一点点代码示例将不胜感激,谢谢!

更新#1:我试图通过声音(y)输出y,但matlab不允许我这样做,它说我只能输出浮点数。我该如何解决这个问题?谢谢!

4

1 回答 1

1

如果你需要通过空中传输,我认为你面前有很多工作要做。电信系统中最难解决的问题通常是同步,这意味着您的接收器必须及时知道 QAM 符号的放置位置。这并不容易。如果您选择继续,我同意 mtrw 您应该尝试 dsp.stackexchange.com。

例如,尝试对一个简单的调制方案进行成像,其中每个位都转换为一小段正弦波,其频率取决于该位是 1 还是 0。您将如何在接收器端对此进行解码?您需要检测第一位的开始,并在接收器上运行一些自我维持的时钟以进行同步,以在它们不改变的情况下找到位,即 PLL(锁相环)。使用曼彻斯特编码可能会使这更容易,但是您仍然需要做很多工作才能使其运行。

如您所见,当您离开保存的 Matlab 港时,没有简单的解决方案 :-)

此致

于 2013-03-18T20:49:01.083 回答