PVideoOutputDevice Class Reference

This class defines a video output device. More...

#include <videoio.h>

Inheritance diagram for PVideoOutputDevice:

PVideoDevice PVideoFrameInfo PObject PVideoOutputDeviceRGB List of all members.

Public Member Functions

 PVideoOutputDevice ()
 Create a new video output device.
virtual ~PVideoOutputDevice ()
 Close the video output device on destruction.
virtual PBoolean Close ()
 Close the device.
virtual PBoolean Start ()
 Start the video device I/O display.
virtual PBoolean Stop ()
 Stop the video device I/O display.
virtual PBoolean CanCaptureVideo () const
 Is the device a camera, and obtain video.
virtual PBoolean SetFrameData (unsigned x, unsigned y, unsigned width, unsigned height, const BYTE *data, PBoolean endFrame=true)=0
 Set a section of the output frame buffer.
virtual PBoolean SetFrameData (unsigned x, unsigned y, unsigned width, unsigned height, const BYTE *data, PBoolean endFrame, unsigned flags)
virtual PBoolean SetFrameData (unsigned x, unsigned y, unsigned width, unsigned height, unsigned sarwidth, unsigned sarheight, const BYTE *data, PBoolean endFrame, unsigned flags, const void *mark)
virtual PBoolean DisableDecode ()
 Allow the outputdevice decide whether the decoder should ignore decode hence not render any output.
virtual PBoolean GetPosition (int &x, int &y) const
 Get the position of the output device, where relevant.
virtual bool SetPosition (int x, int y)
 Set the position of the output device, where relevant.

Static Public Member Functions

static PStringArray GetDriverNames (PPluginManager *pluginMgr=NULL)
 Get the list of available video output drivers (plug-ins).
static PStringArray GetDriversDeviceNames (const PString &driverName, PPluginManager *pluginMgr=NULL)
 Get video output devices that correspond to the specified driver name.
static PVideoOutputDeviceCreateDevice (const PString &driverName, PPluginManager *pluginMgr=NULL)
 Create the video output device that corresponds to the specified driver name.
static PVideoOutputDeviceCreateDeviceByName (const PString &deviceName, const PString &driverName=PString::Empty(), PPluginManager *pluginMgr=NULL)
static PVideoOutputDeviceCreateOpenedDevice (const PString &driverName, const PString &deviceName, PBoolean startImmediate=true, PPluginManager *pluginMgr=NULL)
 Create an opened video output device that corresponds to the specified names.
static PVideoOutputDeviceCreateOpenedDevice (const OpenArgs &args, PBoolean startImmediate=true)
 Create an opened video output device that corresponds to the specified arguments.

Detailed Description

This class defines a video output device.


Constructor & Destructor Documentation

PVideoOutputDevice::PVideoOutputDevice (  ) 

Create a new video output device.

virtual PVideoOutputDevice::~PVideoOutputDevice (  )  [inline, virtual]

Close the video output device on destruction.


Member Function Documentation

virtual PBoolean PVideoOutputDevice::CanCaptureVideo (  )  const [virtual]

Is the device a camera, and obtain video.

Implements PVideoDevice.

virtual PBoolean PVideoOutputDevice::Close (  )  [inline, virtual]

Close the device.

Implements PVideoDevice.

static PVideoOutputDevice* PVideoOutputDevice::CreateDevice ( const PString driverName,
PPluginManager pluginMgr = NULL 
) [static]

Create the video output device that corresponds to the specified driver name.

Parameters:
driverName  Name of driver
pluginMgr  Plug in manager, use default if NULL

static PVideoOutputDevice* PVideoOutputDevice::CreateDeviceByName ( const PString deviceName,
const PString driverName = PString::Empty(),
PPluginManager pluginMgr = NULL 
) [static]

Parameters:
deviceName  Name of device
driverName  Name of driver (if any)
pluginMgr  Plug in manager, use default if NULL

static PVideoOutputDevice* PVideoOutputDevice::CreateOpenedDevice ( const OpenArgs &  args,
PBoolean  startImmediate = true 
) [static]

Create an opened video output device that corresponds to the specified arguments.

Parameters:
args  Parameters to set on opened device
startImmediate  Immediately start display

static PVideoOutputDevice* PVideoOutputDevice::CreateOpenedDevice ( const PString driverName,
const PString deviceName,
PBoolean  startImmediate = true,
PPluginManager pluginMgr = NULL 
) [static]

Create an opened video output device that corresponds to the specified names.

If the driverName parameter is an empty string or "*" then CreateDeviceByName is used with the deviceName parameter which is assumed to be a value returned from GetDriversDeviceNames().

Parameters:
driverName  Name of driver
deviceName  Name of device
startImmediate  Immediately start display
pluginMgr  Plug in manager, use default if NULL

virtual PBoolean PVideoOutputDevice::DisableDecode (  )  [virtual]

Allow the outputdevice decide whether the decoder should ignore decode hence not render any output.

Returns: false if to decode and render.

static PStringArray PVideoOutputDevice::GetDriverNames ( PPluginManager pluginMgr = NULL  )  [static]

Get the list of available video output drivers (plug-ins).

Parameters:
pluginMgr  Plug in manager, use default if NULL

static PStringArray PVideoOutputDevice::GetDriversDeviceNames ( const PString driverName,
PPluginManager pluginMgr = NULL 
) [static]

Get video output devices that correspond to the specified driver name.

If driverName is an empty string or the value "*" then this will return a list of unique device names across all of the available drivers. If two drivers have identical names for devices, then the string returned will be of the form driver+'\t'+device.

Parameters:
driverName  Name of driver
pluginMgr  Plug in manager, use default if NULL

virtual PBoolean PVideoOutputDevice::GetPosition ( int &  x,
int &  y 
) const [virtual]

Get the position of the output device, where relevant.

For devices such as files, this always returns zeros. For devices such as Windows, this is the position of the window on the screen.

Returns: TRUE if the position is available.

virtual PBoolean PVideoOutputDevice::SetFrameData ( unsigned  x,
unsigned  y,
unsigned  width,
unsigned  height,
unsigned  sarwidth,
unsigned  sarheight,
const BYTE *  data,
PBoolean  endFrame,
unsigned  flags,
const void *  mark 
) [virtual]

virtual PBoolean PVideoOutputDevice::SetFrameData ( unsigned  x,
unsigned  y,
unsigned  width,
unsigned  height,
const BYTE *  data,
PBoolean  endFrame,
unsigned  flags 
) [virtual]

virtual PBoolean PVideoOutputDevice::SetFrameData ( unsigned  x,
unsigned  y,
unsigned  width,
unsigned  height,
const BYTE *  data,
PBoolean  endFrame = true 
) [pure virtual]

Set a section of the output frame buffer.

Implemented in PVideoOutputDeviceRGB.

virtual bool PVideoOutputDevice::SetPosition ( int  x,
int  y 
) [virtual]

Set the position of the output device, where relevant.

For devices such as files, this does nothing. For devices such as Windows, this sets the position of the window on the screen.

Returns: TRUE if the position can be set.

virtual PBoolean PVideoOutputDevice::Start (  )  [inline, virtual]

Start the video device I/O display.

Implements PVideoDevice.

virtual PBoolean PVideoOutputDevice::Stop (  )  [inline, virtual]

Stop the video device I/O display.

Implements PVideoDevice.


The documentation for this class was generated from the following file:
Generated on Fri Oct 14 01:44:14 2011 for PTLib by  doxygen 1.4.7