Operates objects.
Methods
ObjectCallbackSet
Sets the callback (for C++ and Delphi, for other languages use events). This method blocks the video stream.
Syntax
void ObjectCallbackSet( IMCallback _pCallback, long _llCallbackUserData )
Parameters
_pCallback - callback function
_llCallbackUserData - callback user data
ObjectCallbackSetFunc
Sets the callback function (for C++ and Delphi, for other languages use events). The method blocks the video stream.
Syntax
void ObjectCallbackSetFunc( long _lpPFOnEvent, long _lpPFOnFrame, long _llCallbackUserData )
Parameters
_lpPFOnEvent - function pointer OnEvent
_lpPFOnFrame - function pointer OnFrame
_llCallbackUserData - callback user data
ObjectClose
Stops and closes the current object.
Syntax
void ObjectClose()
ObjectCommandExecute
Executes the special command for object.
Syntax
void ObjectCommandExecute( string _bsCommand, string _bsParam, object _pParamUnk, out string _pbsReturn )
Parameters
_bsCommand - command name
_bsParam - command parameters
_pParamUnk - additional command parameters
_pbsReturn - result string
ObjectFrameGet
Gets the current frame from any source object.
Syntax
void ObjectFrameGet( out MFrame _ppFrame, string _bsParam )
Parameters
_ppFrame - output frame object
_bsParam - additional parameters: make_local - "true" to convert frame to ARGB32 format (by default, for other formats you should set pixel_format parameter); "false" to left the current format pixel_format - format for frame conversion (ARGB32/YVYU/HDYC)
ObjectGetInternal
Gets DirectShow object in MPlatform. Use for MLive, MRenderer and MWriter objects.
Syntax
void ObjectGetInternal( string _bsType, out object _ppObject )
Parameters
_bsType - object type
_ppObject - pointer to the object
ObjectNameGet
Gets the object name.
Syntax
void ObjectNameGet( out string _pbsName )
Parameters
_pbsName - name of the object
ObjectNameSet
Sets the object name. If you need to change it, use the following approach:
IMObject.PropsSet("object_name", "new_name");
IMObject.ObjectNameSet("new_name");
Note, that it's possible to change the name only before the object is started. If the object is running, stop it, and only then rename the object.
Syntax
void ObjectNameSet( string _bsName )
Parameters
_bsName - name of the object
ObjectStart
Initializes and starts the object.
Syntax
void ObjectStart( object _pSource )
Parameters
_pSource - source object
ObjectStateGet
Gets the state of object.
Syntax
void ObjectStateGet( out eMState _peState )
Parameters
_peState - state of the object
ObjectVirtualSourceCreate
Creates virtual source.
Syntax
void ObjectVirtualSourceCreate( int _bCreate, string _bsName, string _bsParam )
Parameters
_bCreate - "1" is to create virtual source, "0" is to destroy this one
_bsName - name of virtual source. It is implemented only is source object is started. In other case a default name is used that may cause a problem if you use several virtual objects.
_bsParam - parameters of virtual source