|
vdr-plugin-softhddevice-drm-gles 1.6.4-d0291bb
|
Grabbing Processor. More...
#include <grab.h>
Public Member Functions | |
| cSoftHdGrab (cVideoRender *render) | |
| bool | Active (void) |
| bool | Start (bool, int, int, int, int, int) |
| Start a grab in the video renderer. | |
| uint8_t * | Image (void) |
| int | Size (void) |
Private Member Functions | |
| bool | ProcessGrab (void) |
| Start the conversion. | |
| uint8_t * | GetGrab (int *, int *, int *, int *, int *, Grabtype) |
| Convert the cloned drm buffer data to RGB(void, pip) or ARGB (osd) and return a pointer to the raw data. | |
Private Attributes | |
| cVideoRender * | m_pRender |
| pointer to cVideoRender object | |
| uint8_t * | m_grabbedImage |
| pointer to the finished grabbed image | |
| int | m_grabbedSize |
| data size of the grabbed image | |
| bool | m_isActive = false |
| true, if a grab process is currently running | |
| bool | m_isJpeg = true |
| true, if a jpeg image was requested | |
| int | m_quality |
| quality of the jpeg image | |
| int | m_grabbedWidth |
| pixel width of the grabbed image | |
| int | m_grabbedHeight |
| pixel height of the grabbed image | |
| int | m_screenWidth |
| pixel screenwidth | |
| int | m_screenHeight |
| pixel screenheight | |
Grabbing Processor.
Handles the grabbing workflow from triggering the grab to returning the result
|
inline |
Definition at line 89 of file grab.h.
References m_isActive.
Referenced by cSoftHdDevice::GrabImage().
|
private |
Convert the cloned drm buffer data to RGB(void, pip) or ARGB (osd) and return a pointer to the raw data.
| [out] | size | size of the grabbed buffer |
| [out] | width | width of the grabbed buffer |
| [out] | height | height of the grabbed buffer |
| [out] | x | x offset of the grabbed buffer |
| [out] | y | y offset of the grabbed buffer |
| [in] | buffer | type buffer type (Grabtype) |
Definition at line 384 of file grab.cpp.
References BufToRgb(), cVideoRender::GetGrabbedOsdBuffer(), cVideoRender::GetGrabbedPipBuffer(), cVideoRender::GetGrabbedVideoBuffer(), GRABOSD, GRABPIP, GrabtypeToString(), GRABVIDEO, L_GRAB, LOGDEBUG2, LOGFATAL, m_pRender, and plane.
Referenced by ProcessGrab().
Definition at line 91 of file grab.h.
References m_grabbedImage.
Referenced by cSoftHdDevice::GrabImage().
Start the conversion.
This does the following: 1) Get grabbed video data if available, otherwise create a black screen for video 2) Get grabbed pip data if available 3) Get grabbed osd data if available 4) Blit the video data into a black background image if it is scaled 5) If available, blit the pip data onto it 6) If available, blit the osd data onto it respecting alpha values 7) Scale the result to the user requested size 8) Create a jpg or pnm image as requested
Definition at line 449 of file grab.cpp.
References AlphaBlend(), BlitVideo(), CreateJpeg(), GetGrab(), GRABOSD, GRABPIP, GRABVIDEO, L_GRAB, LOGDEBUG2, m_grabbedHeight, m_grabbedImage, m_grabbedSize, m_grabbedWidth, m_isActive, m_isJpeg, m_quality, m_screenHeight, m_screenWidth, and ScaleRgb24().
Referenced by Start().
Definition at line 92 of file grab.h.
References m_grabbedSize.
Referenced by cSoftHdDevice::GrabImage().
| bool cSoftHdGrab::Start | ( | bool | jpeg, |
| int | quality, | ||
| int | width, | ||
| int | height, | ||
| int | screenWidth, | ||
| int | screenHeight | ||
| ) |
Start a grab in the video renderer.
| jpeg | flag true, create JPEG data |
| quality | JPEG quality |
| width | width of requested grab image |
| height | height of requested grab image |
| screenWidth | current screen width |
| screenHeight | current screen height |
Definition at line 340 of file grab.cpp.
References cVideoRender::ClearGrabBuffers(), L_GRAB, LOGDEBUG2, m_grabbedHeight, m_grabbedImage, m_grabbedWidth, m_isActive, m_isJpeg, m_pRender, m_quality, m_screenHeight, m_screenWidth, ProcessGrab(), and cVideoRender::TriggerGrab().
Referenced by cSoftHdDevice::GrabImage().
|
private |
pixel height of the grabbed image
Definition at line 103 of file grab.h.
Referenced by ProcessGrab(), and Start().
|
private |
pointer to the finished grabbed image
Definition at line 96 of file grab.h.
Referenced by Image(), ProcessGrab(), and Start().
|
private |
data size of the grabbed image
Definition at line 97 of file grab.h.
Referenced by ProcessGrab(), and Size().
|
private |
pixel width of the grabbed image
Definition at line 102 of file grab.h.
Referenced by ProcessGrab(), and Start().
true, if a grab process is currently running
Definition at line 98 of file grab.h.
Referenced by Active(), ProcessGrab(), and Start().
true, if a jpeg image was requested
Definition at line 100 of file grab.h.
Referenced by ProcessGrab(), and Start().
|
private |
pointer to cVideoRender object
|
private |
quality of the jpeg image
Definition at line 101 of file grab.h.
Referenced by ProcessGrab(), and Start().
|
private |
|
private |