Reprint Annotated Source Http://blog.csdn.net/wanghorse
JNICallProvidecameraframe videocaptureandroid:: Onincomingframe Videocaptureimpl:: IncomingframeRequest memory, conversion layerI420 Videocaptureimpl::D elivercapturedframeCalculate timestampViecapturer:: Onincomingcapturedframe Overuseframedetector:: framecapturedCopyFrameWhy???Viecapturer:: Viecaptureprocess Viecapturer::D eliveri420frame Vieframeproviderbase::D eliverframeTraverse all the registered watchVieencoder::D eliverframe encodePre-preprocessing (callback processing)Videocodingmoduleimpl:: Addvideoframe Videosender:: Addvideoframe Vcmgenericencoder:: Encode Vp8encoderimpl:: EncodeCodingVp8encoderimpl:: Getencodedpartitions Encodedimagecallbackwrapper:: Encoded Vcmencodedframecallback:: Encoded Vieencoder:: SendData Modulertprtcpimpl:: Sendoutgoingdata Rtpsender:: Sendoutgoingdata Rtpsendervideo:: Sendvideo Rtpsendervideo:: SendUnpacking,RTPGroup PackagesRtpsendervideo:: Sendvideopacket Rtpsender:: Sendtonetwork FEC
WEBRTCDEMO.APK Code Daytime (vi): Video Sending process