AboutAudioLab

What can I build with AudioLab?

 

 
With AudioLab you can do just about anything imaginable: synthesize, capture, process, and analyze; mix, listen, visualize and more.
 
 
 
 
 
 
 
 
Applications include:
  • Audio recording/playback.
  • Audio converters/re-encoders.
  • Jukeboxes, and Play Lists.
  • Audio broadcasting.
  • Connecting to audio streams.
  • Audio Editing, and analysis.
Supports ASIO and VST 2.X and VST3
 

“Audio Stream Input/Output (ASIO) is a computer sound card driver protocol for digital audio specified by Steinberg, providing a low-latency and high fidelity interface between a software application and a computer’s sound card.”  (See steinberg.net.  Quote from wikipedia.)
 

“Steinberg’s Virtual Studio Technology (VST) is an interface for integrating software audio synthesizer and effect plugins with audio editors and hard-disk recording systems.”  ( See steinberg.net.  Quote from wikipedia.)
 

VST3 marks an important milestone in audio technology with a completely rewritten code base providing not only many new features but also the most stable and reliable VST platform ever.”   ( See steinberg.net.  )

Play recorded audio (see .NET or VCL tutorial):

Capture and record audio (see .NET or VCL tutorial): 

Capture, process and record audio:

Play or capture, analyze the audio, and display the results:

Mix different audio sources, record and listen to the result:

The latest version of AudioLab supports the older Win32 API ( WaveAPI, Audio ACM ), the newer DirectShow and DMO; and allows, if needed, any mixture of these technologies. The developer can choose the technology and can switch from one to the other at any moment: AudioLab hides the complexity of the chosen technology and makes the components look almost identical from the developer’s perspective.
 
Here is the full list of the supported technologies:
 
Win32 API:
  • Audio Compression Manager ( ACM )
  • WaveAPI
 
DirectX:
  • DirectShow
  • Direct Media Objects ( DMO )
 
Intel:
  • Intel MMX
  • Intel Performance Primitives ( IPP )
 
The library includes Wave Player, Wave Logger with compression capabilities, DirectShow Audio Player and Audio Logger, Signal and Noise generators, graphic equalizer, audio mixer, multiplier, convertors, spectrum component, channel splitter and merger, a Win32 API and DirectShow Audio Capture components, a Win32 API and DirectShow Audio Playback components. Three additional components from the SignalLab have been added to allow processing Spectrum Data.

 

 

