SignalLab allows fast, complex signal manipulations and visualization with almost zero lines of code! 

 
  • Acquire
  • Synthesize
  • Process
  • Analyze
  • Output
  • Control
 

What can I build with SignalLab?

SignalLab is a set of components for very fast digital signal processing (DSP). The library allows very fast complex signal manipulations and visualization with zero lines of program code.

 

Applications include:  real time data acquisition, process control, signal analysis, digital signal analysis, audio analysis, video analysis, data visualization, visual instrumentation and more.

 

A simple signal generation tutorial (.NET or VCL) and a more complex signal analysis tutorial (.NET or VCL)  are available in the tutorials section.

 

Acquire, process, record and display signals:

/system/imgs/11/original/SignalProcessing.jpg?1311794241

 
 
Play and analyze signals and display the results:
 
/system/imgs/9/original/AnalyzeSignal.jpg?1311794183
 
 
 
 
 
Generate and output signals:
 
/system/imgs/10/original/GenerateSignal.jpg?1311794215
 
 
 
 
Mix different signal sources, then output and display the results:
 
 
/system/imgs/12/original/SignalMix.jpg?1311794264
 
 
SignalLab contains: SignalPlayer, SignalLogger, Signal Generator for Sine, Triangle, Square, DC and Jaehne signals, Noise generators, Scope component, Waterfall, LowPass, HiPass, BandPass, BandStop filters, FIR, Arbitrary IIR, BiQuad IIR, Fast Fourier Transformation (FFT) inverse FFT, Discrete Fourier Transformation (DFT), Inverse DFT, Discrete Cosine Transformation (DCT), Inverse DCT, Median, Hilbert, Haar, Power Spectrum, custom filters, signal combining components, arithmetic components, Cartesian, Polar converters, format converters, custom integer, real, and complex data filters, and much more.  See the "Components" tab for details.

Our component libraries come in 3 versions a VCL - Firemonkey version (for Delphi / C++ Builder / RAD Studio 10.3 or higher), an MFC compatible Visual C++ version, and a .NET 4.0 supporting Visual Studio 2005 or higher.
 
The RAD Studio version is a set of native VCL and Firemonkey components of which all include now the powerful Mitov Runtime.
 
The Visual C++ version is a set of native Visual C++ classes (components).
 
The NET 4.0 (4.5 and higher compatible) version is a set of managed .NET components.  The .NET version has the same performance as the native versions, and supports all the Microsoft .NET languages including Visual Basic, C#, J#, F# and C++/CLI.
 
Due to the unique architecture of the OpenWire platform, the components are implemented the same way in Managed .NET and native Windows (32 and 64 bit) environments. The code to control a component from VB.NET, C++/CLI, C#, and J#, Visual C++ MFC, Delphi, and C++ Builder is almost identical. This allows the developers to migrate and share code between the different environments thus significantly improving the productivity.
 
OpenWire Libraries: for fast, complex data stream processing with almost zero lines of code!
Delphi Prism RAD Studio XE8 Delphi XE8 C++ Builder XE8 RAD Studio 10 Seattle Delphi 10 Seattle C++ Builder 10 Seattle RAD Studio 2010 C++ Builder 2010 Delphi 2010

Analysis

SLNoiseStats SLNoiseStats

Calculates the noise stats of a signal: SNR, THD, SINAD, Harmonics and more.

SLPatternDetector SLPatternDetector

Use this component to detect patterns in the buffers

Arithmetic

SLMultiply SLMultiply Combines multiple input real signals by performing Multiply operation
SLAdd SLAdd Combines multiple input signals by performing Add operation over real data
SLSubtract SLSubtract Combines two input real signals by performing Subtract operation
SLDivide SLDivide Combines two input real signals by performing Divide operation
SLApplyComplexConst SLApplyComplexConst Applies a Complex constant to each sample
SLApplyIntConst SLApplyIntConst Applies a Integer constant to each sample
SLApplyRealConst SLApplyRealConst Applies a Real constant to each sample
SLApplyWindow SLApplyWindow Applies a window function over the input signal
SLAddComplex SLAddComplex Combines multiple input signals by performing Add operation over complex data
SLMultiplyComplex SLMultiplyComplex Combines multiple input complex signals by performing Multiply operation
SLSubtractComplex SLSubtractComplex Combines two input complex signals by performing Subtract operation
SLDivideComplex SLDivideComplex Combines two input complex signals by performing Divide operation
SLMinMax SLMinMax

Use this component to find the minimal and maximal values in the each buffer

SLMean SLMean

Use this component to find the Mean(average) of the data buffers

Converters

SLChangeRange SLChangeRange Changes the output range of the signal
SLDetectLevels SLDetectLevels Detects levels in the input signal
SLPair SLPair Pairs multiple data buffers together
SLComplexToReal SLComplexToReal Converts Complex buffer to Real and Imaginary buffers
SLRealToComplex SLRealToComplex Converts Real and Imaginary buffers to a Complex buffer
SLRealToInt SLRealToInt Converts Real data to Integer
SLIntToReal SLIntToReal Converts Integer data to Real
SLCartToPolar SLCartToPolar Converts the elements of a complex signal to polar coordinate form
SLPolarToCart SLPolarToCart Converts the polar form magnitude/phase pairs stored in input signals to Cartesian coordinate form
SLHilbert SLHilbert Performs a Hilbert transform
SLToSquare SLToSquare Converts the input signal to a square signal
SLPowerSpectrum SLPowerSpectrum

