2017-10-11 59 views
1

有沒有辦法(或破解)讓我使用「自定義」視頻捕獲器來創建VideoTrack併爲其提供幀?使用C++創建帶有「自定義」捕獲器的WebRTC VideoTrack

打造VideoTrack的經典方法是:

得到一個VideoCapturer實例:使用VideoSource

rtc::scoped_refptr<webrtc::VideoTrackSourceInterface> videoSource = peer_connection_factory_->CreateVideoSource(std::move(capturer), NULL); 

創建VideoTrack:

std::unique_ptr<cricket::VideoCapturer> capturer; 

創建一個提供俘獲一個VideoSource :

rtc::scoped_refptr<webrtc::VideoTrackInterface> video_track; 

video_track = peer_connection_factory_->CreateVideoTrack(kVideoLabel, videoSource); 

我想知道是否有一種方法來覆蓋第一步,而不是使用本機,使用自定義捕獲器,以便我可以使用回調提供幀到視頻軌道。這將讓我使用任何視頻源(文件,yuv流...),並非常靈活。

對此有何建議?

這個問題是一個C++參考:Create a WebRTC VideoTrack with a 「custom」 Capturer on Android with libjingle

+0

另一個Java參考:* [將JPEG轉換爲WebRTC](https://www.frozenmountain.com/developers/blog/archive/converting-motion-jpeg-to-webrtc/)* –

+0

完全可以擁有相關問題。讓他們明確列出是很好的。 –

+1

啊好吧我的壞,我不明白,我會馬上編輯。 –

回答

0

我終於找到了一種方法,使我自己的原生C++視頻拍攝。基本上你必須重寫webrtc :: I420BufferInterface和cricket :: VideoCapturer的一些功能。 如果有人想要進一步解釋,請隨時詢問。

相關問題