MHEG  17.9.0
 All Data Structures Files Functions Variables Typedefs Enumerations Macros Pages
Functions
mh5video.c File Reference

Implementation of the Video class Description Defines the attributes and behaviour of an elementary video stream of a Stream multiplex. The Video object shall be a StreamComponent of a Stream object. Base class Visible Subclasses None Status Concrete class. More...

#include <string.h>
#include "mh5base.h"
#include "mh5debug.h"
#include "mh5misc.h"
#include "mh5object.h"
#include "mh5variable.h"
#include "mh5video.h"
#include "mh5application.h"
#include "mh5memory.h"
#include "mh5display.h"

Functions

void MHEG5videoInit (MHEG5Video *video)
 Initialise a video object with default values. See also MHEG5videoDestruct. More...
 
void MHEG5videoFree (MHEG5Video *video)
 Free off all memory associated with the specified object, including any exchanged attributes and internal data. The data holding the object itself is not freed. More...
 
void MHEG5videoPrepare (MHEG5Video *video)
 Apply the preparation behaviour of the video class As this class has no own preparation behaviour this function just invokes the preparation behaviour from the base class. More...
 
void MHEG5videoActivate (MHEG5Video *video)
 Apply the activation behaviour of the video class. More...
 
void MHEG5videoDeactivate (MHEG5Video *video)
 Apply the deactivation behaviour of the video class. As this class has no own deactivation behaviour this function just invokes the deactivation behaviour from the base class. More...
 
void MHEG5videoDestruct (MHEG5Video *video)
 Destruct a video object. See also MHEG5videoInit. More...
 
MHEG5ErrorCode MHEG5scaleVideo (MHEG5Root *target, MHEG5GList *params)
 Implementation of the ScaleVideo (XScale, YScale) action of the video class. The effect of this action is to scale the contents of the video to the size (XScale, YScale). ScaleVideo (XScale, YScale) If the MHEG-5 engine implements the Scaling option, the effect of this action is to adapt the rendering of the Video so that it fits to the XScale and YScale dimensions. XScale and YScale parameters represent the final dimensions of the Video in pixel numbers. Thus, the graphical representation of the Video may not keep its original aspect ratio. Note that this action does not affect the BoxSize internal attribute of the Video object. Provisions of use: The Target object shall be an available Video object. XScale and YScale shall be positive Integers. ScaleVideo –> Target, XScale, YScale Target –> GenericObjectReference XScale, YScale –> GenericInteger. More...
 
MHEG5ErrorCode MHEG5setVideoDecodeOffset (MHEG5Root *target, MHEG5GList *params)
 Implementation of the SetVideoDecodeOffset (NewXOffset, NewYOffset) action of the video class. The effect of this action is to change the location of the decoded and scaled video with respect to the target Video object. SetVideoDecodeOffset (NewXOffset, NewYOffset) Change the location of the decoded and scaled video with respect to the target Video object. The offset parameters may be negative. Execute the following sequence of actions: More...
 
MHEG5ErrorCode MHEG5getVideoDecodeOffset (MHEG5Root *target, MHEG5GList *params)
 Implementation of the GetVideoDecodeOffset (XOffsetVar, YOffsetVar) action of the video class. GetVideoDecodeOffset (XOffsetVar, YOffsetVar) Returns the location of the decoded and scaled video with respect to the target Video object. The offset values may be negative. Set the Variables referenced by XPositionVar and YPositionVar to the value of the X and Y decode offset of the target Video object respectively. Provisions of use: The Target object shall be an available Video object. XOffsetVar and YOffsetVar shall refer to active IntegerVariable objects. GetVideoDecodeOffset –> Target, XOffsetVar, YOffsetVar Target –> GenericObjectReference XOffsetVar, YOffsetVar –> ObjectReference. More...
 

Detailed Description

Implementation of the Video class Description Defines the attributes and behaviour of an elementary video stream of a Stream multiplex. The Video object shall be a StreamComponent of a Stream object. Base class Visible Subclasses None Status Concrete class.

Date
17/12/2001
Author
iwillis

Function Documentation

MHEG5ErrorCode MHEG5getVideoDecodeOffset ( MHEG5Root target,
MHEG5GList params 
)

