BasicAudio is a set of components for fast audio processing with almost zero lines of code!

 
  • Capture
  • Record
  • Play
 
 

What can I build with BasicAudio?

BasicAudio is a set of components for fast audio processing. The library allows audio capture and playback with zero lines of program code.

 
Here are some examples of what can be done with BasicAudio:
 
Play recorded audio (see .NET or VCL tutorial):
/system/imgs/16/original/AudioPlay.jpg?1311865789
 
Capture and record audio (see .NET or VCL tutorial): 
 
/system/imgs/20/original/AudioCapture.jpg?1311865955
 
 
BasicAudio comes in 3 versions a VCL - Delphi / C++ Builder version, MFC compatible Visual C++, and .NET 2.0 version, compatible with Visual Studio 2005, Visual Basic.NET, C# and J#.
 
The Delphi / C++ Builder version is a set of native VCL components.
 
The Visual C++ version is a set of native Visual C++ classes (components).
 
The .NET 2.0-4.0 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#, C++/CLI, and DelphiPrism.
 
Due to its unique design, BasicAudio is implemented the same way in Managed .NET and Win32 environments. The code to control the 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.
 
Delphi 2010 C++ Builder 2010 RAD Studio 2010 Delphi Prism

Audio Filters

ALAudioToReal ALAudioToReal Converts Wave Audio Data Buffers into Real Data Buffers
ALGenericFilter ALGenericFilter User defined filter for Audio data

Audio generators

ALGenericGen ALGenericGen User defined generator for Audio data

Audio output components

ALAudioOut ALAudioOut Sends audio data to an audio output device
ALWaveLogger ALWaveLogger Records the audio to Wave file.

Audio source components

ALAudioIn ALAudioIn Captures audio from an audio input device.

Converters

ALAudioToReal ALAudioToReal Converts Wave Audio Data Buffers into Real Data Buffers
SLPair SLPair Pairs multiple data buffers together

Custom 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

DirectShow Audio output components

ALDSAudioOut ALDSAudioOut Sends audio data to an audio output device
ALDSAudioLogger ALDSAudioLogger Records the audio to Audio file using DirectShow.

DirectShow Audio source components

ALDSAudioIn ALDSAudioIn Captures audio from an audio input device using DirectShow.

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

Generic Generators

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

Other

ALWavePlayer ALWavePlayer Plays audio from Wave file.
ALDSAudioPlayer ALDSAudioPlayer Plays audio from Audio file using DirectShow.

Signal 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

Signal Generators

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

BasicAudio: What's New

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 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 access to IBaseFilter in the DirectShow audio capture component.

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.

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

  • Added Delphi XE and XE2 support.
  • Added ASF player attributes.
  • 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 TMLDSGraphView component.
  • Added TSLGenericRealMatrix component.
  • Added SLGenericRealValue and TSLGenericRealValueGen components.
  • Improved DirectShow support.
  • Improved multithreading locks.
  • Improved RAD Studio 2010 buffer debugger visualizes.

New in Version 4.3.1

  • Updated install.

New in Version 4.3

  • Added RAD Studio 2010 support.

New in Version 4.0.1

  • Improved installs.
( Click to view Larger images. )
These demos are executable after downloading.
Also see:   Demo source code downloads

BasicAudio Examples

BasicAudio IDE demo BasicAudio IDE demo

BasicAudio: Frequently Asked Questions

