aboutsummaryrefslogtreecommitdiff
path: root/Src/Plugins/Input/in_dshow/CWAAudioRenderer.h
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Plugins/Input/in_dshow/CWAAudioRenderer.h')
-rw-r--r--Src/Plugins/Input/in_dshow/CWAAudioRenderer.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/Src/Plugins/Input/in_dshow/CWAAudioRenderer.h b/Src/Plugins/Input/in_dshow/CWAAudioRenderer.h
new file mode 100644
index 00000000..5bfb9f72
--- /dev/null
+++ b/Src/Plugins/Input/in_dshow/CWAAudioRenderer.h
@@ -0,0 +1,30 @@
+#ifndef NULLSOFT_IN_DSHOW_CWAAUDIORENDERER_H
+#define NULLSOFT_IN_DSHOW_CWAAUDIORENDERER_H
+
+#include "audioswitch.h"
+#include "CSampleCB.h"
+
+EXTERN_C GUID DECLSPEC_SELECTANY CLSID_WAAudioRend =
+{ 0x2fa4f053, 0x6d60, 0x4cb0, {0x95, 0x3, 0x8e, 0x89, 0x23, 0x4f, 0xcb, 0xca}};
+
+
+
+class CWAAudioRenderer : public CAudioSwitchRenderer//, CBaseReferenceClock
+{
+public:
+ CWAAudioRenderer();
+ virtual ~CWAAudioRenderer();
+ HRESULT DoRenderSample(IMediaSample *pMediaSample) ;
+ HRESULT CheckMediaType(const CMediaType *pmt);
+ HRESULT SetMediaType(const CMediaType *pmt);
+ CMediaType *GetAcceptedType();
+ HRESULT SetCallback(CSampleCB *Callback);
+ HRESULT EndOfStream(void);
+ HRESULT ShouldDrawSampleNow(IMediaSample *pMediaSample, REFERENCE_TIME *pStartTime, REFERENCE_TIME *pEndTime);
+ HRESULT GetSampleTimes(IMediaSample *pMediaSample, REFERENCE_TIME *pStartTime, REFERENCE_TIME *pEndTime);
+
+private:
+ CSampleCB *m_callback;
+ CMediaType m_mt;
+};
+#endif \ No newline at end of file