Our component libraries come in 3 versions a VCL – Firemonkey version (for Delphi / C++ Builder / RAD Studio XE4 to 10.1 Berlin), an MFC compatible Visual C++ version, and a .NET 2.0 and 4.0 (4.5 and 4.6 compatible) supporting Visual Studio 2005 to 2015.
 
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 2.0 and 4.0 (4.5 and 4.6 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!

 

 

AudioLab Components

Audio Filters

ALAudioToReal ALAudioToReal  Converts Wave Audio Data Buffers into Real Data Buffers
ALGenericFilter ALGenericFilter  User defined filter for Audio data
ALAudioMixer ALAudioMixer  Mixes two or more audio signals
ALAmplifier ALAmplifier  Amplifies the audio
ALGraphicEqualizer ALGraphicEqualizer  Graphic Audio Equalizer
ALDelayLine ALDelayLine  Delays the signal
ALRemoveDC ALRemoveDC  Removes the DC component from the audio signal
ALBandPass ALBandPass  Performs a BandPass filter over the input signal
ALBandStop ALBandStop  Performs a BandStop filter over the input signal
ALHighPass ALHighPass  Performs a HighPass filter over the input signal
ALLowPass ALLowPass  Performs a LowPass filter over the input signal
ALCombFilter ALCombFilter  Performs a Comb filter over the input signal
ALDynamicRangeCompressor  ALDynamicRangeCompressor  Dynamically adjusts the amplification of the audio.
ALVSTHost ALVSTHost  VST 2.X PlugIn host component
ALVST3Host ALVST3Host  Use this component to host VST 3.X PlugIns

Audio combined input/output components

ALASIOAudioDevice  ALASIOAudioDevice  Captures from and sends audio to multiple channels of ASIO audio input/output device

Audio generators

ALGenericGen  ALGenericGen  User defined generator for Audio data
ALSignalGen ALSignalGen Tone, Triangle or Rectangle audio signal generator
ALRandomGen  ALRandomGen Random audio signal generator
ALGaussGen ALGaussGen Gaussian random audio signal generator

Audio output components

ALAudioOut  ALAudioOut  Sends audio data to an audio output device
ALOggLogger ALOggLogger Records the audio to Ogg file
ALRawLogger ALRawLogger Records Raw (unformatted) audio data
ALWaveLogger  ALWaveLogger Records the audio to Wave file.

Audio source components

ALOggPlayer  ALOggPlayer  Plays audio from Ogg file
ALAudioIn ALAudioIn Captures audio from an audio input device.

Compression

ALAudioDecompressor  ALAudioDecompressor  Decompresses compressed audio
ALAudioCompressor ALAudioCompressor Compresses audio
ALVorbisCompressor ALVorbisCompressor Compresses audio using Vorbis
ALSpeexDecompressor  ALSpeexDecompressor Decompresses Speex compressed audio
ALSpeexCompressor ALSpeexCompressor Compresses audio using Vorbis
ALVorbisDecompressor ALVorbisDecompressor Decompresses Vorbis compressed audio

Converters

ALAudioToReal ALAudioToReal  Converts Wave Audio Data Buffers into Real Data Buffers
ALRepack ALRepack Rearranges the samples into buffers with a specified size
ALRealToAudio ALRealToAudio Converts Real Data Buffers into Wave Audio Data Buffers
ALChannelSplitter  ALChannelSplitter Splits the multi-channel audio into mono channels
ALChannelMerger ALChannelMerger Merges mono channels into a single multi-channel audio
SLChangeRange SLChangeRange Changes the output range of the signal
SLDetectLevels SLDetectLevels Detects levels in the input signal
SLPair SLPair Pairs multiple data buffers together

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

DirectShow Audio Filters

ALDMOEffect ALDMOEffect  Performs DMO Effect over the Audio
ALDSAudioFilter  ALDSAudioFilter Passes audio trough a DirectShow filter

DirectShow Audio output components

ALDSAudioOut ALDSAudioOut  Sends audio data to an audio output device
ALASFLogger ALASFLogger  Records the audio to WMA or ASF file
ALASFBroadcast ALASFBroadcast  Broadcasts WMA or ASF streams over Internet using TCP/IP socket and/or publishing point(s)
ALDSToSinkFilter ALDSToSinkFilter  Sends audio to a DirectShow filter
ALDSAudioLogger  ALDSAudioLogger  Records the audio to Audio file using DirectShow.

DirectShow Audio source components

ALASFPlayer ALASFPlayer Plays ASF and WMA Audio Files
ALDSFromSourceFilter  ALDSFromSourceFilter  Captures audio from DirectShow filter
ALDSAudioIn ALDSAudioIn Captures audio from an audio input device using DirectShow.

DirectShow Compression

ALDSAudioCompressor ALDSAudioCompressor  Compresses audio using DirectShow
ALDSAudioDecompressor  ALDSAudioDecompressor Decompresses compressed audio using DirectShow

DirectShow support components

MLDSMediaFilter  MLDSMediaFilter   Passes media trough a DirectShow filter

Displays

MLDSGraphView  MLDSGraphView  DirectShow graph display

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
TLGenericTextFilter TLGenericTextFilter User defined filter for Text data

Generic Generators

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

Meters

ALVUMeter ALVUMeter  VU (Volume Unit) Meter
ALPPMMeter  ALPPMMeter PPM (Peak Programme Meter) Meter
ALRMSMeter ALRMSMeter RMS (Root Mean Square) Meter

Other

ALQueuedSwitch ALQueuedSwitch  Multi-channel queued video and audio switch
ALSystemMixer  ALSystemMixer Controls the Windows system audio mixer
ALSnapshot ALSnapshot Takes a snapshot of the data
ALSwitch ALSwitch Enables or disables the audio to go trough
ALBufferQueue ALBufferQueue Audio buffer queue component
ALWavePlayer ALWavePlayer Plays audio from Wave file.
ALDSAudioPlayer  ALDSAudioPlayer Plays audio from Audio file using DirectShow.

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

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

Transformations

ALSpectrum ALSpectrum  Multi channel audio spectrum
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

 

AudioLab: What’s New

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

  1. Added RAD Studio 10.1 Berlin support
  2. Removed the old .NET 2.0 Assemblies
  3. Added Visual Live Binding property editors
  4. Added Reset to Default property editors
  5. Added Enum property editors
  6. Added Class events property editors
  7. Added Multi-Event property editors
  8. Added Flush for the AudioMixer
  9. Added option to Enable the processing engines
  10. 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)

  1. Added 10 Seattle support
  2. Added support for VS2015
  3. Added TOWBoolToIntFormatConverter
  4. Improved threading support
  5. Improved OpenWire Editor
  6. Clock pins changed to MiltiSink
  7. Improved Design Time Editors
  8. Improved JSON support
  9. Improved collections
  10. Added more Live Binding types
  11. Added support for hosting OpenWire Studio projects
  12. Added serialization support in the buffers
  13. Added TALGoniometer
 

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

  1. Added TTLGenericFilter
  2. Added more visual live binding types
  3. Significantly improved property Delphi editors
  4. Added option to specify MaxSamples that can be queued per channel in the Audio Mixer.
  5. Timestamps interfaced

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

  1. Improved FFMpeg support
  2. Added button events to the PlotLab components
  3. Added selection mouse events to the PlotLab components
  4. Added HoldWhileZooming to the PlotLab components
  5. Improved IPCamera component
  6. Added TVLSharedMemoryIn component
  7. Added TVLSharedMemoryOut component
  8. Added OpenCL and parallel processing support for TVLImageAdjust
  9. Improved FFMpeg support
  10. Improved Speex support
  11. Imprioved LogicLab Memory components.
  12. Impreved LogicLab components design
  13. Added AnimationLab splines.
  14. Improved AnimationLab event support.
  15. Improved AnimationLab effects.
  16. Added more binding types.
  17. Improved object inspector
  18. Improved UI

 

