WebRTC源码分析之peerconnection

FEC调用关系

TaskQueueLibevent::ThreadMain
TaskQueueLibevent::OnWakeup
webrtc_new_closure_impl::ClosureTask<webrtc::VideoStreamEncoder::OnFrame
VideoStreamEncoder::OnFrame
VideoStreamEncoder::MaybeEncodeVideoFram
VideoStreamEncoder::EncodeVideoFrame
EncoderSimulcastProxy::Encode
LibvpxVp8Encoder::Encode
LibvpxVp8Encoder::GetEncodedPartitions
LibvpxVp8Encoder::GetEncodedPartitions
VideoStreamEncoder::OnEncodedImage
VideoSendStreamImpl::OnEncodedImage
RtpVideoSender::OnEncodedImage
RTPSenderVideo SendEncodedImage ()
RTPSenderVideo::SendVideo()
UlpfecGenerator::AddPacketAndGenerateFec
ForwardErrorCorrection::EncodeFec()

NACK调用关系

Thread::Start()
Thread::PreRun()
Thread::Run()
Thread::ProcessMessages()
Thread::Dispatch()
AsyncInvoker::OnMessage()
BaseChannel::OnRtpPacket()
WebRtcVideoChannel::OnPacketReceived()
internal::Call::DeliverPacket()
internal::Call::DeliverRtp()
RtpStreamReceiverController::OnRtpPacket()
RtpDemuxer::OnRtpPacket()
RtpVideoStreamReceiver::OnRtpPacket()
RtpVideoStreamReceiver::ReceivePacker()
RtpVideoStreamReceiver::ParseAndHandleEncapsulatingHeader()
UlpfecReceiverImpl::ProcessReceivedFec()
RtpVideoStreamReceiver::OnRecoveredPacket()
RtpVideoStreamReceiver::ReceivePacket()
RtpVideoStreamReceiver::OnReceivedPayloadData()
NackModule::OnReceivedPacket()
NackModule::AddPacketsToNack() 

 Video 编码传输调用过程

VideoChannel::SetLocalContent_w()
BaseChannel::UpdateLocalStreams_w()
WebRtcVideoChannel::AddSendStream()
WebRtcVideoSendStream::WebRtcVideoSendStream()
WebRtcVideoSendStream::SetCodec()
WebRtcVideoSendStream::RecreateWebRtcStream() 
Call::CreateVideoSendStream()
VideoSendStream::VideoSendStream()
VideoSendStreamImpl::VideoSendStreamImpl()
RtpTransportControllerSend::CreateRtpVideoSender() 

猜你喜欢

转载自blog.csdn.net/qq_31231915/article/details/122366673