audio - 如何解决以八度音阶执行 FM 解调的错误?
问题描述
我正在尝试解调调制的 FM 信号。正如您在下面的代码中看到的那样,我使用 fmmod 来调制 FM 信号,但是当我使用 fmdemod 或 ademodce 时,它们都不会返回与原始信号相似的任何东西。对于 fmdemod,我相信你不能像在 fmmod 中那样输入 freqdev,所以它不会执行相反的操作。对于ademodce,我不知道为什么这不起作用。是否有任何其他 Octave 函数可以用来再次获得原始信号,或者我如何正确使用这两个函数中的任何一个来做到这一点?
请参见下面的示例代码:
[sound2,fs]=audioread('sound2.wav');
fc=7500;
freqdev=100;
dt=1/fs;
len=length(sound2)*dt;
t=0:dt:len;
t=t(1:end-1);
t1=t(1:end-1);
FMmod=fmmod(sound2.',fc,fs,freqdev);
FMDemod=ademodce(FMmod,fs,"fm",freqdev); %Or fmdemod(FMmod.',fc,fs) Neither is working.
sound(sound2,fs)
sound(FMDemod,fs)
subplot(2,2,1),plot(t,sound2),title('Original Sound');
subplot(2,2,2),plot(t,FMmod,'r'),title('FM Modulated');
subplot(2,2,3),plot(t,FMDemod,'g'),title('FM De-Modulated');
subplot(2,2,4),plot(t,FMmod-sound2.'), title('Carrier Signal');
解决方案
推荐阅读
- c++ - 如何使用初始化列表 c++ 将元素放入嵌套向量中
- assembly - goto 应该如何在编译器中实现内部(或“兄弟”)范围?
- java - SpringBoot:ReflectionTestUtils.setFields 如何工作?
- woocommerce - 显示客户的总订单号
- apache - 如何强制从 http 重定向到 https 并强制添加 www. 在我的网站上?
- node.js - 转发入站电子邮件 sendgrid
- java - 使用 Java 的 Arc2D 的起始角度和范围值给出了意想不到的结果
- html - HTML 不会在我刚从 zip 文件下载的 Web 服务器上加载图像
- javascript - D3JS V6:多线组
- accessibility - Aria labelledby 无效 - 508 合规性