Computes the Power Spectrum of a Real Buffer

SLConjugate SLConjugate Performs Conjugater conversion
SLRepack SLRepack Rearranges the samples into buffers with a specified size
SLRealTodB SLRealTodB Converts real data to dB format
SLMakeStructure SLMakeStructure

Combines elements into a strucrure

SLSplitStructure SLSplitStructure

Splits a structure into multiple elements

Custom Filters

SLGenericRealValue SLGenericRealValue User defined filter for Real values
SLGenericReal SLGenericReal User defined filter for Real data
SLGenericFilter SLGenericFilter User defined filter for Binary data
SLGenericRealMatrix SLGenericRealMatrix User defined generator for Real matrix data
SLGenericInt SLGenericInt User defined filter for Integer data
SLGenericComplex SLGenericComplex User defined filter for Complex data

DirectShow support components

MLDSMediaFilter MLDSMediaFilter

Passes media trough a DirectShow filter

File access

SLLogger SLLogger Records the signal to file
SLPlayer SLPlayer Plays signal from file

Filters

SLIir SLIir Performs an Arbitrary IIR filter over the input signal
SLBandPass SLBandPass Performs a BandPass filter over the input signal
SLBandStop SLBandStop Performs a BandStop filter over the input signal
SLFir SLFir Performs a FIR filter over the input signal
SLHighPass SLHighPass Performs a HighPass filter over the input signal
SLLowPass SLLowPass Performs a LowPass filter over the input signal
SLMedian SLMedian Performs a Median Filter
SLBiQuadIir SLBiQuadIir Performs a BiQuad IIR filter over the input signal
SLDelayLine SLDelayLine Delays the signal
SLRemoveDC SLRemoveDC Removes the DC component from the signal
SLSnapshot SLSnapshot Takes a snapshot of the data
SLSwitch SLSwitch Enables or disables the data to go trough
SLCombFilter SLCombFilter Performs a Comb filter over the input signal

Generic Filters

SLGenericReal SLGenericReal User defined filter for Real data
SLGenericFilter SLGenericFilter User defined filter for Binary data
SLGenericRealMatrix SLGenericRealMatrix User defined generator for Real matrix data
TLGenericFilter TLGenericFilter

User defined timing filter

Generic Generators

SLGenericGen SLGenericGen User defined generator for Binary data
SLGenericRealGen SLGenericRealGen User defined generator for Real data

Meters

SLRMSMeter SLRMSMeter RMS (Root Mean Square) Meter

Other

OpenWireStudio OpenWireStudio

Loads, executes, and exchanges data with OpenWire Studio projects

Signal Filters

SLGenericRealValue SLGenericRealValue User defined filter for Real values
SLGenericReal SLGenericReal User defined filter for Real data
SLGenericFilter SLGenericFilter User defined filter for Binary data
SLGenericRealMatrix SLGenericRealMatrix User defined generator for Real matrix data

Signal Generators

SLGenericRealValueGen SLGenericRealValueGen User defined generator for Real values
SLGenericGen SLGenericGen User defined generator for Binary data
SLGenericRealGen SLGenericRealGen User defined generator for Real data
SLGaussGen SLGaussGen Generates Gaussian distribution pseudo-random samples
SLRandomGen SLRandomGen Generates pseudo-random Real(double) dta samples
SLSignalGen SLSignalGen Generates Tone(Sine Wave), Triangle, Rectangle, Ramp or DC signal
SLGenericIntGen SLGenericIntGen User defined generator for Integer data
SLGenericComplexGen SLGenericComplexGen User defined generator for Complex data

Timing components

TLWatchDogTimer TLWatchDogTimer

Implements a Watch Dog Timer.

TLMainThredEvent TLMainThredEvent

Allows other threads to generate main thread notifications.

TLClockGen TLClockGen

Provides clock for other components.

TLThreadEvent TLThreadEvent

Use this component to execute code in a separated thread

TLStopWatch TLStopWatch

Use this component to implement a Stop Watch

TLFrequencyMeter TLFrequencyMeter

Use this component to implement a Frequency meter

TLCounter TLCounter

Use this component to implement a Counter

SLSnippetTrigger SLSnippetTrigger

Defines trigger data class

Transformations

SLFourier SLFourier Performs Fast Fourier Transformation (FFT)
SLInverseFourier SLInverseFourier Performs Real Inverse Fast Fourier Transformation (Inverse FFT)
SLInverseComplexFourier SLInverseComplexFourier Performs Complex Inverse Fast Fourier Transformation (Inverse FFT)
SLDft SLDft Performs Discrete Fourier Transformation (DFT)
SLInverseDft SLInverseDft Performs Real Inverse Discrete Fourier Transformation (Inverse DFT)
SLInverseComplexDft SLInverseComplexDft Performs Complex Inverse Discrete Fourier Transformation (Inverse DFT)
SLDct SLDct Performs Discrete Cosine Transform (DCT)
SLInverseDct SLInverseDct Performs Inverse Discrete Cosine Transform (Inverse DCT)
SLGoertzOne SLGoertzOne Computes the Discrete Fourier Transform ( Goertzel DFT ) for a given frequency
SLHaar SLHaar Performs Forward single-level discrete wavelet Haar transformation
SLInverseHaar SLInverseHaar Performs Inverse single-level discrete wavelet Haar transformation
SLAbs SLAbs Converts the values of the buffers to absolute values
SLAverageValue SLAverageValue