Click to view Larger images. )

AudioLab Examples

 

These demos are executable after downloading.
Also see:   Demo source code downloads
[table id=13 /]

 

OPENWIRE FREQUENTLY ASKED QUESTIONS

Does AudioLab support the format of my Audio Files?

AudioLab supports both Win32 API and DirectShow technologies. Win32 API will allow you to play only Wave files. If you decide to use DirectShow AudioLab will use any DirectShow filter available on your system. If you have a DirectShow filter for a particular video format AudioLab will recognize the format and use the proper filter. This means that AudioLab is capable of using any format available today. If you have a file that you can’t play in AudioLab, it means that you probably don’t have the proper DirectShow filter. Please search the web and download the filter needed for the particular format.

I can’t play my video file! What is wrong?

In order to play format other then basic Wave you must use the DirectShow TVLDSAudioPlayer component. If you still can’t play the file, please check if you have installed a DirectShow codec for the file format. AudioLab needs a codec available in the system in order to decode the file. A huge selection of codecs is available on the WEB.

Do I have to purchase AudioLab?

AudioLab 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.

Is AudioLab multithreading? Will it stop streaming while I move the window with the mouse?

Yes. AudioLab is fully multithreaded and will not stop streaming while the main thread is busy.

Does AudioLab support DirectShow?

Yes. AudioLab supports DirectShow 8.1 or higher.

What version of DirectShow I need to run AudioLab?

AudioLab supports DirectShow 8.1 or higher.

Can I capture and save audio sample out of the audio stream?

Yes. Use the TALGenericFilter to obtain the sample. Check the CustomFiltersDemo example in the demos directory.

Can I create a audio on the fly?

Yes. Use the TALGenericFilter to generate the buffers. Check the “Quick Start” manual for more information.

Can I process the audio faster than the normal audio speed.

Yes. Check the “Quick Start” manual for more information.

I want to copy and paste parts of the audio a new file. Can AudioLab do that?

Yes. AudioLab uses DirectShow to play and record files. Many formats do not allow easy positioning and can’t be used with DirectShow Editing Services. AudioLab offers a different approach. It allows you to play even non seek enabled file to a specific position and copy a portion of the file into a new one. Check the “Quick Start” manual for more information.

