OpalVideoMediaStream Class Reference

#include <mediastrm.h>

Inheritance diagram for OpalVideoMediaStream:
OpalMediaStream

Public Member Functions

Construction



 OpalVideoMediaStream (OpalConnection &conn, const OpalMediaFormat &mediaFormat, unsigned sessionID, PVideoInputDevice *inputDevice, PVideoOutputDevice *outputDevice, bool autoDelete=true)
 ~OpalVideoMediaStream ()
Overrides of PChannel class



virtual PBoolean Open ()
virtual PBoolean Close ()
virtual PBoolean ReadData (BYTE *data, PINDEX size, PINDEX &length)
virtual PBoolean WriteData (const BYTE *data, PINDEX length, PINDEX &written)
virtual PBoolean IsSynchronous () const
virtual PBoolean SetDataSize (PINDEX dataSize, PINDEX frameTime)
virtual PVideoInputDevice * GetVideoInputDevice () const
virtual PVideoOutputDevice * GetVideoOutputDevice () const

Protected Attributes

PVideoInputDevice * inputDevice
PVideoOutputDevice * outputDevice
bool autoDelete
PTimeInterval lastGrabTime

Constructor & Destructor Documentation

OpalVideoMediaStream::OpalVideoMediaStream ( OpalConnection conn,
const OpalMediaFormat mediaFormat,
unsigned  sessionID,
PVideoInputDevice *  inputDevice,
PVideoOutputDevice *  outputDevice,
bool  autoDelete = true 
)

Construct a new media stream for channel.

Parameters:
mediaFormat Media format for stream
sessionID Session number for stream
inputDevice Device to use for video grabbing
outputDevice Device to use for video display
autoDelete Automatically delete PVideoDevices
OpalVideoMediaStream::~OpalVideoMediaStream (  ) 

Delete attached channel if autoDelete enabled.


Member Function Documentation

virtual PBoolean OpalVideoMediaStream::Close (  )  [virtual]

Close the media stream.

The default does nothing.

Reimplemented from OpalMediaStream.

virtual PVideoInputDevice* OpalVideoMediaStream::GetVideoInputDevice (  )  const [inline, virtual]

Get the input device (e.g. for statistics)

virtual PVideoOutputDevice* OpalVideoMediaStream::GetVideoOutputDevice (  )  const [inline, virtual]

Get the output device (e.g. for statistics)

virtual PBoolean OpalVideoMediaStream::IsSynchronous (  )  const [virtual]

Indicate if the media stream is synchronous. Returns true for LID streams.

Implements OpalMediaStream.

virtual PBoolean OpalVideoMediaStream::Open (  )  [virtual]

Open the media stream.

The default behaviour sets the OpalLineInterfaceDevice format and calls Resume() on the associated OpalMediaPatch thread.

Reimplemented from OpalMediaStream.

virtual PBoolean OpalVideoMediaStream::ReadData ( BYTE *  data,
PINDEX  size,
PINDEX &  length 
) [virtual]

Read raw media data from the source media stream. The default behaviour simply calls ReadPacket() on the data portion of the RTP_DataFrame and sets the frames timestamp and marker from the internal member variables of the media stream class.

Parameters:
data Data buffer to read to
size Size of buffer
length Length of data actually read

Reimplemented from OpalMediaStream.

virtual PBoolean OpalVideoMediaStream::SetDataSize ( PINDEX  dataSize,
PINDEX  frameTime 
) [virtual]

Override size of frame header is included

Parameters:
dataSize New data size (in total)
frameTime Individual frame time (if applicable)

Reimplemented from OpalMediaStream.

virtual PBoolean OpalVideoMediaStream::WriteData ( const BYTE *  data,
PINDEX  length,
PINDEX &  written 
) [virtual]

Write raw media data to the sink media stream. The default behaviour calls WritePacket() on the data portion of the RTP_DataFrame and and sets the internal timestamp and marker from the member variables of the media stream class.

Parameters:
data Data to write
length Length of data to read.
written Length of data actually written

Reimplemented from OpalMediaStream.


Field Documentation

PVideoInputDevice* OpalVideoMediaStream::inputDevice [protected]
PTimeInterval OpalVideoMediaStream::lastGrabTime [protected]
PVideoOutputDevice* OpalVideoMediaStream::outputDevice [protected]

The documentation for this class was generated from the following file:

Generated on 14 Jul 2011 for OPAL by  doxygen 1.6.1