audio 接收rtcp nack,怎么发送需要重传的数据
作者:LanPZzzz
文章目录
1. 流程如下:
从socket 中获取数据到下面DeliverRtcp 的部分,请查看audio rtcp 接收数据
->AudioReceiveStream::DeliverRtcp (audio\audio_receive_stream.cc 307)
->… -> RTCPReceiver::TriggerCallbacksFromRtcpPacket(modules\rtp_rtcp\source\rtcp_receiver.cc 949)
-> ModuleRtpRtcpImpl::OnReceivedNack (modules\rtp_rtcp\source\rtp_rtcp_impl.cc 828)
-> RTPSender::OnReceivedNack (modules\rtp_rtcp\source\rtp_sender.cc 715)
-> RTPSender::ReSendPacket (modules\rtp_rtcp\source\rtp_sender.cc 634)
-> PacedSender::InsertPacket (modules\pacing\paced_sender.cc 185)
-> RoundRobinPacketQueue::Push (modules\pacing\round_robin_packet_queue.cc 28) 放入到 streams_->packet_queue 中
->
->
->
->
->
->
->
2. 代码 RTPSender::ReSendPacket,最终存入到 packet_queue 中
int32_t RTPSender::ReSendPacket(uint16_t packet_id) {
先从历史数据中获取当前packer_id 的PacketState,及info
// Try to find packet