Difference between revisions of "Component: Delay (DSP Operators)"

From Flowcode Help
Jump to navigationJump to search
 
(7 intermediate revisions by the same user not shown)
Line 17: Line 17:
 
==Component Source Code==
 
==Component Source Code==
  
Please click here to download the component source project: [https://www.flowcode.co.uk/wikicopy/componentsource/FC_Comp_Source_DSP_Delay.fcfx FC_Comp_Source_DSP_Delay.fcfx]
+
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_DSP_Delay.fcfx FC_Comp_Source_DSP_Delay.fcfx]
  
 
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_DSP_Delay.fcfx FC_Comp_Source_DSP_Delay.fcfx]
 
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_DSP_Delay.fcfx FC_Comp_Source_DSP_Delay.fcfx]
  
 
==Detailed description==
 
==Detailed description==
 +
 +
 +
 +
  
  
Line 44: Line 48:
  
 
==Examples==
 
==Examples==
 +
 +
 +
 +
  
  
Line 78: Line 86:
 
[[File:DSPDelay.jpg]]
 
[[File:DSPDelay.jpg]]
  
==Macro reference==
 
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DelayArray'''
 
|-
 
| colspan="2" | Passes an entire buffer into the delay buffer and spits out a delayed version of the buffer at the other end 
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
  
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Delay'''
 
|-
 
| colspan="2" | Passes a single value from a buffer into the delay buffer and spits out a delayed value at the other end 
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
  
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetDelaySize'''
 
|-
 
| colspan="2" | Specifies the number of values in the delay buffer to allow the length of the delay to  be adjustable during runtime. 
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
 
| width="90%" | Delay_Count
 
|-
 
| colspan="2" |  
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
  
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PresetDelay'''
 
|-
 
| colspan="2" | Presets the contents of the delay buffer with the specified value. 
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
 
| width="90%" | Value
 
|-
 
| colspan="2" |  
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
  
  
  
  
==Property reference==
 
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Connect To
 
|-
 
| colspan="2" | DSP component with output buffer to collect our data from. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Buffer Size
 
|-
 
| colspan="2" | Number of individual elements the buffer can store, default 1. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Buffer Type
 
|-
 
| colspan="2" | Sets the buffer data type. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Direction
 
|-
 
| colspan="2" | Sets the data direction flow of the component 
 
|-
 
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Delay
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Initial Delay Count
 
|-
 
| colspan="2" | The initial delay that will be used at startup 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Max Delay Count
 
|-
 
| colspan="2" | The maximum number of values to delay the incoming signal by 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Initial Value
 
|-
 
| colspan="2" | Value used to preset the delay buffer. 
 
|-
 
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Delay Calculation
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 
| width="90%" | Sample Rate (Hz)
 
|-
 
| colspan="2" | Sample rate used to generate some useful calculations 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 
| width="90%" | Max Delay (s)
 
|-
 
| colspan="2" | Maximum possible delay in seconds at the specified sample rate 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 
| width="90%" | Initial Delay (s)
 
|-
 
| colspan="2" | Initial delay in seconds at the specified sample rate 
 
|}==Macro reference==
 
  
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DelayArray'''
 
|-
 
| colspan="2" | Passes an entire buffer into the delay buffer and spits out a delayed version of the buffer at the other end 
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
  
 +
==Macro reference==
  
 +
===Delay===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
Line 237: Line 116:
  
  
 +
===DelayArray===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetDelaySize'''
+
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DelayArray'''
 
|-
 
|-
| colspan="2" | Specifies the number of values in the delay buffer to allow the length of the delay to  be adjustable during runtime. 
+
| colspan="2" | Passes an entire buffer into the delay buffer and spits out a delayed version of the buffer at the other end 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
 
| width="90%" | Delay_Count
 
 
|-
 
|-
| colspan="2" |  
 
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 255: Line 130:
  
  
 +
===PresetDelay===
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
Line 273: Line 149:
  
  
 
+
===SetDelaySize===
 
 
==Property reference==
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Connect To
 
|-
 
| colspan="2" | DSP component with output buffer to collect our data from. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Buffer Size
 
|-
 
| colspan="2" | Number of individual elements the buffer can store, default 1. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Buffer Type
 
|-
 
| colspan="2" | Sets the buffer data type. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Direction
 
|-
 
| colspan="2" | Sets the data direction flow of the component 
 
|-
 
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Delay
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Initial Delay Count
 
|-
 
| colspan="2" | The initial delay that will be used at startup 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Max Delay Count
 
|-
 
| colspan="2" | The maximum number of values to delay the incoming signal by 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Initial Value
 
|-
 
| colspan="2" | Value used to preset the delay buffer. 
 
|-
 
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Delay Calculation
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 
| width="90%" | Sample Rate (Hz)
 
|-
 
| colspan="2" | Sample rate used to generate some useful calculations 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 
| width="90%" | Max Delay (s)
 
|-
 
| colspan="2" | Maximum possible delay in seconds at the specified sample rate 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 
| width="90%" | Initial Delay (s)
 
|-
 
| colspan="2" | Initial delay in seconds at the specified sample rate 
 
|}==Macro reference==
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DelayArray'''
 
