aboutsummaryrefslogtreecommitdiff
path: root/sys/decklink/capture.h
blob: c501616d7d12020fa54b19b865023472d753851a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef __CAPTURE_H__
#define __CAPTURE_H__

#include "gstdecklink.h"

class DeckLinkCaptureDelegate : public IDeckLinkInputCallback
{
  public:
    DeckLinkCaptureDelegate();
    ~DeckLinkCaptureDelegate();

    virtual HRESULT STDMETHODCALLTYPE QueryInterface(REFIID iid, LPVOID *ppv) { return E_NOINTERFACE; }
    virtual ULONG STDMETHODCALLTYPE AddRef(void);
    virtual ULONG STDMETHODCALLTYPE  Release(void);
    virtual HRESULT STDMETHODCALLTYPE VideoInputFormatChanged(BMDVideoInputFormatChangedEvents, IDeckLinkDisplayMode*, BMDDetectedVideoInputFormatFlags);
    virtual HRESULT STDMETHODCALLTYPE VideoInputFrameArrived(IDeckLinkVideoInputFrame*, IDeckLinkAudioInputPacket*);

    void *priv;

  private:
    ULONG m_refCount;
    GMutex *m_mutex;
};

#endif