Use this component to average the input values

Visualization

SLScope SLScope Visible Scope/Plot component for representing floating point data
SLWaterfall SLWaterfall Visible waterfall for representing Real(double) data

Video Layers

SLScopeLayer SLScopeLayer

A scope drawing layer.  You can add this layer to any drawing component such as TVLDraw to render a video layer containing a scope

SLWaterfallLayer SLWaterfallLayer

A waterfall draw layer.  You can add this layer to any drawing component such as TVLDraw to render a video layer containing a waterfall

Matrix Layers

SLExternalScopeMatrixLayer SLExternalScopeMatrixLayer A scope matrix component layer
SLExternalWaterfallMatrixLayer SLExternalWaterfallMatrixLayer A waterfall matrix component layer

Control Element

SLExternalScopeElement SLExternalScopeElement A scope component element
SLExternalWaterfallElement SLExternalWaterfallElement A waterfall component element

SignalLab: What's New

New in Version 8.0.0.126 (released on 2024-08-19)

  • Improved Delphi 12 support
  • Improved Design time property and component editors
  • Improved TTLMainThreadEvent implementation
  • Improved support for Packing/Unpacking Structure and Packet elements
  • Improved Scope implementation
  • Added option to resize the buffers when loading from files

New in Version 8.0.0.120 (released on 2024-06-14)

  • Improved Delphi 12.0 support
  • Improved Persistent Collections Editor
  • Improved LiveBinding editor performance
  • Added Terminate for IShellProcess
  • Added TFileHelper with ContentEquals method
  • Improved compatibility with the Delphi 12.0 Modern Compiler
  • Added Unsigned buffer support
  • Improved performance
  • Improved Scope/Waterfall screen refresh
  • Improved Debugger Visualizers

New in Version 8.0.0.108 (released on 2024-02-21)

  • Improved C++ Builder support
  • Improved Design time Performance

New in Version 8.0.0.101 (released on 2023-12-06)

  • Added Delphi 12 support
  • Redesigned installation not requiring Admin privileges when compiling the libraries
  • Improved Performance
  • Added Sets support
  • Improved Mitov TypeInfo
  • Improved Dynamic Type Info
  • Improved Mitov Design Time API
  • Redesigned Persistent Collection Editor
  • Modernized Dialogs
  • Improved Win64 support
  • Improved Container Classes
  • Added TDirecory helper
  • Large number of bug fixes
  • Improved Property and Component Editors
  • Added MouseHitPoint to Scope Channels, and Waterfall Highlighting

New in Version 8.0.0. 77 (released on 2022-04-30)

  • Improved Scope Threading support

New in Version 8.0.0. 74 (released on 2022-04-25)

  • Updated maintenance release for RAD Studio/Delphi 10.4 Sydney with minor improvements

New in Version 8.0.0. 73 (released on 2022-04-20)

  • Updated maintenance release for RAD Studio/Delphi 10.3 Rio with minor improvements

New in Version 8.0.0. 69 (released on 2022-03-28)

  • Added support of indexed list collection enumebarbles
  • Improved MAC64 support
  • Improved OpenWire Graphical Editor
  • Improved performance
  • Improved support for drag-able Scope and Waterfall markers
  • Added mouse events for Scope and Waterfall marker cross hairs
  • Improved TSLDetectLevels component

New in Version 8.0.0. 63 (released on 2022-03-09)

  • Updated maintenance release for RAD Studio/Delphi 10.4 Sydney

New in Version 8.0.0. 62 (released on 2022-03-07)

  • Updated maintenance release for RAD Studio/Delphi 10.3 Rio

New in Version 8.0.0. 59 (released on 2022-03-02)

  • Improved RAD Studio 11 compatibility
  • Improved RGBW and RGBWAlpha color support
  • Improved Execute Process implementation
  • Improved support for OpenWire State pins
  • Significantly expanded MouseHitPoint settings for the Scope, and Waterfall
  • Added Clock Event elements in Make/Split Structure components

 

New in Version 8.0.0. 48 (released on 2022-01-28)

  • Added basic RGBW and RGBWAlpha support
  • Number os small design time bug fixes

New in Version 8.0.0. 43 (released on 2021-12-21)

  • Improved RAD Studio 11 compatibility
  • Improved Mitov.Runtime collections
  • Improved performance
  • Improved Dynamic Type Info support
  • Improved Visual Live Binding support
  • Improved elements editor
 

New in Version 8.0.0. 36 (released on 2021-10-11)

  • Added RAD Studio 11 support
  • Improved Performance
  • Improved Property Editors
  • Improved Debugger Visualizers
  • Added more Format Converters
  • Improved JSON support
  • Improved FMX Waterfall implementation
 

New in Version 8.0.0. 27 (released on 2021-06-20)

  • Improved RAD Studio 10.4 Sydney support
  • Improved Dynamic Type Info implementation

