CWAVideoRenderer.h 928 B

1234567891011121314151617181920212223242526272829303132
  1. #ifndef NULLSOFT_IN_DSHOW_CWAVIDEORENDERERH
  2. #define NULLSOFT_IN_DSHOW_CWAVIDEORENDERERH
  3. #include "audioswitch.h"
  4. #include "CSampleCB.h"
  5. EXTERN_C GUID DECLSPEC_SELECTANY CLSID_WAVideoRend =
  6. {0x2fa4f053, 0x6d60, 0x4cb0, {0x95, 0x3, 0x8e, 0x89, 0x23, 0x4f, 0xca, 0xca}};
  7. class CWAVideoRenderer : public CBaseRenderer
  8. {
  9. public:
  10. CWAVideoRenderer();
  11. virtual ~CWAVideoRenderer();
  12. HRESULT DoRenderSample(IMediaSample *pMediaSample);
  13. HRESULT CheckMediaType(const CMediaType *pmt);
  14. HRESULT SetMediaType(const CMediaType *pmt);
  15. CMediaType *GetAcceptedType();
  16. HRESULT SetCallback(CSampleCB *Callback);
  17. HRESULT ShouldDrawSampleNow(IMediaSample *pMediaSample, REFERENCE_TIME *pStartTime, REFERENCE_TIME *pEndTime);
  18. HRESULT GetSampleTimes(IMediaSample *pMediaSample, REFERENCE_TIME *pStartTime, REFERENCE_TIME *pEndTime);
  19. HRESULT EndOfStream(void);
  20. private:
  21. CSampleCB *m_callback;
  22. CMediaType m_mt;
  23. int m_reent;
  24. };
  25. #endif