#ifndef TGCALLS_VIDEO_CAPTURER_INTERFACE_IMPL_H #define TGCALLS_VIDEO_CAPTURER_INTERFACE_IMPL_H #include "VideoCapturerInterface.h" #include "api/media_stream_interface.h" namespace tgcalls { class VideoCapturerInterfaceImpl final : public VideoCapturerInterface { public: VideoCapturerInterfaceImpl(rtc::scoped_refptr source, bool useFrontCamera, std::function stateUpdated); ~VideoCapturerInterfaceImpl() override; void setState(VideoState state) override; void setPreferredCaptureAspectRatio(float aspectRatio) override; void setUncroppedOutput(std::shared_ptr> sink) override; private: rtc::scoped_refptr _source; std::shared_ptr> _uncroppedSink; std::function _stateUpdated; }; } // namespace tgcalls #endif