New in Version 8.0.0. 21 (released on 2021-05-12)

  • Added RAD Studio 10.4 Sydney support
  • Improved Dynamic Type Info implementation

New in Version 8.0.0. 0 (released on 2020-11-26)

  • Added Visual Studio 2019 support
  • Redesigned Visual C++ support
  • Added Byte and Char visual live bindings
  • Significantly improved loading execution, and editing speed
  • Significantly improved JSON support
  • Improved IGDIPlus rendering performance
  • Modified to use interface class function methods instead of constructors
  • Redesigned pin path collection to significantly improve the speed
  • Redesigned to set pin and properties owner fields on creation
  • Improved pin information caching
  • CreateLock replaced by Create with Lock parameter
  • Improved FMX Design Time support
  • Improved FMX support
  • Improved zoom selecting in the scope

New in Version 7.8.3.72 (released on 2020-09-24)

  • Updated to RAD Studio 10.3 Rio Update 3
  • Added support for Boolean Buffers
  • Improved buffer visualizers
  • Added Audio and Video support to the Packet and Structure components
  • Added UnpackedOutputPin to the Split Structure and Unpacket components
  • Significantly Improved FMX support for the Scope and Waterfall components
  • Improved Unpacket implementation
  • Improved Visual Live Bindings
  • Significantly redesigned OpenWire Editor
  • Added initial Quaternion and 3D Point support
  • Added OSX64 support
  • Improved overall performance and stability
  • Added option to use Const anonymous methods for improved performance
  • Improved FMX compatibility and support
  • Simplified JSON API
  • Improved JSON implementation
  • Improved sockets implementation
  • Added Sockets Multicast support
  • Significantly improved Execute Process implementation
  • Added support TStrings reverse enumerators and Query interface trough class helper
  • Improved Dynamic Type Info implementation
  • Improved Property Collection and Component Collection editors
  • Improved Property editors

New in Version 7.8.2.288 (released on 2018-12-21)

  • Added RAD Studio 10.3 Rio support
  • Improved Dynamic Type Info implementation
  • Improved property editors

New in Version 7.8.2.271 (released on 2018-11-12)

  • Added Initial Linux support
  • Added Initial iOS support
  • Added RAD Studio 10.2 Tokyo support
  • Added Visual Studio 2017 support
  • Added 64 bit Visual C++ support
  • Improved MAC, and Android compatibility
  • Added 8, and 16 bit integer and unsigned packet elements
  • Improved fiter designer
  • Added OnDragged event for TSLDisplayCursor
  • Improved support for Scope Cursors
  • Added separated AutoScaling EnabledMin and EnabledMax properties
  • Added initial Waterfall Interpolate option
  • Added TSLWaterfallMarkers.AddAt
  • Added CursorTrail settings
  • Added GetXIndexesAtValue and GetYIndexesAtValue to the Scope Channels
  • Added serialization for ISLDataBuffer
  • Added buffer enumerators
  • Improved bindings API
  • Pins converted to use the new Mitov.Runtime serialization
  • Added OWRequiredPinAttribute support
  • Added TOWIntToCardinalFormatConverter and TOWCardinalToIntegerFormatConverter
  • Added TOWRealToRealComplexFormatConverter
  • Added TOWRealListStatePin and TOWIntegerListStatePin
  • Added Execute Process
  • Added Command Line parsing and Process Execute
  • Added option to disable the design time extentions
  • Added Socket Binding
  • Redesigned JSON Serialization
  • Added TPeriodicThread
  • Added initial Dynamic Type Info implementation
  • Added GetIndexedSubProperty in the RTTI
  • Added GetType for TObject in the RTTI
  • Added support for both object and class in TMethodInfo.Invoke in the RTTI
  • Enchanced Query functionality
  • Added IPairCollection
  • IArrayWriter renamed to ISequentialWriter
  • IArrayReader renamed to ISequentialReader
  • Improved Serialization Readers
  • Added Reserialize
  • Improved design time property editors support
  • Added option to replace property collection items while keeping all compatible settings
  • Added filtering for property collections
  • Added support for categorized list property selection
  • Added TreeView filtering support
  • Updated to use the latest Delphi language features

New in Version 7.8.0.0 (released on 2016-05-03)

  • Added RAD Studio 10.1 Berlin support
  • Removed the old .NET 2.0 Assemblies
  • Added option to Enable the processing engines
  • Added Visual Live Binding property editors
  • Added Reset to Default property editors
  • Added Enum property editors
  • Added Class events property editors
  • Added Multi-Event property editors
  • Added SaveBufferSizes for TSLLogger and TSLPlayer
  • Introduced MAC support for some of the components when compiling with source code

New in Version 7.7.0.0 (released on 2015-10-28)

  • Added 10 Seattle support
  • Added support for VS2015
  • Added TOWBoolToIntFormatConverter
  • Improved threading support
  • Improved OpenWire Editor
  • Clock pins changed to MiltiSink
  • Improved Design Time Editors
  • Improved JSON support
  • Improved collections
  • Added more Live Binding types
  • Added support for hosting OpenWire Studio projects
  • Added serialization support in the buffers

New in Version 7.6.0.0 (released on 2015-04-17)

  • Added TTLGenericFilter
  • Added more visual live binding types
  • Significantly improved property Delphi editors
  • Added option for WindowType None
  • ISLSequenceStamp - interfaced

