/
githubmirror
/
obs-studio
Обзор
Документация
Войти
/
githubmirror
/
obs-studio
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
plugins/aja/aja-source.hpp
86 строк
2 KB
Ryan Foster
clang-format: Increase column limit from 80 to 120
05 окт 2024, 01:19
05 окт 2024, 01:19
a1fbf10
Код
Авторство
О чём код?
#pragma once #include "aja-props.hpp" #include "audio-repack.hpp" #include <obs-module.h> #include <ajantv2/includes/ajatypes.h> #include <ajantv2/includes/ntv2testpatterngen.h> #include <ajabase/common/types.h> #include <ajabase/system/thread.h> #include <mutex> class CNTV2Card; class AJASource { public: explicit AJASource(obs_source_t *source); ~AJASource(); void SetCard(CNTV2Card *card); CNTV2Card *GetCard(); void SetOBSSource(obs_source_t *source); obs_source_t *GetOBSSource(void) const; void SetName(const std::string &name); std::string GetName() const; void GenerateTestPattern(NTV2VideoFormat vf, NTV2PixelFormat pf, NTV2TestPatternSelect ps); // Capture Thread stuff static void CaptureThread(AJAThread *thread, void *data); void Activate(bool enable = false); void Deactivate(); bool IsCapturing() const; void SetCapturing(bool capturing); // CardEntry/Device stuff std::string CardID() const; void SetCardID(const std::string &cardID); uint32_t DeviceIndex() const; void SetDeviceIndex(uint32_t index); // Source Props void SetSourceProps(const SourceProps &props); SourceProps GetSourceProps() const; void CacheConnections(const NTV2XptConnections &cnx); void ClearConnections(); bool ReadChannelVPIDs(NTV2Channel channel, VPIDData &vpids); bool ReadWireFormats(NTV2DeviceID device_id, IOSelection io_select, NTV2VideoFormat &vf, NTV2PixelFormat &pf, VPIDDataList &vpids); void ResetVideoBuffer(NTV2VideoFormat vf, NTV2PixelFormat pf); void ResetAudioBuffer(size_t size); NTV2_POINTER mVideoBuffer; NTV2_POINTER mAudioBuffer; private: CNTV2Card *mCard; std::string mSourceName; std::string mCardID; UWord mDeviceIndex; bool mBuffering; bool mIsCapturing; SourceProps mSourceProps; NTV2TestPatternBuffer mTestPattern; AJAThread *mCaptureThread; std::mutex mMutex; obs_source_t *mSource; NTV2XptConnections mCrosspoints; };