Index

DKVideoStreamICM

Purpose:

This class represents a video stream resource object. A resource object consists of content stored in a resource manager and the metadata describing the content. The metadata is stored in Content Manager. The content of a video stream object is stored in a streaming server resource manager, which in this case is the IBM VideoCharger server.

Since the content of a video stream object is often large, persistent operations such as add, retrieve, and update should be done through a third party server using a standard protocol like FTP. After you have retrieved an object's metadata, you can use this class to initiate a session to stream out the content between the video server and video player.

DKVideoStreamICM inherits most of its methods from the DKStreamICM class, which represents generic streamable objects.

See also: DKStreamICM, DKLobICM

Since: Version 8

Class summary:

class DKEXPORT DKVideoStreamICM : public DKStreamICM  
{
  public:
 
   // default constructor
   DKVideoStreamICM();
   DKVideoStreamICM(DKDatastoreICM* aDatastore);
  DKByteArray *pByteArray;
 
   // destructor
   virtual ~DKVideoStreamICM();
 
   virtual dkXDO* cloneSkeleton();
   virtual void setStreamFrameDuration( int framedur);
   virtual void setStreamFrameRate( int framerate);
   virtual void setStreamMediaResolution( DKString mediares);
   virtual void setStreamMediaType( DKString mediatype);
   virtual void setStreamMediaStandard( DKString mediastd);
   virtual int getStreamFrameDuration();
   virtual int getStreamFrameRate();
   virtual DKString getStreamMediaType();
   virtual DKString getStreamMediaResolution();
   virtual DKString getStreamMediaStandard();
};

Members:

Constructors and destructor

DKVideoStreamICM(); Default constructor for video stream objects. DKVideoStreamICM(dkDatastore* aDatastore); Constructs a video stream object associated with the given datastore; equivalent to calling the default constructor followed by the setDatastore method.

Parameters: aDatastore - associated datastore as an instance of DKDatastoreICM

Returns: None.

Memory Management: None.

DKVideoStreamICM(dkDatastoreICM* aDatastore, const DKString& astring); Constructs a video stream object associated with the datastore, and sets the initial content to the given byte array.

Parameters: aDatastore - associated datastore as an instance of DKDatastoreICM astring - byte array containing video content

Returns: None.

Memory Management: None.

DKByteArray *pByteArray; Returns pByteArray, a byte array to be set as this object's content.

virtual ~DKVideoStreamICM() The destructor for this object.

Member Functions

setStreamFrameDuration
Sets the value for the video stream duration in number of frames.

Parameters:

framedur - the stream duration in number of frames.

Returns:

None.

Memory Management: None.

void setStreamFrameDuration(int framedur);

setStreamFrameRate
Sets the value for the recommended number of frames per second. Recommended (usually this is the actual frame rate multiplied by 100) for streaming this video stream object. Specifying the frame rate is optional.

Parameters: framerate - the framerate per second.

Returns: None.

Memory Management: None.

void setStreamFrameRate(int framerate);

setStreamMediaResolution
Sets the value for the media resolution property of this video stream object. The value is alphanumeric, and can be up to 16 characters, for example, SIF(default), HHR, CCIR601 etc. Specifying this value is optional.

Parameters: mediares - the media resolution.

Returns: None.

Memory Management: None.

void setStreamMediaResolution(DKString mediares);

setStreamMediaType
Sets the value for the media type or file format property for this object. File format could be MPEG1(default), MPEG2, AVI, WAV, LBR, QT etc. Specifying the media type value is optional.

Parameters: mediatype - the media type.

Returns: None.

Memory Management: None.

void setStreamMediaType(DKString mediatype);

setStreamMediaStandard
Sets the value for the media standard information for this video stream. The media standard value could be NTSC(default)or PAL.

Parameters: mediastd - the media standard.

Returns: None.

Memory Management: None.

void setStreamMediaStandard(DKString mediastd);

getStreamFrameDuration
Retrieves the value of the stream duration in number of frames for streaming this video stream object.

Parameters: None.

Returns: int frameduration. see setStreamFrameDuration(int).

Memory Management: None.

int getStreamFrameDuration();

getStreamFrameRate
Retrieves the number of frame per second recommended for streaming this video stream object.

Parameters: None

Returns: The frame rate. See setStreamFrameRate(int).

Memory Management: None

int getStreamFrameRate();

getStreamMediaType
Retrieves the media type or file format for this video stream. The file format could be MPEG1, MPEG2, AVI, etc.

Parameters: None.

Returns: The media type, a DKString value. See setStreamMediaType(DKString).

Memory Management: None.

DKString getStreamMediaType();

getStreamMediaResolution
Retrieves the resolution of this video stream.

Parameters: None.

Returns: The media resolution for this video stream as a DKString value. See setStreamMediaResolution(DKString).

Memory Management: None.

DKString getStreamMediaResolution();

getStreamMediaStandard
Retrieves the value of the media standard for this video stream. The standard could be NTSC, PAL, etc.

Parameters: None.

Returns: The media standard value as a DKString. See setStreamMediaStandard(DKString).

Memory Management: None.

DKString getStreamMediaStandard();

Play
This method is used for an asynchronous streaming of audio/video content from a Video Charger to a specified player. This request, along with the necessary parameters, is passed to the Content Manager resource manager, which on behalf of the end user will contact the VideoCharger. The VideoCharger will return the meta data information relating to the streaming session and this infomation can be passed to the player to initiate the playing of the content. The meta data returned from the VideoCharger is in IVS format. If the start and stop time for the content to stream is not specified, the entire content will be streamed.

Parameters: None.

Returns: A byte array containing the stream session information in IVS format.

Memory Management: None

DKString play();

(c) Copyright International Business Machines Corporation 1996, 2003. IBM Corp. All rights reserved.