I want to use AudioLab. Do I have to install DirectShow?

Yes. Check the “DirectShow is not required on your system if you are not planning to write application using the DirectShow components of the package.

Can I play audio files from a Web URL?

Yes. You can use the TALDSAudioPlayer to play files as well as any audio URL from the web.

 

AudioLab INSTALLERS

Firemonkey and VCL Installer: AudioLab 7.8.2.288 VCL and FireMonkey 32 & 64 bit support for 10.2 Tokyo and 10.3 Rio

Updated on 2018-12-21, downloaded 91 times.

Visual C++ Installer: AudioLab 7.8.2.152 for Visual C++ MFC

Updated on 2018-11-12, downloaded 6763 times.

.NET Installer: AudioLab 7.8.2.271 for Microsoft .NET 4.0 (4.5 and 4.6 compatible)

Updated on 2018-11-08, downloaded 12985 times.

Firemonkey and VCL Installer: AudioLab 7.8.2.0 VCL and FireMonkey 32 & 64 bit support for XE8 to 10.1 Berlin

Updated on 2016-06-06, downloaded 1492 times.

Firemonkey and VCL Installer: Legacy AudioLab 5.0.3 VCL and FireMonkey (Windows only) for 2010 to XE

Updated on 2016-05-03, downloaded 21038 times.

Firemonkey and VCL Installer: AudioLab 7.7.0.0 VCL and FireMonkey 32 & 64 bit support for XE7 to 10 Seattle

Updated on 2015-10-28, downloaded 866 times.

Firemonkey and VCL Installer: AudioLab 7.6.1.0 VCL and FireMonkey 32 & 64 bit support for XE6 to XE8

Updated on 2015-06-11, downloaded 3589 times.

Firemonkey and VCL Installer: AudioLab 7.5.0.0 VCL and FireMonkey 32 & 64 bit support for XE4 to XE7

Updated on 2014-11-18, downloaded 3354 times.

Firemonkey and VCL Installer: AudioLab 7.0.0.0 VCL and FireMonkey 32 & 64 bit support for XE3 to XE6

Updated on 2014-04-21, downloaded 1325 times.

Firemonkey and VCL Installer: AudioLab 6.0.0 VCL and FireMonkey (Windows only) 32 and 64 bit support for XE2 to XE4

Updated on 2013-06-12, downloaded 8062 times.

Firemonkey and VCL Installer: AudioLab 5.0.3 VCL and FireMonkey for XE2 Update4 Hotfix1

Updated on 2012-10-13, downloaded 2422 times.

Firemonkey and VCL Installer: AudioLab 5.0.1 for Delphi/C++ Builder 5 to 2009

Updated on 2011-10-18, downloaded 69373 times.

Visual C++ Installer: AudioLab 5.0.3 for Visual C++ MFC 2

Updated on 2012-10-10, downloaded 13571 times.

.NET Installer: AudioLab 7.8.2.0 for Microsoft .NET 4.0 (4.5 and 4.6 compatible)

Updated on 2016-06-06, downloaded 32701 times.

DEMOS

 

These demos are executable after downloading.   Also see: Demo source code downloads

Audio Display demo Demonstrates basic audio recording

AVI Filter demo Demonstrates using TALSignalGen to generate audible tone (sine), triangle and square waves

Combine Video demo Demonstrates applying custom filters to an audio stream

Geometric Transforms demo Demonstrates applying audio compressor

FreeFrame demo Demonstrates the TALAudioMixer component

Process Audio demo Demonstrates applying an equalizer to an audio stream and saving the output to file

Volume Monitor Demo Demonstrates plotting volume levels of playing audio

Waterfall demo Displays a playing audio stream in a waterfall plot

Plot Wave Data demo Demonstrates loading an entire WAV file and displaying in a scope

 

Mitov License

 

If you do not have a custom licensing agreement with Mitov Software then the following license applies:
 
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.
See the Features Tab for more detail.

Also, we offer custom licensing and vertical development of the AudioLab.  Please direct any questions about custom licensing to Boian Mitov ( mitov@mitov.com ).

PurchaseAll Products Page

 

[otw_is sidebar=otw-sidebar-1]