New in Version 7.5.1.0 (released on 2014-12-20)

  • Improved .NET support
  • Enchanced OpenWire Editor
  • Added custom toolbar buttons, and images to the PlotLab components
  • Added more visual live bindings
  • Added custom Width for the display cursors to the PlotLab components
     

New in Version 7.5.0.0 (released on 2014-11-18)

  • Added button events to the PlotLab components
  • Added selection mouse events to the PlotLab components
  • Added HoldWhileZooming to the PlotLab components
  • Added DisplayChannelLink custom drawing to the PlotLab components
  • Includes the free Mitov.Runtime
  • Added XE7 support
     

New in Version 7.0.0.0 (released on 2014-04-15)

  • XE5 and XE6 support
  • Significantly enhanced OpenWire Editor
  • Improved Property and component editors
  • Improved FireMonkey support
  • Performance improvements
  • Added TLPProcessingManager component
  • Added TTLSynchronize component
  • Added support for IIR, and Biquad IIR LowPass, HighPass, BandPass and BandStop filetrs
  • Improved filter designer
  • Improved access to the filter taps
  • Added support for DB signal data binding
  • Added a number of new data bindings
  • Added support for VCL DB Components visual live binding

New in Version 6.0 (released on 2013-06-12)

  • Added support for Delphi / C++ Builder / RAD Studio XE4
  • The OpenWire Editor and Visual Live Binding are now included in the install
  • Added TTLStopWatch component
  • Added TTLCounter component
  • Added TTLThreadEvent component
  • Added TTLFrequencyMeter component
  • Added TSLMean component
  • Added TSLPatternDetector component
  • Added TSLSnippetTrigger component
  • Added TSLAverageValue component
  • Improved Firemonkey support
  • Significantly improved threading model and performance
  • Significant code reduction due to upgrade to the latest language features such as generics, anonymous methods, and attributes
  • New design time API and functionality
  • Better integration with the OpenWire Editor including inplace editors in the OpenWire view
  • Discontinued support for Delphi and C++ Builder versions older than XE2 due to the lack of support for the latest language features in them
  • Improved .NET memory management
  • Improved .NET design time integration
  • Improved OpenWire Editor .NET integration

New in Version 5.0.3.1 (released on 2012-10-20)

  • Fixed a bug when populating existing buffers in .NET generic filters

New in Version 5.0.3 (released on 2012-10-10)

 

  • Added cursor pins for the Waterfall component
  • Added floating markers for the Scope component
  • Added support for Delphi / C++ Builder / RAD Studio XE3
  • Added support for Visual Studio 2012
  • Improved FireMonkey support
  • Fixed memory leak for .NET generic filters

New in Version 5.0.2 (released on 2012-04-16)

 

  • Added FireMonkey support.
  • Added 64 bit support for VCL, FireMonkey, and .NET
  • All .NET assemblies are now managed assemblies.
  • The .NET assemblies are reduced by half combining low level and high level assemblies, and simplifying deployment.
  • All .NET assemblies now contain the necessary 32 and 64 bit BPLs and DLLs internally simplifying the deployment.
  • The .NET Visual C++ redistributables are no longer needed.
  • Added PlotLab Waterfall Cursors, CursorLinks and Labels.
  • Added PlotLab Waterfall Cursor Intersection pins.

New in Version 5.0.1 (released on 2011-10-18)

  • The managed assemblies are now rewritten in C# for better .NET 4.0 compatibility.
  • Added support for .NET 4.0 and .NET 3.5 “Client Profile”.
  • Significantly improved .NET type converters.
  • Significantly optimized component loading performance in .NET.
  • Major improvements in the .NET property editors.
  • Small improvements in the Unicode support for VC++.
  • Improved VisualStudio 2010 .NET support.
  • .NET assemblies have been renamed to better match the Microsoft guidelines.
  • Added .NET 4.0 assemblies.
  • Improved filter designer.

New in Version 5.0 (released on 2011-09-05)

  • Added Delphi XE and XE2 support.
  • Added Scope and Waterfall marker crosshairs.
  • Brand new subsample Waterfall rendering mechanism.
  • Improved filter designer.
  • Added variable number of cosine terms.
  • Added optional user input for the video layers.
  • Significantly improved multithreading model adapted for multicore systems, with advanced relaxed interlocking, and with optional per-component, dedicated threads.

New in Version 4.5

  • Added Visual Studio 2010 support.
  • Added TSLAddComplex component.
  • Added TSLMultiplyComplex component.
  • Added TSLSubtractComplex component.
  • Added TSLDivideComplex component.
  • Added TSLGenericRealMatrix component.
  • Added SLGenericRealValue and TSLGenericRealValueGen components.
  • Improved multithreading locks.
  • Improved Scope component.
  • Improved RAD Studio 2010 buffer debugger visualizes.

New in Version 4.3.1

  • Updated install.
  • Improved RAD Studio 2010 buffer debugger visualizes.

New in Version 4.3

  • Added RAD Studio 2010 support.
  • Added support for composite controls.
  • Added component elements support for the Scope and Waterfall components.
  • Improved .NET memory management.
  • Added RAD Studio 2010 buffer debugger visualizes.

