启用BUNDLE,音视频共用同一个RtpTransport
RtpTransport::OnReadPacket
|
SrtpTransport::OnRtpPacketReceived
|
RtpTransport::DemuxPacket
|
RtpDemuxer::OnRtpPacket 属于RtpTransport的成员变量,其内部的 sink_by_ssrc_ 存放所有音视频
Channel,这个RtpDemuxer的作用是根据packet的ssrc查找对应的Channel
|
BaseChannel::OnRtpPacket BaseChannel的真实类型是VideoChannel或VoiceChannel,BaseChannel是
他们的基类
|
BaseChannel::OnPacketReceived
|
切换到工作线程进行数据处理
|
BaseChannel::ProcessPacket
|
media_channel_->OnPacketReceived
音频时,BaseChannel为VoiceChannel,media_channel_类型为WebRtcVoiceMediaChannel,故:
WebRtcVoiceMediaChannel::OnPacketReceived
|
Call::DeliverPacket
|
Call::DeliverRtp
|
RtpStreamReceiverController::OnRtpPacket
|
RtpDemuxer::OnRtpPacket
|
voe::ChannelProxy::OnRtpPacket
|
voe::Channel::OnRtpPacket
|
voe::Channel::ReceivePacket
|
voe::Channel::OnReceivedPayloadData
|
AudioCodingModuleImpl::IncomingPacket
|
AcmReceiver::InsertPacket
|
NetEqlmpl::InsertPacket
|
NetEqlmpl::InsertPacketInternal
视频时,BaseChannel为VideoChannel,media_channel_类型为WebRtcVideoMediaChannel,故:
WebRtcVideoChannel::OnPacketReceived
|
Call::DeliverPacket
|
Call::DeliverRtp
|
RtpStreamReceiverController::OnRtpPacket
|
RtpDemuxer::OnRtpPacket
|
RtpVideoStreamReceiver::OnRtpPacket
|
RtpVideoStreamReceiver::ReceivePacket
|
RtpVideoStreamReceiver::OnReceivedPayloadData
|
video_coding::PacketBuffer::InsertPacket