📄 manual.htm
字号:
fcJpegFile: captures the current frame to a JPEG file according to the
<a href="#JPEGPerformance">JPEGPerformance</a>, <a href="#JPEGQuality">
JPEGQuality</a> and <a href="#JPEGProgressiveDisplay">JPEGProgressiveDisplay</a>
values.</p>
<p class="t2">File name</p>
<p>When fcBmpFile or fcJpegFile is specified in the Dest
parameter of the <a href="#FGrabber_CaptureFrameTo">FGrabber_CaptureFrameTo</a>
procedure, a file name is automatically created in
the <a href="#StoragePath">StoragePath</a> directory according to the
<a href="#AutoFileName">AutoFileName</a> property on a sequential increment (AutoFileName
= fnSequential) or time basis (AutoFileName
= fnDateTime).
This file name used to save the current frame is returned by the <a href="#OnFGrabberCaptureCompleted">OnFGrabberCaptureCompleted</a>
event. </p>
<p class="t2">Capture size</p>
<p>The <a href="#CaptureSize">CaptureSize</a>
property allows to resize the frame in percent of its original size. <br>
Remark:<br>
- the capture is faster using a size of exactly 100%, because it is not
necessary to resize the bitmap,<br>
- using high zoom values (greater than 100%) may require excessive CPU time.
</p>
<br><br>
<p class="t1"><a name="Commonly used methods, properties and events">
Common
methods, properties and events</a></p>
<p>Here are listed the most useful methods, properties and events,
grouped by their logical use:</p>
<p class="t2"><a name="Open_">Open</a></p>
<blockquote>
<p>
procedure <a href="#Open">Open</a>;<br>
procedure <a href="#OpenSync">OpenSync</a>;<br>
procedure <a href="#Close">Close</a>;</p>
<p>
property <a href="#FileName">FileName</a>: WideString;<br>
property <a href="#OpenState">OpenState</a>: Integer;
(read only);</p>
<p>
event <a href="#OnOpenComplete">OnOpenComplete</a> (Sender:
TObject);<br>
event <a href="#OnOpenStateChange">OnOpenStateChange</a>
(Sender: TObject; OldState: Integer; NewState: Integer);</p>
</blockquote>
<p class="t2"><a name="Playback">Playback</a></p>
<blockquote>
<p>
procedure <a href="#Play">Play</a>;<BR>
<FONT CLASS="bd">procedure <A HREF="#PlayBackwards">PlayBackwards</A>;</FONT><br>
procedure <a href="#Pause">Pause</a>;<br>
procedure <a href="#Stop">Stop</a>;<br>
procedure <a href="#FastForward2">FastForward2</a>
(Step: Double);<br>
procedure <a href="#FastReverse2">FastReverse2</a>
(Step: Double);</p>
<p>
property <a href="#SelectionEnd">SelectionEnd</a> : Double;<br>
property <a href="#SelectionStart">SelectionStart</a> : Double;<br>
property <a href="#AutoStart">AutoStart</a>: WordBool;<br>
property <a href="#ClickToPlay">ClickToPlay</a>: WordBool;<br>
property <a href="#PlayState">PlayState</a>: Integer;
(read only)
</p>
<p>
event <a href="#OnPlayStateChange">OnPlayStateChange</a>
(Sender: TObject; OldState: Integer; NewState: Integer);<br>
</p>
</blockquote>
<p class="t2"><a name="Appearance">Appearance</a></p>
<blockquote>
<p>property <a href="#DisplayLogo">DisplayLogo</a>: WordBool;<br>
property <a href="#DisplaySize">DisplaySize</a>: TDisplaySize;<br>
property <a href="#FullScreenMode">FullScreenMode</a>: WordBool;<br>
property <a href="#Rate">Rate</a>: Double;<br>
property <a href="#ShowControls">ShowControls</a>: WordBool;<br>
property <a href="#ImageSourceHeight">ImageSourceHeight</a>: integer;
(read only)<br>
property <a href="#ImageSourceWidth">ImageSourceWidth</a>: integer;
(read only)</p>
<p>
event <a href="#OnFullScreenKeyDown">OnFullScreenKeyPress</a> (Sender: TObject; Key: Word; Shift:
TShiftState);</font></p>
</blockquote>
<font class="body">
<p class="t2"><a name="Zoom">Zoom</a>
</p>
<blockquote>
<p><font color="#000080"><i>Note: zooming is enabled when <a href="#ShowControls">ShowControls</a>
is disabled and <a href="#DisplaySize">DisplaySize</a> is set
to mpCustomSize.</i></font></p>
<p>
property <a href="#ZoomSize">ZoomSize</a>: integer;<br>
property <a href="#ShowScrollBars">ShowScrollBars</a>: WordBool;</p>
<p>procedure <a href="#ScrollHorz">ScrollHorz</a> (Min, Position, Max:
integer);<br>
procedure <a href="#ScrollVert">ScrollVert</a> (Min, Position, Max:
integer);</p>
</blockquote>
<p class="t2"><a name="Single2">Single frame
Capture</a></p>
<blockquote>
<p>
function <a href="#CaptureFrameToBmpFile"> CaptureFrameToBmpFile</a> (var FileName: String): WordBool;<br>
function <a href="#CaptureFrameToJPEGFile"> CaptureFrameToJPEGFile</a> (var FileName: String): WordBool;<br>
function <a href="#CaptureFrameToImage"> CaptureFrameToImage</a> (Image: TImage): WordBool;<br>
function <a href="#CaptureFrameToBitmap"> CaptureFrameToBitmap</a> (Bitmap: TBitmap): WordBool;
</p>
<p>property
<a href="#AutoFileName">AutoFileName</a>: TAuto_Filename;<br>
property
<a href="#AutoFilePrefix">AutoFilePrefix</a>: string;<br>
property <a href="#CaptureSize">CaptureSize</a>:
Integer;<br>
property
<a href="#JPEGPerformance">JPEGPerformance</a>: TJPEGPerformance;<br>
property
<a href="#JPEGProgressiveDisplay">JPEGProgressiveDisplay</a>:
WordBool;<br>
property
<a href="#JPEGQuality">JPEGQuality</a>: TJPEGQualityRange;<br>
property
<a href="#StoragePath">StoragePath</a>: string;
</p>
</blockquote>
<p class="t2"><a name="Multiple2">Multiple frame Capture with the Frame Grabber</a></p>
<blockquote>
<p>procedure <a href="#FGrabber_CaptureFrameTo">FGrabber_CaptureFrameTo</a>
(Dest: TFrameCapture_Dest; FileName: string);</p>
<p>event
<a href="#OnFGrabberCaptureCompleted">OnFGrabberCaptureCompleted</a> (Sender: TObject; Bitmap: TBitmap; DestType: <a href="#TFrameCapture_Dest">TFrameCapture_Dest</a>; FileName: string; Success: WordBool)</p>
<p>property
<a href="#AutoFileName">AutoFileName</a>: TAuto_Filename;<br>
property
<a href="#AutoFilePrefix">AutoFilePrefix</a>: string<br>
property
<a href="#BurstCount">BurstCount</a>: Integer;<br>
property
<a href="#BurstInterval">BurstInterval</a>: Integer;<br>
property
<a href="#BurstMode">BurstMode</a>: WordBool;<br>
property <a href="#CaptureSize">CaptureSize</a>:
Integer;<br>
property
<a href="#IsDirectX8Installed">IsDirectX8Installed</a>: WordBool;
<br>
property
<a href="#JPEGPerformance">JPEGPerformance</a>: TJPEGPerformance;<br>
property
<a href="#JPEGProgressiveDisplay">JPEGProgressiveDisplay</a>:
WordBool;<br>
property
<a href="#JPEGQuality">JPEGQuality</a>: TJPEGQualityRange;<br>
property
<a href="#StoragePath">StoragePath</a>: string;
</p>
</blockquote>
<p class="t2"><a name="Position">Position</a>
</p>
<p><a href="#CurrentPosition">CurrentPosition</a> and <a href="#Duration"> Duration</a>
return either the
time in seconds, either the number of frames according to the <a href="#DisplayMode"> DisplayMode</a>
property.
Some media files do not return the frame information when <a href="#DisplayMode"> DisplayMode</a>
= mpFrames.</p>
<p> If no frame information is
needed, prefer to set <a href="#DisplayMode"> DisplayMode</a> to mpTime and use the
<a href="#CurrentPosition">CurrentPosition</a> and <a href="#Duration"> Duration</a>
properties. </p>
<p>If the frame information is available, it is
returned by <a href="#FramePosition"> FramePosition</a> and <a href="#FrameCount">FrameCount</a>. </p>
<p><a href="#TotalTime">TotalTime</a> and <a href="#TimePosition"> TimePosition</a> are intended to
return the time information when <a href="#DisplayMode"> DisplayMode</a> = mpFrames (avoiding to have to
switch display mode to mpTime to get the time information).</p>
<p class="t3">Codec information</p>
<BLOCKQUOTE>
<p>property <A HREF="#CodecName">CodecName</A>: WideString;</p>
</BLOCKQUOTE>
<p class="t3">Time and/or Frame
information:</p>
<blockquote>
<p>property <a href="#DisplayMode">DisplayMode</a>: TDisplayMode; <br>
property <a href="#CurrentPosition">CurrentPosition</a>: Double;<br>
property <a href="#Duration">Duration</a>: Double;
(read only)<br>
property <a href="#IsDurationValid">IsDurationValid</a>: WordBool; (read only)<br>
event <a href="#OnPositionChange">OnPositionChange</a>
(Sender: TObject; OldTimePosition, NewTimePosition: Double; OldFramePosition,
NewFramePosition: LongWord);</p>
</blockquote>
<p class="t3">Time information:</p>
<blockquote>
<p>property <a href="#TotalTime">TotalTime</a>: Double;<br>
property <a href="#TimePosition">TimePosition</a>: Double;</p>
</blockquote>
<p class="t3">Frame information:</p>
<blockquote>
<p>property <a href="#FramePosition">FramePosition</a>: Double;<br>
property <a href="#FrameCount">FrameCount</a>: Double;</p>
</blockquote>
<br><br>
<p class=t1><a name="methods">Methods</a></p>
</font><p><FONT CLASS="proc">procedure </FONT><FONT CLASS="procwd">About</FONT><FONT CLASS="proc">;<BR>
</FONT><FONT CLASS="body">Display version and copyright about the TActiveMovie
component.</FONT></p>
<font class="body">
<p><font class=proc>procedure </font><font class="procwd">AboutBox</font><font class=proc>;</font><br>
Displays version and copyright information about the Windows Media Player
control.</p>
<p><font class="proc">procedure
</font>
<font class="procwd">Cancel</font><font class="proc">;<br>
</font>
Cancels the Open method before the file completes opening.</p>
</font><p><font class="proc"> function </font><a name="CaptureFrameToBmpFile"><font class="procwd"> CaptureFrameToBmpFile</font></a><font class="proc"> (var
CaptureFileName: String): WordBool;<br>
</font><font class="body">Captures the current frame to a BMP file. <br>
<font color="#000080">- if FileName contains an empty string, </font>the BMP
file is saved using a file name automatically generated in the
<a href="#StoragePath">StoragePath</a> directory according to the
<a href="#AutoFileName">AutoFileName</a> and <a href="#AutoFilePrefix">
AutoFilePrefix</a> properties, <br>
<font color="#000080">- otherwise</font> the BMP file is saved using the
FileName value.</p>
</font>
<p> <font class="proc"> function </font><a name="CaptureFrameToJPEGFile"><font class="procwd"> CaptureFrameToJPEGFile</font></a><font class="proc"> (var
CaptureFileName: String): WordBool;<br>
</font><font class="body"><font color="#000080">- if FileName contains an empty
string, </font>the JPEG file is saved using a file name automatically generated in the
<a href="#StoragePath">StoragePath</a> directory according to the
<a href="#AutoFileName">AutoFileName</a> and <a href="#AutoFilePrefix">
AutoFilePrefix</a> properties, <br>
<font color="#000080">- otherwise</font> the JPEG file is saved using the
FileName value.</p>
</font><p><font class="proc"> function </font><a name="CaptureFrameToImage"><font class="procwd"> CaptureFrameToImage</font></a><font class="proc"> (Image: TImage): WordBool;<br>
</font><font class="body">The frame is saved to the TImage component. The TImage
component must exist before calling this function.</p>
</font>
<p> <font class="proc"> function </font><a name="CaptureFrameToBitmap"><font class="procwd"> CaptureFrameToBitmap</font></a><font class="proc"> (Bitmap: TBitmap): WordBool;<br>
</font><font class="body">The frame is saved to the TBitmap component. The
TBitmap component must exist before calling this function.</p>
<p><font class="proc">procedu</font></font><font class="proc">re </font><a name="FGrabber_CaptureFrameTo"><font class="procwd">FGrabber_CaptureFrameTo</font></a><font class="body"><font class="proc">
(Dest: <a href="#TFrameCapture_Dest">TFrameCapture_Dest</a>);<br>
</font><font color="#000080"><i>Note: this feature requires DirectX8, so it won't be available if a previous
version of DirectX is installed on the platform where the application runs.</i></font><font class="proc">
<br>
</font>Captures 1 or several frames to a memory
Bitmap, a BMP file or a JPEG file, according the the Dest parameter and the <a href="#FGrabber_BurstMode">FGrabber_BurstMode</a>,
<a href="#FGrabber_BurstCount">FGrabber_BurstCount</a> and <a href="#FGrabber_BurstInterval">FGrabber_BurstInterval</a>
settings. </font>
</p>
<p><font class="body">The frame(s) is(are) returned by the <a href="#OnFGrabberCaptureCompleted">OnFGrabberCaptureCompleted</a>
event according to the Dest value:</font>
</p>
<p><font class="body">
fcTBitmap: only the TBitmap frame is returned by the <a href="#OnFGrabberCaptureCompleted">OnFGrabberCaptureCompleted</a>
event,
</font>
</p>
<p><font class="body">fcBmpFile</font><font class="body">
or fcJpegFile: the TBitmap frame is returned by the <a href="#OnFGrabberCaptureCompleted">OnFGrabberCaptureCompleted</a>
event, and a BMP or JPEG file is created in the
<a href="#StoragePath">StoragePath</a> directory according to the
<a href="#AutoFileName">AutoFileName</a> and <a href="#AutoFilePrefix">
AutoFilePrefix</a> properties. </font>
</p>
<font class="body">
<p>
<font class="proc">
procedure
</font>
<a name="Close"><font class="procwd">Close</font></a><font class="proc">;<br>
</font>
Stops playing a clip. Closes the clip.</p>
<p><font class="proc">procedure
</font>
<font class="procwd">FastForward</font><font class="proc">;<br>
</font>
Scans rapidly forward through the current clip if <a href="#AllowScan">AllowScan</a>
is true.<br>
Note: not all the files support scanning. The FastForward2 method below always
work.</p>
<p><font class="proc">procedure
</font>
<a name="FastForward2"><font class="procwd">FastForward2</font></a>
<font class="proc">
(Step: Double);<br>
</font>
Scans rapidly forward through the current clip. The new position is the clip's current
position
+ (the clip's duration / Step).</p>
<p><font class="proc">procedure
</font>
<font class="procwd">FastReverse</font><font class="proc">;<br>
</font>
Scans rapidly backward through the current clip if <a href="#AllowScan">AllowScan</a>
is true.<br>
Note: not all the files support scanning. The FastForward2 method below always
work.</p>
<p><font class="proc">procedure
</font>
<a name="FastReverse2"><font class="procwd">FastReverse2</font></a>
<font class="proc">
(Step: Double);<br>
</font>
Scans rapidly backward through the current clip. The new position is the clip's current
position
+ (the clip's duration / Step).</p>
<p>
<font class="proc">
function
</font>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -