Audio Index

Click for Using WinAmp In Plugins From VB

Using WinAmp In Plugins From VB

Winamp is one of the better music player applications out there, and one of the neat features is its extensive support for plugins, most of which are developed and made available independently from Winamp. This article provides a small DLL and source which allows you to use these plugins to play and convert audio files relatively easily from VB. It has been tested with the MP3, MP4/AAC, APE (Monkey's Audio) and Ogg Vorbis plugins; it should work fine with the other plugins for more esoteric tracker and console formats out there too.


Last Updated: 12 June 2004

Click for CD Ripping in VB Part 2

CD Ripping in VB Part 2

This sample provides a more sophisticated CD Ripper which is capable of writing MP3 files by adding the following:

  1. A plugin-based architecture for writing audio files.
  2. Implementing a WAV to MP3 encoder.

The audio plugins can be re-used wherever you want to be able to create audio files.


Last Updated: 11 June 2004

Click for CD Ripping in VB Part 1

CD Ripping in VB Part 1

This sample looks at ripping CDs from VB using the CD ripping library provided with CDEx. In addition to providing a VB compatible wrapper around the CD ripping functions, it provides a buffered WAV file writer which can be reused for other applications such as audio recorders and processors.


Last Updated: 11 June 2004

Click for MP3 Encoding with LAME

MP3 Encoding with LAME

The unfortunately named LAME (Lame Ain't an MP3 Encoder) open source project is a highly-regarded source for creating MP3 files, which is used in a number of projects such as CDEx. This sample demonstrates using the encoding functions from VB to create MP3 files from WAV files.


Last Updated: 25 April 2004

Click for Wav File Viewer Control

Wav File Viewer Control

This article demonstrates how to read and display a 16-bit Stereo WaveForm using a memory buffer and Multimedia file I/O. Good performance and ease of use is achieved by using SAFEARRAYs to make a memory buffer look like an array in VB. The sample is currently limited to stereo 16-bit wave files, but the same techniques can be applied easily to mono and/or 8-bit files, and, with a bit more effort, to 24-bit files.


Last Updated: 16 April 2004

Click for Reading and Writing MP3 ID3v1 and ID3v2 Tags

Reading and Writing MP3 ID3v1 and ID3v2 Tags

This article describes the MP3 ID3v1 and ID3v2 tags and provides a sample application which can read and write both types from MP3 files, along with two reusable classes wrapping up the tag functionality.


Last Updated: 15 April 2004

Click for Lossless Audio Compression

Lossless Audio Compression

As hard disk sizes increase, the requirement to perform lossy compression on digital audio files is reducing. This article looks at some of the code available to perform lossless compression of WAV files and demonstrates how to encode and decode files in VB using Monkey's Audio Compressor.


Last Updated: 15 April 2004

Click for CD Track Listing Using

CD Track Listing Using

This article demonstrates how to use ASPI to read the table of contents from a CD, and then to use FreeDB's CD look-up service to retrieve artist, title and track listing information for the CD. Along the way it describes some of the alternatives and pitfalls.


Last Updated: 26 January 2003

Click for Streaming .WAV File Player

Streaming .WAV File Player

Playing digital audio can be achieved at a number of different levels under windows. At the simplest level, there is the Multimedia Control Interface (MCI) control provided with VB. This is turn is a very thin wrapper around the MCI API provided with Win32, which offers about the same level of control for playing waves as the API PlaySound and sndPlaySound functions.

At a deeper level, your application can take charge of reading chunks of audio from disk and streaming it directly to the sound card. The advantage of these methods is you get more control over how the audio is played, and you can play audio files of arbitrary length without using all your memory.


Last Updated: 21 January 2003