13 #ifndef OPENSHOT_DECKLINK_READER_H 14 #define OPENSHOT_DECKLINK_READER_H 49 IDeckLinkInput *deckLinkInput;
50 IDeckLinkDisplayModeIterator *displayModeIterator;
51 IDeckLinkOutput *m_deckLinkOutput;
52 IDeckLinkVideoConversion *m_deckLinkConverter;
53 pthread_mutex_t sleepMutex;
54 pthread_cond_t sleepCond;
55 IDeckLinkIterator *deckLinkIterator;
57 IDeckLinkDisplayMode *displayMode;
58 BMDVideoInputFlags inputFlags;
59 BMDDisplayMode selectedDisplayMode;
60 BMDPixelFormat pixelFormat;
64 bool foundDisplayMode;
68 int g_audioSampleDepth;
71 BMDTimeValue frameRateDuration, frameRateScale;
72 const char *displayModeName;
78 DecklinkReader(
int device,
int video_mode,
int pixel_format,
int channels,
int sample_depth);
92 std::shared_ptr<Frame>
GetFrame(int64_t requested_frame);
99 std::string
Name() {
return "DecklinkReader"; };
102 std::string
Json()
const override;
103 void SetJson(
const std::string value);
void SetJsonValue(const Json::Value root)
Load Json::Value into this object.
Header file for ReaderBase class.
std::shared_ptr< Frame > GetFrame(int64_t requested_frame)
void Open()
Open device and video stream - which is called by the constructor automatically.
unsigned long GetCurrentFrameNumber()
CacheMemory * GetCache()
Get the cache object used by this reader (always returns NULL for this reader)
This abstract class is the base class, used by all readers in libopenshot.
std::string Json() const override
Generate JSON string of this object.
Header file for CacheMemory class.
bool IsOpen()
Determine if reader is open or closed.
Header file for Frame class.
void SetJson(const std::string value)
Load JSON string into this object.
DecklinkReader(int device, int video_mode, int pixel_format, int channels, int sample_depth)
Json::Value JsonValue() const
Generate Json::Value for this object.
std::string Name()
Return the type name of the class.
This namespace is the default namespace for all code in the openshot library.
This class is a memory-based cache manager for Frame objects.
This class uses the Blackmagic Decklink libraries, to open video streams on Blackmagic devices...