#ifndef TGCALLS_VIDEO_CAPTURER_TRACK_SOURCE_H #define TGCALLS_VIDEO_CAPTURER_TRACK_SOURCE_H #include "pc/video_track_source.h" #include "VideoCameraCapturer.h" namespace tgcalls { class VideoCameraCapturer; class VideoCapturerTrackSource : public webrtc::VideoTrackSource { private: struct CreateTag { }; public: static rtc::scoped_refptr Create(); VideoCapturerTrackSource( const CreateTag &, std::unique_ptr capturer); VideoCameraCapturer *capturer() const; private: rtc::VideoSourceInterface *source() override; std::unique_ptr _capturer; }; } // namespace tgcalls #endif