Implementation of the GetVideoDecodeOffset (XOffsetVar, YOffsetVar) action of the video class. GetVideoDecodeOffset (XOffsetVar, YOffsetVar) Returns the location of the decoded and scaled video with respect to the target Video object. The offset values may be negative. Set the Variables referenced by XPositionVar and YPositionVar to the value of the X and Y decode offset of the target Video object respectively. Provisions of use: The Target object shall be an available Video object. XOffsetVar and YOffsetVar shall refer to active IntegerVariable objects. GetVideoDecodeOffset –> Target, XOffsetVar, YOffsetVar Target –> GenericObjectReference XOffsetVar, YOffsetVar –> ObjectReference.

Parameters
targettarget object for this action
paramsAction parameters
Returns
MHEG5ErrorCode - See mh5base.h
MHEG5ErrorCode MHEG5scaleVideo ( MHEG5Root target,
MHEG5GList params 
)

Implementation of the ScaleVideo (XScale, YScale) action of the video class. The effect of this action is to scale the contents of the video to the size (XScale, YScale). ScaleVideo (XScale, YScale) If the MHEG-5 engine implements the Scaling option, the effect of this action is to adapt the rendering of the Video so that it fits to the XScale and YScale dimensions. XScale and YScale parameters represent the final dimensions of the Video in pixel numbers. Thus, the graphical representation of the Video may not keep its original aspect ratio. Note that this action does not affect the BoxSize internal attribute of the Video object. Provisions of use: The Target object shall be an available Video object. XScale and YScale shall be positive Integers. ScaleVideo –> Target, XScale, YScale Target –> GenericObjectReference XScale, YScale –> GenericInteger.

Parameters
targettarget object for this action
paramsAction parameters
Returns
MHEG5ErrorCode - See mh5base.h
MHEG5ErrorCode MHEG5setVideoDecodeOffset ( MHEG5Root target,
MHEG5GList params 
)

Implementation of the SetVideoDecodeOffset (NewXOffset, NewYOffset) action of the video class. The effect of this action is to change the location of the decoded and scaled video with respect to the target Video object. SetVideoDecodeOffset (NewXOffset, NewYOffset) Change the location of the decoded and scaled video with respect to the target Video object. The offset parameters may be negative. Execute the following sequence of actions:

  1. Set the VideoDecodeOffset attribute according to NewXOffset and NewYOffset.
  2. If the Video object is active, redraw the graphic widget representing the object on the screen in the bounding box defined by the BoxSize and Position attributes and according to its position in the DisplayStack of the active Application object. Provisions of use: The Target object shall be an available Video object. NewXOffset and NewYOffset shall correspond to an offset interpreted in the Scene coordinate system defined by the SceneCoordinateSystem attribute of the currently active Scene. SetVideoDecodeOffset –> Target, NewXOffset, NewYOffset Target –> GenericObjectReference NewXOffset, NewYOffset –> GenericInteger
    Parameters
    targettarget object for this action
    paramsAction parameters
    Returns
    MHEG5ErrorCode - See mh5base.h
void MHEG5videoActivate ( MHEG5Video video)

Apply the activation behaviour of the video class.

Parameters
videoVideo object to activate
Returns
void
void MHEG5videoDeactivate ( MHEG5Video video)

Apply the deactivation behaviour of the video class. As this class has no own deactivation behaviour this function just invokes the deactivation behaviour from the base class.

Parameters
videoVideo object to deactivate
Returns
void
void MHEG5videoDestruct ( MHEG5Video video)

Destruct a video object. See also MHEG5videoInit.

Parameters
videoVideo object to destuct
Returns
void
void MHEG5videoFree ( MHEG5Video video)

Free off all memory associated with the specified object, including any exchanged attributes and internal data. The data holding the object itself is not freed.

Parameters
videoPointer to object to free.
Returns
Void
void MHEG5videoInit ( MHEG5Video video)

Initialise a video object with default values. See also MHEG5videoDestruct.

<Function description>="">

Parameters
videoPointer to object to initialise
Returns
Void
void MHEG5videoPrepare ( MHEG5Video video)

Apply the preparation behaviour of the video class As this class has no own preparation behaviour this function just invokes the preparation behaviour from the base class.

Parameters
videoVideo object to prepare
Returns
void