New in Version 4.0.1

  • Added multiple axes support for the Scope cursors.
  • Added support for short, unsigned short and unsigned integer data for the scope and waterfall components.
  • Improved marker support for the Scope.
  • Improved installs.

New in Version 4.0

  • Full Visual Studio 2008 support.
  • Full RAD Studio 2009 support.
  • Added Prism support.
  • Improved .NET support.
  • The library is now fully Unicode compliant.
  • New higher performance multithreading locking for better multi core utilization.
  • Significantly enhanced buffer classes.
  • Added Comb filter.
  • Improved noise stats component.
  • Added integrated GDI+ support.
  • The Scope component supports multiple X and Y Axes.
  • Added Scope and Waterfall toolbar customization.
  • The Scope now allows data gaps.
  • Added Scope Automatic data down sampling for faster drawing of huge amounts of data.
  • Added Scope X Axis logarithmic support.
  • Added Scope channel links (Allow channels to be paired together to form a zone)
  • Circular and arbitrary zones added to the Scope component.
  • Added Scope Step channel mode.
  • Added scope panning navigation mode.
  • Added Scope directional zooming.
  • Added Scope and Waterfall Axis and Level configuration buttons.
  • Added video layers support.
  • Added new examples.

New in Version 3.1

  • Improved filter designers.
  • All libraries are available under .NET.
  • All design time features are now available in .NET
  • All .NET assemblies are signed.
  • The assemblies are registered in GAC.
  • All DLLs are made embedded resources in the assemblies.
  • Fixed some minor OpenWire problems.
  • Full RAD Studio 2007 support.
  • Fixed problems with Reversed and Vertical scope.
  • Added new custom step modes to the Scope and Waterfall.
  • Added data access methods to the Waterfall.
  • Added number of new design editors.
  • Enhanced help files.
  • Delphi 2005, BDS 2006, and RAD 2007 help files are now integrated.
  • Added new examples.

New in Version 3.0

  • Updated to IPP 5.1.
  • Added noise stats component.
  • New faster multithreading buffer protection.
  • New faster buffer memory manager.
  • The DataAceessObjects for the buffers are now obsolete. The functionality is moved to the buffers.
  • The buffers raw data access methods now are called Read, Write and Modify. The ModifyData is split into Modify and Write to reduce unnecessary memory copy operations and to improve the performance.
  • Added On/Off Switch component.
  • Added Snapshot component.
  • Added basic Unicode support for Visual C++ MFC.
  • Fixed bug in CTStrings support in Visual C++ MFC.
  • Added Generic generator components.
  • Added FFT and DFT normalization.
  • Added FIR and IIR filter designers.
  • Added Scope and Waterfall custom axis labels.
  • Added Scope channel value intersections support.
  • Added Scope and Waterfall Axis zooming and toolbars.
  • Added X/Y plotting support to the Scope.
  • Added Scope channel highlighting.
  • Added Scope Channel OnClick events.
  • Added Scope Cursor events.
  • Added Scope and Waterfall mouse value tip window.
  • Added Scope and Waterfall OnZoom events.

New in Version 2.2.1

  • Fixed a conflict with TChart.
  • Added initial support for vertical Scope.

New in Version 2.2

  • Added NoiseStats component.
  • Added BDS 2006 support.
  • Added Visual Studio 2005 support.
  • Added Scope measurements and selections.
  • Added basic mouse wheel support.
  • Enhanced property pages.
  • Allows adding cursors from the property pages.
  • Allows reversed X axes for the Waterfall component.
  • The cursors and the markers now are available in the legend.
  • The Scope and the Waterfall can receive focus.
  • Added Scope cursors, and property pages.
  • Enhanced Scope markers.
  • This version fully supports Visual C++.
  • Added sample step in all the FFT components.
  • Added Waterfall markers.
  • Added custom draw functionality in the Scope channels.
  • Added Undo/Redo zoom functionality.
  • Added channel editor for the Scope.
  • Added Marker editor for the Waterfall.
  • Fixed sampling rate in the LowPass, HighPass, BandPass, and BandStop filters.
  • New RemoveDC component.

New in Version 2.1

  • New delay line component.
  • New Absolute value component.
  • Improved master pumping.
( Click to view Larger images. )
These demos are executable after downloading.
Also see:   Demo source code downloads

SignalLab Examples

Generate Signals Generate Signals OpenWire SL Generate Signals
Perform LowPass filter Perform LowPass filter OpenWire SL Perform LowPass filter
Demo:  Low Pass demo
Perform forward and reverse FFT Perform forward and inverse Fast Fourier Transformations (FFT). Convert Complex to Real. Perform Polar transformations and more OpenWire SL Perform forward and inverse Fast Fourier Transformations (FFT). Convert Complex to Real. Perform Polar transformations and more
Perform LowPass, HighPass, BandPass, and BandStop filters Perform LowPass, HighPass, BandPass, and BandStop filters OpenWire SL Perform LowPass, HighPass, BandPass, and BandStop filters
Feed SignalLab with your own data from data acquisition board or other source, implement your own filters, and visualization Feed SignalLab with your own data from data acquisition board or other source, implement your own filters, and visualization OpenWire SL Perform forward and inverse Fast Fourier Transformations (FFT). Convert Complex to Real. Perform Polar transformations and more
Play recorded data and display the FFT spectrum into a Waterfall Play recorded data and display the FFT spectrum into a Waterfall OpenWire SL Play recorded data and display the FFT spectrum into a Waterfall