|-
 
| colspan="2" | Passes an entire buffer into the delay buffer and spits out a delayed version of the buffer at the other end 
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Delay'''
 
|-
 
| colspan="2" | Passes a single value from a buffer into the delay buffer and spits out a delayed value at the other end 
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
 
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
|-
Line 384: Line 166:
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''PresetDelay'''
 
|-
 
| colspan="2" | Presets the contents of the delay buffer with the specified value. 
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
 
| width="90%" | Value
 
|-
 
| colspan="2" |  
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
 
| width="90%" style="border-top: 2px solid #000;" | ''Return''
 
|}
 
 
 
  
  

Latest revision as of 10:26, 20 October 2023

Author Matrix Ltd
Version 1.2
Category DSP Operators


Delay component

Allows an adjustable delay to be inserted into the DSP system

Component Source Code

Please click here to download the component source project: FC_Comp_Source_DSP_Delay.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_DSP_Delay.fcfx

Detailed description

No detailed description exists yet for this component

Examples

Here is a simple example file for the Delay component.

FC6 Icon.png Delay

The DelayADC component is used to set the amount of delay that the component provides 0-2550 samples in steps of 10 samples.


The Input ADC component is used to pass a variable value into the DSP chain to allow the delay to be simulated.


Here is a picture showing the response of the delay component using the data recorder window.

DSPDelay.jpg








Macro reference

Delay

Fc9-comp-macro.png Delay
Passes a single value from a buffer into the delay buffer and spits out a delayed value at the other end 
Fc9-void-icon.png - VOID Return


DelayArray

Fc9-comp-macro.png DelayArray
Passes an entire buffer into the delay buffer and spits out a delayed version of the buffer at the other end 
Fc9-void-icon.png - VOID Return


PresetDelay

Fc9-comp-macro.png PresetDelay
Presets the contents of the delay buffer with the specified value. 
Fc9-u16-icon.png - UINT Value
 
Fc9-void-icon.png - VOID Return


SetDelaySize

Fc9-comp-macro.png SetDelaySize
Specifies the number of values in the delay buffer to allow the length of the delay to be adjustable during runtime. 
Fc9-u16-icon.png - UINT Delay_Count
 
Fc9-void-icon.png - VOID Return


Property reference

Fc9-prop-icon.png Properties
Fc9-type-16-icon.png Connect To
DSP component with output buffer to collect our data from. 
Fc9-type-21-icon.png Buffer Size
Number of individual elements the buffer can store, default 1. 
Fc9-type-16-icon.png Buffer Type
Sets the buffer data type. 
Fc9-type-16-icon.png Direction
Sets the data direction flow of the component 
Fc9-conn-icon.png Delay
Fc9-type-14-icon.png Initial Delay Count
The initial delay that will be used at startup 
Fc9-type-14-icon.png Max Delay Count
The maximum number of values to delay the incoming signal by 
Fc9-type-14-icon.png Initial Value
Value used to preset the delay buffer. 
Fc9-conn-icon.png Delay Calculation
Fc9-type-15-icon.png Sample Rate (Hz)
Sample rate used to generate some useful calculations 
Fc9-type-15-icon.png Max Delay (s)
Maximum possible delay in seconds at the specified sample rate 
Fc9-type-15-icon.png Initial Delay (s)
Initial delay in seconds at the specified sample rate