NewsProductsDevelopersForumInformationLinks

 

[Home][Developers][WaveIOX]

 

Developers

 

[Delphi VST
[WaveIOX] 
[Tunings
[Snippets
[Tools
[Resources] 

 

 
 

WaveIOX

 

Download
 

 

Description

 

WaveIOX is a Delphi unit for easy handling of WAV files, especially in the 32-bit
floating point VST environment! It reads and writes WAV files of almost any format
and is also able to convert them into 32-bit floating point buffers.

The basic structure is from the WaveIO unit by
Carlos Barbosa and was used with
permission. You can get the original I/O routines from his site
http://www.carlosb.com.

I extended his unit to WaveIOX (extended wave input/output), adding several useful
high- and low-level interface routines for reading, writing and converting wave files.

What formats does the loader support?
I looked through many different documents about the RIFF/WAV structure and I
hope I have implemented the most important ones:
- samplerate: all (even ultralow like 4096 or superhigh like 96 kHz)
- bits: 8, 16, 20, 24, 32 bit supported, integer and float
- 32-bit float native VST format supported
- mono or stereo, but can be adapted to read multichannel interleaved
- correct skipping over additional or wrong RIFF info blocks

1. low-level routines:
TWaveStream, TMemoryWaveStream, TFileWaveStream: these are streams to load,
manipulate  and save wave files directly

TPCMWAVReader: this is an interface to Microsoft's PCM/ACM reader/converter
installed with Windows

2. high-level routines:
TWavWriter: a class that allows you to create a wav file and sequentially write
data into it

LoadWAVFile: loads a WAV file from disk, converts it to floating point data and
returns a pointer to the data in memory

LoadWAVFileMono: same as above, but converts stereo files to mono first

SaveWAVFile: saves a floating point data block in memory as WAV

SaveWAVFileSeparateStereo: saves two floating point data blocks in memory as
WAV to disk, merging them on the fly (this is useful for converting stereo blocks to a
mono stream)

GetWAVFileInfo: retrieves format info from a WAV file on disk
 

 

Download

 

Download WaveIOX unit (freeware and open source)

If you use this unit in any of your projects, no matter if commercial or freeware,
please give proper credits and tell me about it!
 

 

(C)opyright 2001-2004 by Tobias Fleischer