📄 readme.htm
字号:
</tr>
</table>
<br>
<table WIDTH="90%" BORDER="0" CELLSPACING="0" CELLPADDING="5">
<tr>
<td WIDTH="15"> </td>
<td BGCOLOR="#EEEEEE"><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b><a NAME="TWaveAudioFilterEvent"></a>TWaveAudioFilterEvent = procedure(Sender: TObject; const Buffer: Pointer; BufferSize: DWORD) of object;<br>
</b>This event is used for wave audio events that offers to the caller to filter wave data. The wave data stored in the buffer specified by the Buffer parameter, and the size of the actual data in the buffer is specified by the BufferSize parameter. The event handler only can change the data, not the size of the data.</font></td>
</tr>
</table>
<br>
<table WIDTH="90%" BORDER="0" CELLSPACING="0" CELLPADDING="5">
<tr>
<td WIDTH="15"> </td>
<td BGCOLOR="#EEEEEE"><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b><a NAME="TMixerLineNotifyEvent"></a>TMixerLineNotifyEvent = procedure(Sender: TObject; MixerLine: <a HREF="#TAudioMixerLine">TAudioMixerLine</a>) of object;<br>
</b>This event notifies the application that the state of an audio line has changed. </font></td>
</tr>
</table>
<br>
<table WIDTH="90%" BORDER="0" CELLSPACING="0" CELLPADDING="5">
<tr>
<td WIDTH="15"> </td>
<td BGCOLOR="#EEEEEE"><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b><a NAME="TMixerControlNotifyEvent"></a>TMixerControlNotifyEvent = procedure(Sender: TObject; MixerLine: <a HREF="#TAudioMixerLine">TAudioMixerLine</a>; ControlType: <a HREF="#TMixerControlType">TMixerControlType</a>) of object;<br>
</b>This event notifies the application that the state of a control associated with an audio line has changed. </font></td>
</tr>
</table>
<font FACE="Verdana, Arial, Helvetica, sans-serif"><b><font SIZE="2"><br>
</font></b> <br>
</font></li>
<li><font FACE="Verdana, Arial, Helvetica, sans-serif"><b><font SIZE="3"><a NAME="ExceptionClasses"></a>EXCEPTION CLASSES </font><font SIZE="2"><br>
<br>
</font></b> </font>
<table WIDTH="90%" BORDER="0" CELLSPACING="0" CELLPADDING="5">
<tr>
<td WIDTH="15"> </td>
<td BGCOLOR="#EEEEEE"> <font SIZE="2" FACE="Verdana, Arial, Helvetica, sans-serif"><b><a NAME="EWaveAudioError"></a>EWaveAudioError = class(Exception)<br>
</b>This class is the base exception class for wave audio exceptions.</font></td>
</tr>
</table>
<font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b><br>
</b> </font>
<table WIDTH="90%" BORDER="0" CELLSPACING="0" CELLPADDING="5">
<tr>
<td WIDTH="15"> </td>
<td BGCOLOR="#EEEEEE"> <font SIZE="2" FACE="Verdana, Arial, Helvetica, sans-serif"><b><a NAME="EWaveAudioSysError"></a>EWaveAudioSysError = class(<a HREF="#EWaveAudioError">EWaveAudioError</a>)<br>
</b>This exception is raised if the operating system returns an error code for a wave audio device. The exception dialog contains the system message associated with the error. </font></td>
</tr>
</table>
<font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b><br>
</b> </font>
<table WIDTH="90%" BORDER="0" CELLSPACING="0" CELLPADDING="5">
<tr>
<td WIDTH="15"> </td>
<td BGCOLOR="#EEEEEE"> <font SIZE="2" FACE="Verdana, Arial, Helvetica, sans-serif"><b><a NAME="EWaveAudioInvalidOperation"></a>EWaveAudioInvalidOperation = class(<a HREF="#EWaveAudioError">EWaveAudioError</a>)<br>
</b>This exception is raised if the when a component receives a request for an invalid operation. For example, if an application attempts to open an already open wave audio device, or change its wave format an EWaveAudioInvalidOperation exception is raised.</font></td>
</tr>
</table>
<font FACE="Verdana, Arial, Helvetica, sans-serif"><b><font SIZE="2"><br>
</font></b> <br>
</font></li>
<li><font FACE="Verdana, Arial, Helvetica, sans-serif"><b><font SIZE="3"><a NAME="WaveStorageClasses"></a>WAVE STORAGE CLASSES</font><font SIZE="2"><br>
<br>
</font></b> </font>
<table WIDTH="90%" BORDER="0" CELLSPACING="0" CELLPADDING="5">
<tr>
<td WIDTH="15"> </td>
<td BGCOLOR="#EEEEEE">
<p><font SIZE="2" FACE="Verdana, Arial, Helvetica, sans-serif"><b><a NAME="TWaveStreamAdapter" id="TWaveStreamAdapter"></a>TWaveStreamAdapter = class(TPersistent);<br>
</b>This class encapsulates a Delphi stream as a wave audio and provides easy access to its informational fields.</font></p>
<p></p>
<p>
<table WIDTH="94%" BORDER="1" CELLSPACING="0" CELLPADDING="5" BGCOLOR="#FFFFCC" ALIGN="CENTER">
<tr>
<td BGCOLOR="#660000"><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2" COLOR="#FFFFFF"><b>Key Properties </b></font></td>
</tr>
<tr>
<td> <font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>AudioFormat: Strings; </b><font COLOR="#990000"><sup>(Read-Only)</sup></font><br>
Determines the string description of the wave format.</font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>BitRate: DWORD; </b><font COLOR="#990000"><sup>(Read-Only)</sup></font><br>
Indicates the bit rate of the wave audio in kbps (kilo bits per second). </font></td>
</tr>
<tr>
<td> <font SIZE="2" FACE="Verdana, Arial, Helvetica, sans-serif"><b>DataSize: DWORD; </b><font COLOR="#990000"><sup>(Read-Only)</sup></font><b><br>
</b>Indicates the size of wave data in bytes.</font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>DataOffset: DWORD; </b><font COLOR="#990000"><sup>(Read-Only)</sup></font><br>
Indicates the offset of wave data from the begining of the stream.</font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>Empty: Boolean; </b><font COLOR="#990000"><sup>(Read-Only)</sup></font><br>
Indicates whether the associated stream is empty.</font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>Length: DWORD; </b><font COLOR="#990000"><sup>(Read-Only)</sup></font><br>
Indicates the lenght of the wave in milliseconds.</font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>Ownership: TStreamOwnership;</b><br>
Specifies whether the TWaveStreamAdapter should act as the Owner of the associated stream object. TWaveStreamAdaptor frees the owned associated stream from its own destructor.</font></td>
</tr>
<tr>
<td> <font SIZE="2" FACE="Verdana, Arial, Helvetica, sans-serif"><b>PeakLevel: Integer; </b><font COLOR="#990000"><sup>(Read-Only)</sup></font><b><br>
</b>Indicates the peak level of the volume for the wave audio in percent.</font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>PCMFormat: <a HREF="#TPCMFormat">TPCMFormat</a>; </b><font COLOR="#990000"><sup>(Read-Only)</sup></font><br>
Indicates the standard PCM format of the wave audio.</font></td>
</tr>
<tr>
<td> <font SIZE="2" FACE="Verdana, Arial, Helvetica, sans-serif"><b>Position: Integer;<br>
</b>Determines the current wave data offset in bytes while wave data is being read or write. </font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b><a name="State"></a>State: <a href="#TWaveStreamState">TWaveStreamState</a>; </b><font COLOR="#990000"><sup>(Read-Only)</sup></font><br>
Indicates the current state of the wave stream. </font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>Stream: TStream</b><b>; </b><font COLOR="#990000"><sup>(Read-Only)</sup></font><br>
Identifies the associated TStream object that TWaveStreamAdapter uses. Read Stream to directly access the TStream object that the wave stream adapter represents. This object is associated with the TStream object in the TWaveStreamAdapter constructor.</font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>Valid: Boolean ; </b><font COLOR="#990000"><sup>(Read-Only)</sup></font><br>
Indicates whether the wave audio is valid.</font></td>
</tr>
<tr>
<td> <font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>WaveFormat: PWaveFormatEx; </b><font COLOR="#990000"><sup>(Read-Only)</sup></font><br>
Pointer to the wave format structure of the wave audio. Although the fields of wave format structure are not read-only, however you must not change them.</font></td>
</tr>
</table>
<p></p>
<p>
<table WIDTH="94%" BORDER="1" CELLSPACING="0" CELLPADDING="5" BGCOLOR="#FFFFCC" ALIGN="CENTER">
<tr>
<td COLSPAN="2" BGCOLOR="#660000"><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2" COLOR="#FFFFFF"><b>Key Event</b></font></td>
</tr>
<tr>
<td COLSPAN="2"> <font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>OnChanging: TNotifyEvent;</b> <br>
Occurs just before a change is made to the stream.</font></td>
</tr>
<tr>
<td COLSPAN="2"> <font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>OnChange: TNotifyEvent;</b> <br>
Occurs when the content of the stream is changed.</font></td>
</tr>
</table>
<p></p>
<p>
<table WIDTH="94%" BORDER="1" CELLSPACING="0" CELLPADDING="5" BGCOLOR="#FFFFCC" ALIGN="CENTER">
<tr>
<td BGCOLOR="#660000"><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2" COLOR="#FFFFFF"><b>Key Method</b></font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>procedure Assign(Source: TPersistent);</b> <br>
Copies a new wave audio in to the associated stream object.</font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b><a name="BeginRewrite"></a>function BeginRewrite(const pWaveFormat: PWaveFormatEx): Boolean;</b> <br>
Initiates creating of a new wave audio in the specified format. Use <a href="#write">Write</a> method to write raw wave data, and then call <a href="#EndRewrite">EndRewrite</a> to finalize creating of the new wave audio. Calling this method clears the previous content of the associated stream. </font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b><a name="BeginRewritePCM"></a>function BeginRewritePCM(Format: <a HREF="#TPCMFormat">TPCMFormat</a>): Boolean;</b> <br>
Initiates creating of a new wave audio in the specified PCM format. Use <a href="#write">Write</a> method to write raw wave data, and then call <a href="#EndRewrite">EndRewrite</a> to finalize creating of the new wave audio. Calling this method clears the previous content of the associated stream. </font></td>
</tr>
<tr>
<td> <font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>function ChangeVolume(Percent: Integer): Boolean;</b><br>
Increases or decreases the volume of the wave audio by the specified percentage (PCM format only).</font></td>
</tr>
<tr>
<td> <font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><b>procedure Clear;</b><br>
Sets size of the associated stream to zero.</font></td>
</tr>
<tr>
<td> <font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><strong>constrator Create(AStream: TStream; AOwnership: TStreamOwnership);<br>
</strong>Creates an instance of a TWaveStreamAdapter object. </font></td>
</tr>
<tr>
<td><font FACE="Verdana, Arial, Helvetica, sans-serif" SIZE="2"><font COLOR="#FF0000"><b> </b></font><b>function ConvertTo(const pTargetWaveFormat: PWaveFormatEx): Boolean;</b> <br>
Converts the wave audio to the specified format. If the function succeeds to convert the wave, it returns True, otherwise it returns False. For more information, please read <a HREF="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/multimed/htm/_win32_multist
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -