Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab Simulink无法从输出端口1传播可变大小模式_Matlab_Audio_Simulink - Fatal编程技术网

Matlab Simulink无法从输出端口1传播可变大小模式

Matlab Simulink无法从输出端口1传播可变大小模式,matlab,audio,simulink,Matlab,Audio,Simulink,我创建了以下模型: 它接收音频输入,通过去噪算法进行去噪,然后将声音输出到扬声器。当在没有ASLA音频捕获的情况下解除连接,并且只使用没有开关的多媒体文件时,它可以正常工作,但只要我按照图中所示进行设置,就会出现以下错误: Simulink cannot propagate the variable-size mode from the output port 1 of cryreg_v2/Short-Time FFT/x to the input port 1 of 'cryreg_v2/S

我创建了以下模型:

它接收音频输入,通过去噪算法进行去噪,然后将声音输出到扬声器。当在没有ASLA音频捕获的情况下解除连接,并且只使用没有开关的多媒体文件时,它可以正常工作,但只要我按照图中所示进行设置,就会出现以下错误:

Simulink cannot propagate the variable-size mode from the output port 1 of cryreg_v2/Short-Time FFT/x to the input port 1 of 'cryreg_v2/Short-Time FFT/Rebuffer. This input port expects a fixed-size mode. The variable-size mode originates from cryreg_v2/Manual Switch. Examine the configurations of cryreg_v2/Short-Time FFT/Rebuffer for one of the following scenarios: 1) the block does not support variable-size signals; 2) the block supports variable-size signals but needs to be configured for them.
我目前的怀疑是,拒绝者不接受麦克风输入,因为它不一致且不固定,因此我需要从麦克风创建某种间隔,拒绝者接收到我不确定如何做的事情


如何实际修复错误,以及我的怀疑是否正确?

缓冲区块不支持可变大小的输入,这是导致错误的原因。当您断开音频捕获块时,您的输入不是可变大小的,这就是它工作正常的原因。您可以通过删除多媒体文件块和开关,而只使用音频捕获来验证这一点

您应该通过避免在手动开关的输出处创建可变大小的信号来解决此问题。由于手动开关的输入大小不同,因此会产生可变大小信号。为了避免可变大小,您可以将两个源块的输出大小设置为相同,或者在手动开关块的一个输入中引入一个缓冲块,以使大小相同