Q: Does BasicAudio support the format of my Audio Files?
A: BasicAudio supports both Win32 API and DirectShow technologies. Win32 API will allow you to play only Wave files. If you decide to use DirectShow BasicAudio will use any DirectShow filter available on your system. If you have a DirectShow filter for a particular video format BasicAudio will recognize the format and use the proper filter. This means that BasicAudio is capable of using any format available today. If you have a file that you can’t play in BasicAudio, 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.
Q: I can’t play my video file! What is wrong?
A: 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. BasicAudio needs a codec available in the system in order to decode the file. A huge selection of codecs is available on the WEB.
Q: Do I have to purchase BasicAudio?
A: BasicAudio 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 BasicAudio multithreading? Will it stop streaming while I move the window with the mouse?
A: Yes. BasicAudio is fully multithreaded and will not stop streaming while the main thread is busy.
Q: Does BasicAudio support DirectShow?
A: Yes. BasicAudio supports DirectShow 8.1 or higher.
Q: What version of DirectShow I need to run BasicAudio?
A: BasicAudio supports DirectShow 8.1 or higher.
Q: Can I capture and save audio sample out of the audio stream?
A: Yes. Use the TALGenericFilter to obtain the sample. Check the CustomFiltersDemo example in the demos directory.
Q: Can I create a audio on the fly?
A: Yes. Use the TALGenericFilter to generate the buffers. Check the “Quick Start” manual for more information.
Q: Can I process the audio faster than the normal audio speed.
A: Yes. Check the “Quick Start” manual for more information.
Q: I want to copy and paste parts of the audio a new file. Can BasicAudio do that?
A: Yes. BasicAudio uses DirectShow to play and record files. Many formats do not allow easy positioning and can’t be used with DirectShow Editing Services. BasicAudio 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.
Q: Can I play audio files from a Web URL?
A: Yes. You can use the TALDSAudioPlayer to play files as well as any audio URL from the web.
Q: I want to use BasicAudio. Do I have to install DirectShow?
A: DirectShow is not required on your system if you are not planning to write application using the DirectShow components of the package.

BasicAudio Installers

Firemonkey and VCL Installer: BasicAudio 5.0.3 VCL and FireMonkey (Windows only) 32 and 64 bit support for 2010 to XE3
Updated on 2012-10-10, downloaded 743 times.
Firemonkey and VCL Installer: BasicAudio 5.0.3 VCL and FireMonkey for XE2 Update4 Hotfix1
Updated on 2012-10-13, downloaded 58 times.
Legacy VCL Installer: BasicAudio 5.0.1 for Delphi/C++ Builder 5 to 2009
Updated on 2011-10-18, downloaded 5493 times.
Visual C++ Installer: BasicAudio 5.0.3 for Visual C++ MFC
Updated on 2012-10-10, downloaded 1011 times.
.NET Installer: BasicAudio 5.0.3.1 for Microsoft .NET 2.0-4.0
Updated on 2012-10-20, downloaded 2458 times.

Demos

These demos are executable after downloading.   Also see: Demo source code downloads
Basic Audio Recording demo

Demonstrates basic audio recording

Simple Audio Player demo

Demonstrates a simple wav file player

 

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

October 20, 2012more...

Bug fix release for .NET installers

October 13, 2012more...

New Releases for RAD Studio XE3; XE2 Update 4 Hotfix 1; Visual C++; and .NET. Many additions and improvements.

October 1, 2012more...

Mitov Software has joined the Delphi Third Party Alliance

August 1, 2012more...

Job Opportunity: Remote Contract Developer

April 16, 2012more...

New .NET and XE2 Releases: version 5.0.2 with 64-bit support

March 23, 2012more...

64-bit .NET support! Beta prerelease with many improvements

March 14, 2012more...

The NEW OpenWire Live Bindings 5.0.1 beta is released!

March 10, 2012more...

32/64-bit XE2 Update 4 release!

October 26, 2011more...

The NEW OpenWire Editor version 5.0.1 beta is officially released

October 18, 2011more...

Release of version 5.0.1 of the libraries on all platforms

October 12, 2011more...

And don't miss my second talk: Video, Audio Processing, DSP, Artificial Intelligence and Computer Vision with FireMonkey

October 11, 2011more...

Don't miss my speech at CodeRage 6: Creating dual-compile controls for VCL and FireMonkey

September 2, 2011more...

Welcome to our New Web Site!

Partners

Em
Alliancelogo2

Published

Torry_logo