Previous Topic

Next Topic

Book Contents

Book Index

Home Page

How to Analyze and Compare Recorded Audio Data

Some applications will require recorded audio data to be analyzed for certain characteristics. For example, an IVR testing application may call an IVR, record some audio data, and then attempt to determine if a particular prompt was playing during the call.

Active Call Center includes a basic audio energy analysis tool. This tool can be used to create a simple metric for a wave file that can simplify future comparisons to determine if the same audio is being received.

The Active Call Center Audio Analyzer Tool calculates a value for the cumulative audio energy contained in an audio recording. Although the cumulative audio energy will vary from one recording to another even if the same data is being recorded, the developer should be able to establish a range of tolerances that are characteristic of the audio in question.

Follow these steps to use the Audio Analyzer Tool.

  1. Record the audio data to be analyzed.
  2. The audio analyzer object is created with CreateObject("ACCTools.AudioAnalyzer").
  3. Call the Analyze method with the name of an 8 or 16 bit mono PCM file to analyze.
  4. Call the CumulativeEnergy method to determine the cumulative audio energy stored in the file.
  5. Repeat steps 1-4 ten to fifteen times to establish a range of energy levels that characterize the audio in question. It's important to start with a new recording each time when establishing the tolerance range.
  6. Compare the cumulative energy calculated to the previously established range to determine whether or not the current recording may match the previous recording.

The Audio Analyzer Tool is not intended to create audio "fingerprints". It is a simple tool designed to make a determination of whether or not a particular audio file might have the same recorded audio data as a previously tested set of files. Keep in mind that even though two audio files may contain the same amount of cumulative energy, their content may be very different.

The sample code below demonstrates the use of the audio analyzer tool:

' Create audio analyzer object.
Set objAnalyzer = CreateObject("ACCTools.AudioAnalyzer")
' Analyze the goodbye.wav file.
objAnalyzer.Analyze AppPath & "\Examples\Goodbye.wav"
' Display a message box with the cumulative audio energy level.
MsgBox objAnalyzer.CumulativeEnergy

See Also

Advanced Audio Topics

How to Play a Sound File to the Speakers During a Call

How to Increase Volume of a Wave File through Scripting

How to Change Recording Silence Detection Levels

How to Enable Fast Forward/Rewind and Other Special Playback Features

How to Obtain Foreign Language and Other Speech Engines

How to Change Pronunciation for Text-to-Speech and Speech Recognition

How to Join Multiple Wave Files into One Wave File

How to Extract Sections of a Wave File