|
#pragma once
#include "D2DRenderer.h"
#include "IVideoRenderer.h"
#include "VideoWindow.h"
#include "Dvdmedia.h"
#include "ColorSpaceConverter.h"
class CD2DVideoRender : public CBaseVideoRenderer, public IVideoRenderer
{
public:
DECLARE_IUNKNOWN;
CD2DVideoRender(LPUNKNOWN pUnk, HRESULT* phr);
virtual ~CD2DVideoRender(void);
virtual HRESULT DoRenderSample(IMediaSample *pMediaSample);
virtual HRESULT CheckMediaType(const CMediaType *pmt);
virtual HRESULT SetMediaType(const CMediaType *pmt);
virtual HRESULT StartStreaming();
static CUnknown * WINAPI CreateInstance(LPUNKNOWN lpunk, HRESULT *phr);
STDMETHODIMP NonDelegatingQueryInterface(REFIID riid, void **ppv);
STDMETHODIMP SetVideoWindow(HWND hWnd);
STDMETHOD_(void, SetDisplayMode)(DisplayMode);
STDMETHOD_(DisplayMode, GetDisplayMode)(void);
void CreateDefaultWindow();
private:
HWND m_hWnd;
CD2DRenderer* m_renderer;
HANDLE m_event;
BITMAPINFOHEADER m_bmpInfo;
CMediaType m_mediaType;
CColorSpaceConverter* m_converter;
};
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.