diff options
author | Aleksoid <aleksoid@users.sourceforge.net> | 2011-04-28 09:02:31 +0400 |
---|---|---|
committer | Aleksoid <aleksoid@users.sourceforge.net> | 2011-04-28 09:02:31 +0400 |
commit | caabd5eb9c8916eea6be4441b4fdea1d066242fe (patch) | |
tree | e452cce2a6e19918c51826d981221fddabb4a09f /src/filters/renderer/VideoRenderers | |
parent | c5445b20e81eb5ce3a32c701cb3e0341144c0bf3 (diff) |
Add : Decoder info to EVR statistic;
git-svn-id: https://mpc-hc.svn.sourceforge.net/svnroot/mpc-hc/trunk@3053 10f7b99b-c216-0410-bff0-8a66a9350fd8
Diffstat (limited to 'src/filters/renderer/VideoRenderers')
3 files changed, 18 insertions, 4 deletions
diff --git a/src/filters/renderer/VideoRenderers/DX9AllocatorPresenter.cpp b/src/filters/renderer/VideoRenderers/DX9AllocatorPresenter.cpp index 546f8fe0b..63eb726c1 100644 --- a/src/filters/renderer/VideoRenderers/DX9AllocatorPresenter.cpp +++ b/src/filters/renderer/VideoRenderers/DX9AllocatorPresenter.cpp @@ -70,6 +70,7 @@ CDX9AllocatorPresenter::CDX9AllocatorPresenter(HWND hWnd, bool bFullscreen, HRES , m_hVSyncThread(NULL)
, m_hEvtQuit(NULL)
, m_bIsFullscreen(bFullscreen)
+ , m_Decoder(_T(""))
{
HINSTANCE hDll;
@@ -2192,15 +2193,21 @@ void CDX9AllocatorPresenter::DrawStats() DrawText(rc, strText, 1);
OffsetRect (&rc, 0, TextHeight);
+ strText.Format(L"DirectX SDK : %d", GetRenderersData()->GetDXSdkRelease());
+ DrawText(rc, strText, 1);
+ OffsetRect (&rc, 0, TextHeight);
+
if(m_D3D9Device != _T("")) {
strText = "Render device: " + m_D3D9Device;
DrawText(rc, strText, 1);
OffsetRect (&rc, 0, TextHeight);
}
- strText.Format(L"DirectX SDK : %d", GetRenderersData()->GetDXSdkRelease());
- DrawText(rc, strText, 1);
- OffsetRect (&rc, 0, TextHeight);
+ if(m_Decoder != _T("")) {
+ strText = "Decoder : " + m_Decoder;
+ DrawText(rc, strText, 1);
+ OffsetRect (&rc, 0, TextHeight);
+ }
for (int i=0; i<6; i++) {
if (m_strStatsMsg[i][0]) {
diff --git a/src/filters/renderer/VideoRenderers/DX9AllocatorPresenter.h b/src/filters/renderer/VideoRenderers/DX9AllocatorPresenter.h index bfce86457..cd72b83ac 100644 --- a/src/filters/renderer/VideoRenderers/DX9AllocatorPresenter.h +++ b/src/filters/renderer/VideoRenderers/DX9AllocatorPresenter.h @@ -296,6 +296,8 @@ namespace DSObjects CString m_D3D9Device;
int m_nPCIVendor;
+ CString m_Decoder;
+
public:
CDX9AllocatorPresenter(HWND hWnd, bool bFullscreen, HRESULT& hr, bool bIsEVR, CString &_Error);
~CDX9AllocatorPresenter();
diff --git a/src/filters/renderer/VideoRenderers/EVRAllocatorPresenter.cpp b/src/filters/renderer/VideoRenderers/EVRAllocatorPresenter.cpp index e16c53c3f..08ef1bd3f 100644 --- a/src/filters/renderer/VideoRenderers/EVRAllocatorPresenter.cpp +++ b/src/filters/renderer/VideoRenderers/EVRAllocatorPresenter.cpp @@ -1576,10 +1576,15 @@ void CEVRAllocatorPresenter::GetMixerThread() if (
SUCCEEDED (m_pOuterEVR->FindPin(L"EVR Input0", &pPin)) &&
SUCCEEDED (pPin->ConnectionMediaType(&mt)) ) {
+
ExtractAvgTimePerFrame (&mt, m_rtTimePerFrame);
m_bInterlaced = ExtractInterlaced(&mt);
-
+
+ CComPtr<IPin> pPinTo;
+ if(SUCCEEDED(pPin->ConnectedTo(&pPinTo)) && pPinTo) {
+ m_Decoder = GetFilterName(GetFilterFromPin(pPinTo));
+ }
}
// If framerate not set by Video Decoder choose 23.97...
if (m_rtTimePerFrame == 0) {
|