#include <videoio.h>
Inheritance diagram for PVideoOutputDevice:
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 PVideoOutputDevice * | CreateDevice (const PString &driverName, PPluginManager *pluginMgr=NULL) |
Create the video output device that corresponds to the specified driver name. | |
static PVideoOutputDevice * | CreateDeviceByName (const PString &deviceName, const PString &driverName=PString::Empty(), PPluginManager *pluginMgr=NULL) |
static PVideoOutputDevice * | CreateOpenedDevice (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 PVideoOutputDevice * | CreateOpenedDevice (const OpenArgs &args, PBoolean startImmediate=true) |
Create an opened video output device that corresponds to the specified arguments. |
PVideoOutputDevice::PVideoOutputDevice | ( | ) |
Create a new video output device.
virtual PVideoOutputDevice::~PVideoOutputDevice | ( | ) | [inline, virtual] |
Close the video output device on destruction.
virtual PBoolean PVideoOutputDevice::CanCaptureVideo | ( | ) | const [virtual] |
virtual PBoolean PVideoOutputDevice::Close | ( | ) | [inline, virtual] |
static PVideoOutputDevice* PVideoOutputDevice::CreateDevice | ( | const PString & | driverName, | |
PPluginManager * | pluginMgr = NULL | |||
) | [static] |
Create the video output device that corresponds to the specified driver name.
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] |
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.
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().
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).
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.
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 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] |
virtual PBoolean PVideoOutputDevice::Stop | ( | ) | [inline, virtual] |