Feedback Loop in Signal Flow

In order to achieve complex reverb processing implementation, you can provide feedback of one audio object to another audio object, this can be achieved by adding feedback connections in signal flow. You can add one or more feedback connections in a signal flow.

On adding any audio connection, if loop detected in signal flow, following prompt will appear. On clicking “Yes”, the connection will be changed as feedback connection. On clicking “No”, the connection will be added as a normal connection.

An existing audio connection can be changed to feedback connection using context menu option “Set as Feedback Connection”.

An existing feedback connection can be changed to normal connection using context menu option “Set as Normal Connection”.

The keyboard shortcut “Ctrl+Alt+F” can be used to set a normal connection as feedback connection or vice versa. You can select one or more connections and use this keyboard shortcut.

The feedback connection will be shown as dashed yellow line as below,

You can mark any audio connection as feedback connection. But remember that, the feedback connections will be ignored/skipped during execution order calculation.

If any loop connection detected on save or if a legacy signal flow already has a loop connection, the designer will indicate this and an error with the compiler will be reported. In order to save the signal flow, you must first remove any existing loops or set the loop connections as feedback connections.

Feedback connections are supported inside CAO and on connections of CAO.

Self-loop is not allowed on an audio object.

The execution order of audio objects will not be changed on adding new feedback connections in a signal flow. But changing an existing connection to a feedback connection can affect execution order because the feedback connections will be ignored during execution order calculation.

InPlaceComputation will be disabled on audio objects with feedback loop connection. This includes audio objects which are source and target of feedback connection.

Separate stream indexes will be allocated for feedback connections. Same index will be allocated for input and output streams of feedback connection. These indexes when in use, will not be reused for other connection.

There is no restriction to add loops in control connections.