Chapter 2 — Using the Filter Manager API
29
Other Methods
Other Methods
There are several other methods that Filter Manager supports to enable further
control over the encoding process. They are listed and described below. Note that
all
BSTR
arguments listed below encapsulate strings for Unicode format.
BSTR GetTimeStamp().
This method returns the time stamp currently on the
tape deck. The format of the returned time code is “hh:mm:ss:ff.” This method
can be used to read the current time code into a mark-in or mark-out edit field
on a dialog. It should not be used during an encode unless it is called from its
own separate thread. Even then, it should be used with caution to prevent
excessive CPU usage.
BSTR MakeMarkOut(BSTR MarkIn, BSTR Duration).
Given a mark-in and
a duration, this method returns the corresponding mark-out, in the
format “hh:mm:ss:ff.” It is strongly recommended that C++ programmers
wrap BSTR types in the CComBSTR class or in the
_bstr_t
class before pass-
ing them as arguments.
BSTR MakeDuration(BSTR MarkIn, BSTR MarkOut).
Given a mark-in and
a mark-out, this method returns the corresponding duration in the format
“hh:mm:ss:ff.” It is strongly recommended that C++ programmers wrap BSTR
types in the CComBSTR class or in the
_bstr_t
class before passing them as
arguments.
HRESULT TapeChanged().
You should issue this call in response to a Pause
Event, which indicates that a
scheduled
pause has occurred. Remember, this
feature must
not
be used if multi-stream encoding is turned on. When the
encoding environment is set up to resume (usually after another tape has been
loaded into the tape deck), your application issues this call to indicate that it is
time to resume encoding. In response, the encoder will roll to the mark-in of
the next segment of the encode, then resume encoding.
long VTRConnect().
This call opens a serial port for the purpose of connecting
to and controlling a tape deck with the Argus VTR Sony 9-pin Protocol com-
mands. The number of the serial port must first have been specified in the VTR
table of the Registry.
long VTRDisconnect().
This method closes the serial port used to control a tape
deck. Once the serial port is closed, it can be reopened by a component or
application other than VTRControl. Note that VTRControl operates the tape
deck
during
an encode if the property VTREnabled is set to TRUE (1).
However, it can be released with a disconnect call between encodes.
NOTE:
This method should not be called from the error-event or finished-event handler.