--background--
HISTORY
51.3 (02.07.2013) - Added support for BGRA32. 51.2 (07.09.2012) - Added missing object identifier in GUI generator. - Fixed format string generation in Reggae generator. 51.1 (31.08.2012) - Initial release.
DESCRIPTION
The class is a multiplexer for raw RGB(A) video data. It does not perform any data processing, its purpose is to deliver GUI generation and initialization from argstring. Object of the class has two ports. Input port accepts raw RGB video formats: - MMF_VIDEO_RGB24 - MMF_VIDEO_BGR24 - MMF_VIDEO_ARGB32 - MMF_VIDEO_RGBA32 - MMF_VIDEO_ABGR32 - MMF_VIDEO_BGRA32 The output port produces bytestream format (MMF_STREAM). Input format may be set to the port directly, specified using MMA_Arguments, or set automatically with GUI. The GUI generator creates a group containing a cycle for selecting pixel format and graphical display of pixel structure. Configuration via argument string is supported as well. Raw format supports free streaming, so the video source may report an unknown video frame count.
NEW ATTRIBUTES
MMA_Arguments (v51) [I.G.Q] (char*)
NEW METHODS
OM_NEW OM_DISPOSE MMM_Pull MMM_Setup
MMA_Arguments
MMA_Arguments (V51) [I.G.Q], const char*
DESCRIPTION
Specifies configuration of the object, namely sets proper pixel format to
the input port. The template is "FORMAT/K".
- FORMAT - accepts one of "RGB24", "BGR24", "ARGB32", "RGBA32", "ABGR32",
"BGRA32" strings, case insensitive. When the attribute is passed to the
constructor and format string is none of the above, default "ARGB32" is
assumed.
This attribute can be also read after the object has been configured in
any of ways. In this case returned string is read-only
NOTES
When passed for the constructor, the argument string may be a dynamic variable, as it only has to be valid inside the constructor.
MMM_Pull
Delivers block of data on output port (V51)
SYNOPSIS
LONG DoMethod(obj, MMM_Pull, port, buffer, length);
DESCRIPTION
This class does not process data in any way. Any pull request on the output port is simply forwarded to input
INPUTS
obj - object on which method is performed.
port - must be port 1, the output.
buffer - destination data buffer pointer. Must be allocated with
MediaAllocVec().
length - number of bytes to pull
RESULT
Number of bytes pulled. Secondary information available via MMA_ErrorCode
MMM_Setup
Performs setup after port connection (V51)
SYNOPSIS
BOOL DoMethod(obj, MMM_Setup, port);
DESCRIPTION
This class performs no setup on any port, so for both ports TRUE is returned
OM_DISPOSE
Disposes raw video multiplexer object (V51)
SYNOPSIS
DisposeObject(obj);
DESCRIPTION
This class allocates no resources in the constructor, so this function just calls the superclass destructor
OM_NEW
Creates raw video multplexer. (V51)
SYNOPSIS
obj = NewObject(NULL, "rawvideo.muxer", ...);
DESCRIPTION
Creates an object, creates and initializes ports. No specific resources are allocated. Preconfigures the input port format
INPUTS
Following tags are recognized: - MMA_Arguments - configures input format. Optional. - MMA_ErrorCode - storage for constructor error code. Optional
RESULT
Created object, or NULL. In case of failure MMA_ErrorCode specifies reason: - MMERR_OUT_OF_MEMORY, no free memory, - MMERR_WRONG_ARGUMENTS, malformed MMA_Arguments, or unsupported format