Class TAudioIO (unit AudioIO)

Inherits from

TComponent

---------------------------TAudioIO Component-----------------------------

Constructors


Constructor Create(AOwner: TComponent);

-----------------Create------------------------John Mertus Oct 96---


Functions

Destructor Destroy;

-----------------Destroy-----------------------John Mertus Oct 96---

Procedure StopAtOnce;

--------------------StopAtOnce-------------John Mertus---14-June--97--

Procedure StopGracefully;

--------------------StopGracefully---------John Mertus---14-June--97--

Function AllocPCMBuffers : Boolean;

-------------AllocPCMBuffers----------------John Mertus---14-June--97--

Function AllocWaveHeaders : Boolean;

-------------AllocWaveHeaders---------------John Mertus---14-June--97--

Function FreePCMBuffers : Boolean;

--------------FreePCMBuffers----------------John Mertus---14-June--97--

Procedure FreeWaveHeaders;

---------------FreeWaveHeaders---------------John Mertus---14-June--97--

Function InitWaveHeaders : Boolean;

Protected declarations

-------------InitWaveHeaders----------------John Mertus---14-June--97--


Function GetFrameRate : Integer;

---------------GetFrameRate--------------------John Mertus Oct 96---

Function GetStereo : Boolean;

---------------GetStereo-----------------------John Mertus Oct 96---

Procedure MakeWaveFmtConsistent;

-----------------MakeWaveFmtConsistent---------John Mertus Oct 96---

Procedure SetBits(Value : Word);

---------------SetBits-------------------------John Mertus Oct 96---

Procedure SetBufferSize(Value : Integer);

---------------SetBufferSize-------------------John Mertus Oct 96---

Procedure SetFrameRate(Value : Integer);

---------------SetFrameRate--------------------John Mertus Oct 96---

Procedure SetNumBuffers(Value : Integer);

Set to TRUE to start FALSE to abort after filled buffers are done } { Property Functions

---------------SetNumBuffers-------------------John Mertus Oct 96---


Procedure SetStereo(Value : Boolean);

---------------SetStereo-----------------------John Mertus Oct 96---

Properties

property BufferSize : Integer

Published declarations

property FrameRate : Integer


property NumBuffers : Integer


property Quantization : Word


property Stereo : Boolean


property WaveDevice : Integer


Events

event OnStart : TNotifyEvent


event OnStop : TNotifyEvent


Variables

Active : Boolean;


ErrorMessage : String;

Public declarations

FilledBuffers : Integer;


ProcessedBuffers : Integer;


QueuedBuffers : Integer;


BufIndex : Integer;


ContinueProcessing : Boolean;


FBufferSize : Integer;

Private declarations

FNumBuffers : Integer;

Buffer size requested

FonClose : TNotifyEvent;


FonOpen : TNotifyEvent;


FPaused : Boolean;


FRequestedBufferSize : Integer;

Actual buffer used

FWaveDevice : DWord;


FWaveFmtEx : TWaveFormatEx;


hWaveBuffer : Array [0..MAXBUFFERS-1] of THANDLE;


hWaveHeader : Array [0..MAXBUFFERS-1] of THANDLE;


WaveBuffer : Array [0..MAXBUFFERS-1] of lpstr;


WaveHdr : Array [0..MAXBUFFERS-1] of PWAVEHDR;



Constructors


Constructor Create(AOwner: TComponent);

-----------------Create------------------------John Mertus Oct 96---


Functions


Destructor Destroy;

-----------------Destroy-----------------------John Mertus Oct 96---


Procedure StopAtOnce;

--------------------StopAtOnce-------------John Mertus---14-June--97--


Procedure StopGracefully;

--------------------StopGracefully---------John Mertus---14-June--97--


Function AllocPCMBuffers : Boolean;

-------------AllocPCMBuffers----------------John Mertus---14-June--97--


Function AllocWaveHeaders : Boolean;

-------------AllocWaveHeaders---------------John Mertus---14-June--97--


Function FreePCMBuffers : Boolean;

--------------FreePCMBuffers----------------John Mertus---14-June--97--


Procedure FreeWaveHeaders;

---------------FreeWaveHeaders---------------John Mertus---14-June--97--


Function InitWaveHeaders : Boolean;

Protected declarations

-------------InitWaveHeaders----------------John Mertus---14-June--97--


Function GetFrameRate : Integer;

---------------GetFrameRate--------------------John Mertus Oct 96---


Function GetStereo : Boolean;

---------------GetStereo-----------------------John Mertus Oct 96---


Procedure MakeWaveFmtConsistent;

-----------------MakeWaveFmtConsistent---------John Mertus Oct 96---


Procedure SetBits(Value : Word);

---------------SetBits-------------------------John Mertus Oct 96---


Procedure SetBufferSize(Value : Integer);

---------------SetBufferSize-------------------John Mertus Oct 96---


Procedure SetFrameRate(Value : Integer);

---------------SetFrameRate--------------------John Mertus Oct 96---


Procedure SetNumBuffers(Value : Integer);

Set to TRUE to start FALSE to abort after filled buffers are done } { Property Functions

---------------SetNumBuffers-------------------John Mertus Oct 96---


Procedure SetStereo(Value : Boolean);

---------------SetStereo-----------------------John Mertus Oct 96---


Properties


property BufferSize : Integer

Published declarations


property FrameRate : Integer


property NumBuffers : Integer


property Quantization : Word


property Stereo : Boolean


property WaveDevice : Integer


Events


event OnStart : TNotifyEvent


event OnStop : TNotifyEvent


Variables


Active : Boolean;


ErrorMessage : String;

Public declarations


FilledBuffers : Integer;


ProcessedBuffers : Integer;


QueuedBuffers : Integer;


BufIndex : Integer;


ContinueProcessing : Boolean;


FBufferSize : Integer;

Private declarations


FNumBuffers : Integer;

Buffer size requested


FonClose : TNotifyEvent;


FonOpen : TNotifyEvent;


FPaused : Boolean;


FRequestedBufferSize : Integer;

Actual buffer used


FWaveDevice : DWord;


FWaveFmtEx : TWaveFormatEx;


hWaveBuffer : Array [0..MAXBUFFERS-1] of THANDLE;


hWaveHeader : Array [0..MAXBUFFERS-1] of THANDLE;


WaveBuffer : Array [0..MAXBUFFERS-1] of lpstr;


WaveHdr : Array [0..MAXBUFFERS-1] of PWAVEHDR;