SignalLab: Frequently Asked Questions

Q: Do I have to purchase SignalLab?
A: SignalLab is free for non commercial purposes. This means that you can use it for personal pleasure, hobby, or evaluation purposes. If you are student you can also use it for free for your educational needs including school projects. If you are a tutor at present you also can use it for free for your classes. However in the near future a low cost tutor license will be available, and you will have to purchase it. Your students however will not need license to use the product at class.
Q: Is SignalLab multithreading? Will it stop streaming while I move the window with the mouse?
A: Yes. SignalLab is fully multithreaded and will not stop streaming while the main thread is busy.
Q: Can I use SignalLab with my data acquisition board?
A: You can use SignalLab with any data acquisition board as long as you have development libraries for the board. You can use the TSLGenericReal, and TLSGenericInt to send data from the board into the SignalLab components. Please check the SignalLab documentation as well as the CustomFilterDemo demo directory (See bellow).
Q: Can I create my own filter?
A: You can create your own Real, Integer and Complex filters with SignalLabYou can use the TSLGenericReal, TSLGenericComplex, and TLSGenericInt to implement the filters. Please check the SignalLab documentation as well as the CustomFilterDemo demo directory (See bellow).
Q: I have my own plot component. Can I display the data into it?
A: You can use any Third party plot component with SignalLab. Use the TSLGenericReal to obtain the data to be displayed in the plot component. Please check the SignalLab documentation as well as the CustomFilterDemo demo directory (See bellow).

SignalLab Installers

Firemonkey and VCL Installer: SignalLab 8.0.0.126 VCL and FireMonkey for 12.0 Athens
Updated on 2024-08-20, downloaded 148 times.
Firemonkey and VCL Installer: SignalLab 8.0.0.77 VCL and FireMonkey 32 & 64 bit support for 11.X Alexandria
Updated on 2022-05-01, downloaded 313 times.
Firemonkey and VCL Installer: SignalLab 8.0.0.74 VCL and FireMonkey 32 & 64 bit support for 10.4 Sydney Update 2
Updated on 2022-04-25, downloaded 200 times.
Firemonkey and VCL Installer: SignalLab 8.0.0.73 VCL and FireMonkey 32 & 64 bit support for 10.3 Rio Update 3
Updated on 2022-04-20, downloaded 235 times.
Visual C++ Installer: SignalLab 8.0.0.0 for Visual C++ MFC
Updated on 2020-11-26, downloaded 7126 times.
.NET Installer: SignalLab 8.0.0.1 for Microsoft .NET 4.0 (4.5 and 4.6 compatible)
Updated on 2020-11-27, downloaded 13778 times.

Legacy Firemonkey and VCL Installer: SignalLab 7.8.2.288 VCL and FireMonkey 32 & 64 bit support for 10.2 Tokyo and 10.3 Rio
Updated on 2018-12-22, downloaded 627 times.
Legacy Firemonkey and VCL Installer: SignalLab 7.8.2.0 VCL and FireMonkey 32 & 64 bit support for XE8 to 10.1 Berlin
Updated on 2016-06-06, downloaded 2315 times.
Legacy Firemonkey and VCL Installer: SignalLab 7.7.0.0 VCL and FireMonkey 32 & 64 bit support for XE7 to 10 Seattle
Updated on 2015-10-28, downloaded 800 times.
Legacy Firemonkey and VCL Installer: SignalLab 7.6.1.0 VCL and FireMonkey 32 & 64 bit support for XE6 to XE8
Updated on 2015-06-11, downloaded 801 times.
Legacy Firemonkey and VCL Installer: SignalLab 6.0.0 VCL and FireMonkey (Windows only) 32 and 64 bit support for XE2 to XE4
Updated on 2014-11-19, downloaded 755 times.
Legacy Firemonkey and VCL Installer: SignalLab 7.5.0.0 VCL and FireMonkey 32 & 64 bit support for XE4 to XE7
Updated on 2014-11-18, downloaded 774 times.
Legacy Firemonkey and VCL Installer: SignalLab 7.0.0.0 VCL and FireMonkey 32 & 64 bit support for XE3 to XE6
Updated on 2014-04-22, downloaded 770 times.
Legacy Firemonkey and VCL Installer: SignalLab 5.0.3 VCL and FireMonkey for XE2 Update4 Hotfix1
Updated on 2012-10-13, downloaded 835 times.
Legacy Firemonkey and VCL Installer: Legacy SignalLab 5.0.3 VCL and FireMonkey (Windows only) 32 and 64 bit support for 2010 to XE
Updated on 2012-10-10, downloaded 4705 times.
Legacy Firemonkey and VCL Installer: SignalLab 5.0.1 for Delphi/C++ Builder 5 to 2009
Updated on 2011-10-18, downloaded 23713 times.

Demos

These demos are executable after downloading.   Also see: Demo source code downloads
Filters demo (LowPass, HighPass, BandPass, BandStop)

Demonstrates the application of LowPass, HighPass, BandPass and BandStop filters

