#include <RenderManager.h>
|
| CRenderManager (CDVDClock &clock, IRenderMsg *player) |
|
virtual | ~CRenderManager () |
|
void | GetVideoRect (CRect &source, CRect &dest, CRect &view) |
|
float | GetAspectRatio () |
|
void | FrameMove () |
|
void | FrameWait (int ms) |
|
void | Render (bool clear, DWORD flags=0, DWORD alpha=255, bool gui=true) |
|
bool | IsVideoLayer () |
|
RESOLUTION | GetResolution () |
|
void | UpdateResolution () |
|
void | TriggerUpdateResolution (float fps, int width, int height, std::string &stereomode) |
|
void | SetViewMode (int iViewMode) |
|
void | PreInit () |
|
void | UnInit () |
|
bool | Flush (bool wait, bool saveBuffers) |
|
bool | IsConfigured () const |
|
void | ToggleDebug () |
|
unsigned int | AllocRenderCapture () |
|
void | ReleaseRenderCapture (unsigned int captureId) |
|
void | StartRenderCapture (unsigned int captureId, unsigned int width, unsigned int height, int flags) |
|
bool | RenderCaptureGetPixels (unsigned int captureId, unsigned int millis, uint8_t *buffer, unsigned int size) |
|
bool | Supports (ERENDERFEATURE feature) |
|
bool | Supports (ESCALINGMETHOD method) |
|
int | GetSkippedFrames () |
|
bool | Configure (const VideoPicture &picture, float fps, unsigned int orientation, int buffers=0) |
|
bool | AddVideoPicture (const VideoPicture &picture, volatile std::atomic_bool &bStop, EINTERLACEMETHOD deintMethod, bool wait) |
|
void | AddOverlay (CDVDOverlay *o, double pts) |
|
void | ShowVideo (bool enable) |
|
int | WaitForBuffer (volatile std::atomic_bool &bStop, int timeout=100) |
|
bool | GetStats (int &lateframes, double &pts, int &queued, int &discard) |
|
void | DiscardBuffer () |
|
void | SetDelay (int delay) |
|
int | GetDelay () |
|
void | SetVideoSettings (CVideoSettings settings) |
|
◆ EPRESENTMETHOD
Enumerator |
---|
PRESENT_METHOD_SINGLE | |
PRESENT_METHOD_BLEND | |
PRESENT_METHOD_BOB | |
◆ EPRESENTSTEP
Enumerator |
---|
PRESENT_IDLE | |
PRESENT_FLIP | |
PRESENT_FRAME | |
PRESENT_FRAME2 | |
PRESENT_READY | |
◆ ERENDERSTATE
Enumerator |
---|
STATE_UNCONFIGURED | |
STATE_CONFIGURING | |
STATE_CONFIGURED | |
◆ CRenderManager()
◆ ~CRenderManager()
CRenderManager::~CRenderManager |
( |
| ) |
|
|
virtual |
◆ AddOverlay()
◆ AddVideoPicture()
bool CRenderManager::AddVideoPicture |
( |
const VideoPicture & |
picture, |
|
|
volatile std::atomic_bool & |
bStop, |
|
|
EINTERLACEMETHOD |
deintMethod, |
|
|
bool |
wait |
|
) |
| |
◆ AllocRenderCapture()
unsigned int CRenderManager::AllocRenderCapture |
( |
| ) |
|
◆ CheckEnableClockSync()
void CRenderManager::CheckEnableClockSync |
( |
| ) |
|
|
protected |
◆ Configure() [1/2]
bool CRenderManager::Configure |
( |
| ) |
|
|
protected |
◆ Configure() [2/2]
bool CRenderManager::Configure |
( |
const VideoPicture & |
picture, |
|
|
float |
fps, |
|
|
unsigned int |
orientation, |
|
|
int |
buffers = 0 |
|
) |
| |
◆ CreateRenderer()
void CRenderManager::CreateRenderer |
( |
| ) |
|
|
protected |
◆ DeleteRenderer()
void CRenderManager::DeleteRenderer |
( |
| ) |
|
|
protected |
◆ DiscardBuffer()
void CRenderManager::DiscardBuffer |
( |
| ) |
|
Video player call this on flush in oder to discard any queued frames
◆ Flush()
bool CRenderManager::Flush |
( |
bool |
wait, |
|
|
bool |
saveBuffers |
|
) |
| |
◆ FrameMove()
void CRenderManager::FrameMove |
( |
| ) |
|
◆ FrameWait()
void CRenderManager::FrameWait |
( |
int |
ms | ) |
|
◆ GetAspectRatio()
float CRenderManager::GetAspectRatio |
( |
| ) |
|
◆ GetDelay()
int CRenderManager::GetDelay |
( |
| ) |
|
|
inline |
◆ GetResolution()
◆ GetSkippedFrames()
int CRenderManager::GetSkippedFrames |
( |
| ) |
|
|
inline |
◆ GetStats()
bool CRenderManager::GetStats |
( |
int & |
lateframes, |
|
|
double & |
pts, |
|
|
int & |
queued, |
|
|
int & |
discard |
|
) |
| |
Can be called by player for lateness detection. This is done best by looking at the end of the queue.
◆ GetVideoRect()
◆ IsConfigured()
bool CRenderManager::IsConfigured |
( |
| ) |
const |
◆ IsGuiLayer()
bool CRenderManager::IsGuiLayer |
( |
| ) |
|
|
protected |
◆ IsPresenting()
bool CRenderManager::IsPresenting |
( |
| ) |
|
|
protected |
◆ IsVideoLayer()
bool CRenderManager::IsVideoLayer |
( |
| ) |
|
◆ ManageCaptures()
void CRenderManager::ManageCaptures |
( |
| ) |
|
|
protected |
◆ PreInit()
void CRenderManager::PreInit |
( |
| ) |
|
◆ PrepareNextRender()
void CRenderManager::PrepareNextRender |
( |
| ) |
|
|
protected |
◆ PresentBlend()
void CRenderManager::PresentBlend |
( |
bool |
clear, |
|
|
DWORD |
flags, |
|
|
DWORD |
alpha |
|
) |
| |
|
protected |
◆ PresentFields()
void CRenderManager::PresentFields |
( |
bool |
clear, |
|
|
DWORD |
flags, |
|
|
DWORD |
alpha |
|
) |
| |
|
protected |
◆ PresentSingle()
void CRenderManager::PresentSingle |
( |
bool |
clear, |
|
|
DWORD |
flags, |
|
|
DWORD |
alpha |
|
) |
| |
|
protected |
◆ ReleaseRenderCapture()
void CRenderManager::ReleaseRenderCapture |
( |
unsigned int |
captureId | ) |
|
◆ RemoveCaptures()
void CRenderManager::RemoveCaptures |
( |
| ) |
|
|
protected |
◆ Render()
void CRenderManager::Render |
( |
bool |
clear, |
|
|
DWORD |
flags = 0 , |
|
|
DWORD |
alpha = 255 , |
|
|
bool |
gui = true |
|
) |
| |
◆ RenderCapture()
void CRenderManager::RenderCapture |
( |
CRenderCapture * |
capture | ) |
|
|
protected |
◆ RenderCaptureGetPixels()
bool CRenderManager::RenderCaptureGetPixels |
( |
unsigned int |
captureId, |
|
|
unsigned int |
millis, |
|
|
uint8_t * |
buffer, |
|
|
unsigned int |
size |
|
) |
| |
◆ SetDelay()
void CRenderManager::SetDelay |
( |
int |
delay | ) |
|
|
inline |
◆ SetVideoSettings()
◆ SetViewMode()
void CRenderManager::SetViewMode |
( |
int |
iViewMode | ) |
|
◆ ShowVideo()
void CRenderManager::ShowVideo |
( |
bool |
enable | ) |
|
◆ StartRenderCapture()
void CRenderManager::StartRenderCapture |
( |
unsigned int |
captureId, |
|
|
unsigned int |
width, |
|
|
unsigned int |
height, |
|
|
int |
flags |
|
) |
| |
◆ Supports() [1/2]
◆ Supports() [2/2]
◆ ToggleDebug()
void CRenderManager::ToggleDebug |
( |
| ) |
|
◆ TriggerUpdateResolution()
void CRenderManager::TriggerUpdateResolution |
( |
float |
fps, |
|
|
int |
width, |
|
|
int |
height, |
|
|
std::string & |
stereomode |
|
) |
| |
◆ UnInit()
void CRenderManager::UnInit |
( |
| ) |
|
◆ UpdateLatencyTweak()
void CRenderManager::UpdateLatencyTweak |
( |
| ) |
|
|
protected |
◆ UpdateResolution()
void CRenderManager::UpdateResolution |
( |
| ) |
|
◆ WaitForBuffer()
int CRenderManager::WaitForBuffer |
( |
volatile std::atomic_bool & |
bStop, |
|
|
int |
timeout = 100 |
|
) |
| |
If player uses buffering it has to wait for a buffer before it calls AddVideoPicture and AddOverlay. It waits for max 50 ms before it returns -1 in case no buffer is available. Player may call this in a loop and decides by itself when it wants to drop a frame.
◆ m_bRenderGUI
bool CRenderManager::m_bRenderGUI = true |
|
protected |
◆ m_bTriggerUpdateResolution
bool CRenderManager::m_bTriggerUpdateResolution = false |
|
protected |
◆ m_captCritSect
◆ m_captures
std::map<unsigned int, CRenderCapture*> CRenderManager::m_captures |
|
protected |
◆ m_captureWaitCounter
unsigned int CRenderManager::m_captureWaitCounter = 0 |
|
protected |
◆ m_clockSync
◆ m_datalock
◆ m_debugRenderer
◆ m_debugTimer
◆ m_dheight
unsigned int CRenderManager::m_dheight = 0 |
|
protected |
◆ m_discard
std::deque<int> CRenderManager::m_discard |
|
protected |
◆ m_displayLatency
double CRenderManager::m_displayLatency = 0.0 |
|
protected |
Display latency updated in PrepareNextRender in DVD clock units, includes m_latencyTweak.
◆ m_dvdClock
◆ m_dwidth
unsigned int CRenderManager::m_dwidth = 0 |
|
protected |
◆ m_flushEvent
CEvent CRenderManager::m_flushEvent |
|
protected |
◆ m_forceNext
bool CRenderManager::m_forceNext = false |
|
protected |
◆ m_fps
float CRenderManager::m_fps = 0.0 |
|
protected |
◆ m_free
std::deque<int> CRenderManager::m_free |
|
protected |
◆ m_hasCaptures
bool CRenderManager::m_hasCaptures = false |
|
protected |
◆ m_height
unsigned int CRenderManager::m_height = 0 |
|
protected |
◆ m_initEvent
CEvent CRenderManager::m_initEvent |
|
protected |
◆ m_lateframes
int CRenderManager::m_lateframes = -1 |
|
protected |
◆ m_latencyTweak
double CRenderManager::m_latencyTweak = 0.0 |
|
protected |
Display latency tweak value from AdvancedSettings for the current refresh rate in milliseconds
◆ m_nextCaptureId
unsigned int CRenderManager::m_nextCaptureId = 0 |
|
staticprotected |
◆ m_NumberBuffers
int CRenderManager::m_NumberBuffers = 0 |
|
protected |
◆ m_orientation
unsigned int CRenderManager::m_orientation = 0 |
|
protected |
◆ m_overlays
◆ m_pConfigPicture
std::unique_ptr<VideoPicture> CRenderManager::m_pConfigPicture |
|
protected |
◆ m_playerPort
◆ m_pRenderer
◆ m_presentevent
◆ m_presentlock
◆ m_presentpts
double CRenderManager::m_presentpts = 0.0 |
|
protected |
◆ m_presentsource
int CRenderManager::m_presentsource = 0 |
|
protected |
◆ m_presentsourcePast
int CRenderManager::m_presentsourcePast = -1 |
|
protected |
◆ m_presentstep
◆ m_presentTimer
◆ m_Queue
◆ m_queued
std::deque<int> CRenderManager::m_queued |
|
protected |
◆ m_QueueSize
int CRenderManager::m_QueueSize = 2 |
|
protected |
◆ m_QueueSkip
int CRenderManager::m_QueueSkip = 0 |
|
protected |
◆ m_renderDebug
bool CRenderManager::m_renderDebug = false |
|
protected |
◆ m_renderedOverlay
bool CRenderManager::m_renderedOverlay = false |
|
protected |
◆ m_renderState
◆ m_showVideo
std::atomic_bool CRenderManager::m_showVideo = {false} |
|
protected |
◆ m_stateEvent
CEvent CRenderManager::m_stateEvent |
|
protected |
◆ m_statelock
◆ m_stereomode
std::string CRenderManager::m_stereomode |
|
protected |
◆ m_videoDelay
std::atomic_int CRenderManager::m_videoDelay = {0} |
|
protected |
◆ m_width
unsigned int CRenderManager::m_width = 0 |
|
protected |
The documentation for this class was generated from the following files: