PortAudio is a free, cross-platform, open-source, audio I/O library. It lets you write simple audio programs in 'C' or C++ that will compile and run on many platforms including Windows, Macintosh OS X, and Unix (OSS/ALSA). It is intended to promote the exchange of audio software between developers on different platforms. Many applications use PortAudio for Audio I/O.PortAudio provides a very simple API for recording and/or playing sound using a simple callback function or a blocking read/write interface. For more information, please look here:
http://www.portaudio.com/[
^]
The Synthesis ToolKit in C++ (STK) is a set of open source audio signal processing and algorithmic synthesis classes written in the C++ programming language. STK was designed to facilitate rapid development of music synthesis and audio processing software, with an emphasis on cross-platform functionality, realtime control, ease of use, and educational example code. The Synthesis ToolKit is extremely portable (it's mostly platform-independent C and C++ code), and it's completely user-extensible (all source included, no unusual libraries, and no hidden drivers). Have a look a following site, related question too:
https://ccrma.stanford.edu/software/stk/[
^]
The objective of SPUC (Signal Processing using C++) is to provide the Communications Systems Designer or DSP Algorithm designer with simple, efficient and reusable DSP building block objects. Thus allowing a transition from System design to implementation in either programmable DSP chips or hardwired DSP logic.
This Class Library
1) basic building blocks such as complex data types, Fixed-bit width integer classes, pure-delay blocks, etc.
2) Basic DSP building blocks such as FIR, IIR, Allpass, Running Average, Lagrange interpolation filters, NCO, Cordic rotator.
3) Several communications functions such as timing, phase and frequency discriminators for BPSK/QPSK signals.
4) Other miscellaneous DSP/Communications related functions/classes.
5) Ability to design several types of FIR and IIR filters
6) Various adaptive equalizer classes
7) This library now includes code from IT 3.7.0. Code was modified to work together with SPUC and replace Vector and Matrix classes from TNT.
8) Capitalized and uppercase class names are classes not originally in SPUC
For more information, please look the following site:
http://spuc.sourceforge.net/[
^]
Let's see here :
DirectX.Capture Class Library[
^] one other example for your question
Sampling sounds in Windows 32 is relatively simple—once you know how to deal with asynchronous input. Here's you can see how it works:
http://www.relisoft.com/freeware/recorder.html[
^]
For the programmer, Windows' Multimedia API functions make it straightforward to record or replay sound samples using your PC's soundcard, and hence opens up many opportunities in digital audio analysis and processing. This page shows you how to get started:
http://www.techmind.org/wave/[
^]
In this installment, you can see how to record wave audio using the low-level audio functions of C++ Builder:
http://www.bcbjournal.com/articles/vol2/9810/Low-level_wave_audio__part_3.htm[
^]
I hope this will help you.
Good luck.
Alex.