Signal Generator demo

Demonstrates how to use TSLSignalGen to generate tone (sine), triangle and square waves

Low Pass demo

Demonstrates how to apply TSLLowPass filter, and displays the output in a Waterfall plot

Custom Digital Filters demo

Demonstrates how to use the TSLGenericReal component to apply custom filter logic

Fast Fourier Transform demo

Demonstrats application of TSLFourier and TSLInverseFourier components. Displays real, imaginary, phase and spectrum magnitude outputs

Goertzel (Alternative to FFT) demo

Unlike the FFT, the TSLGoertzOne component looks for predetermined frequencies. It can be used, e.g., to detect the tones generated by telephone pushbuttons

Lissajous Figures demo

Demonstrates the generation and modification of Lissajous curves in a rectangular space by altering the sine equation parameters

Player Waterfal demo
Demonstrates playing a saved (binary) signal file and displaying in a waterfall plot

 

The libraries are licensed per developer, and there are no royalties required. Once you have purchased a developer license, you are free to distribute your final product without the need to pay any royalties or other fees as long as you comply with the following license agreement:
 
 
LICENSE - AGREEMENT
 
Users of the LabPacks Component Pack(Software) must accept these terms of license.
 
If you refuse to accept the terms of license, you may not use this software, and you have the right to return it within 30 days of the purchase date, and to receive your money back.
 
For your convenience a copy of this license agreement will be stored on your system during the installation.
 
This license grants you the following rights:
 
You have a non exclusive license to the Software. The Title and all intangible rights to the Software are the property of Mitov Software .  
 
You may install and use one copy of the Software per computer assuming only one and the same person will use the Software on all of the computers. You may distribute any application that includes Software without any additional royalties beyond your initial license registration fee.
 
You can also create a reasonable set of copies of the product on different types of media, such as CD Rom or Type Backup, as far as those copies are used only for your own back up protection.
 
Description of the limitations. 
 
You may not reverse engineer, decompile, or disassemble the Software.
 
The Software is licensed as a single product. You may not rent or lease the Software. You must treat the Software like any other copyrighted material except that you may either (a) a reasonable amount of copies of the Software solely for backup or archival purposes, or (b) install the Software multiple computers provided you keep the original solely for backup or archival purposes and only a single developer will use all of the copies.
 
You may not separate Delphi and C++ Builder components from this Software.
Each developer must have a valid license for the Software.
 
You may not create a competing component product using this Software.
 
Additional restriction to Delphi-VCL and C++ Builder components: 
 
You may not distribute the Delphi-VCL components in a DCU (Delphi Compiled Unit) format. You can distribute the component only as a part of your executable or dynamic link library program in a compiled form.
 
You may not distribute the C++ Builder components in OBJ format. You can distribute the component only as a part of your executable or dynamic link library program in a compiled form.
 
 
Mitov Software grants a limited warranty with these restrictions:
 
THE SOFTWARE IS SUPPLIED AS IT IS. MITOV SOFTWARE AND ITS SUPPLIERS DISCLAIM ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, WITH REGARD TO THE SOFTWARE. NO LIABILITY FOR CONSEQUENTIAL DAMAGES. TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL MITOV SOFTWARE OR ITS SUPPLIERS BE LIABLE FOR ANY SPECIAL, INCIDENTAL, INDIRECT, OR CONSEQUENTIAL DAMAGES WHATSOEVER (INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, OR ANY OTHER PECUNIARY LOSS) ARISING OUT OF THE USE OF OR INABILITY TO USE THE SOFTWARE.

News

August 19, 2024more...

NEW RELEASE: Updated RAD Studio/Delphi 12.0.0 Athens version of all the libraries has been released!

June 14, 2024more...

NEW RELEASE: Updated RAD Studio/Delphi 12.0.0 Athens version of all the libraries has been released!

February 21, 2024more...

NEW RELEASE: Updated RAD Studio/Delphi 12.0.0 Athens version of all the libraries has been released!

December 21, 2023more...

UPDATED: BMDThread Delphi components

December 6, 2023more...

NEW RELEASE: RAD Studio/Delphi 12.0.0 Athens version of all the libraries has been released!

March 9, 2022more...

NEW RELEASE: Updated RAD Studio/Delphi 10.4 Sydney version of all the libraries has been released!

March 7, 2022more...

NEW RELEASE: Updated RAD Studio/Delphi 10.3 Rio version of all the libraries has been released!

March 2, 2022more...

NEW RELEASE: Updated RAD Studio/Delphi 11.0 Alexandria version of all the libraries has been released!

January 28, 2022more...

NEW RELEASE: Updated RAD Studio/Delphi 10.4.2 Sydney version of all the libraries has been released!

January 28, 2022more...

NEW! OpenWire Studio version Beta 8.0.0.48 is released.

December 21, 2021more...

NEW RELEASE: Updated RAD Studio/Delphi 11.0.0 Alexandria version of all the libraries has been released!

October 11, 2021more...

NEW RELEASE: RAD Studio/Delphi 11.0 Alexandria version of all the libraries has been released!

May 12, 2021more...

NEW RELEASE: RAD Studio/Delphi 10.4.2 Sydney version of all the libraries has been released!


More News

Partners

Em
Alliancelogo2

Published

Torry_logo