|
|
@ -1597,8 +1597,10 @@ srs_error_t SrsRtcRecvTrack::on_nack(SrsRtpPacket2* pkt)
|
|
|
|
|
|
|
|
|
|
|
|
// insert into video_queue and audio_queue
|
|
|
|
// insert into video_queue and audio_queue
|
|
|
|
rtp_queue_->set(seq, pkt->copy());
|
|
|
|
rtp_queue_->set(seq, pkt->copy());
|
|
|
|
|
|
|
|
|
|
|
|
// send_nack
|
|
|
|
// send_nack
|
|
|
|
session_->check_send_nacks(nack_receiver_, ssrc);
|
|
|
|
uint32_t sent_nacks = 0;
|
|
|
|
|
|
|
|
session_->check_send_nacks(nack_receiver_, ssrc, sent_nacks);
|
|
|
|
|
|
|
|
|
|
|
|
return err;
|
|
|
|
return err;
|
|
|
|
}
|
|
|
|
}
|
|
|
@ -1621,6 +1623,9 @@ srs_error_t SrsRtcAudioRecvTrack::on_rtp(SrsRtcStream* source, SrsRtpPacket2* pk
|
|
|
|
{
|
|
|
|
{
|
|
|
|
srs_error_t err = srs_success;
|
|
|
|
srs_error_t err = srs_success;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// connection level statistic
|
|
|
|
|
|
|
|
session_->stat_->nn_in_audios++;
|
|
|
|
|
|
|
|
|
|
|
|
if (source) {
|
|
|
|
if (source) {
|
|
|
|
if ((err = source->on_rtp(pkt)) != srs_success) {
|
|
|
|
if ((err = source->on_rtp(pkt)) != srs_success) {
|
|
|
|
return srs_error_wrap(err, "source on rtp");
|
|
|
|
return srs_error_wrap(err, "source on rtp");
|
|
|
@ -1632,8 +1637,6 @@ srs_error_t SrsRtcAudioRecvTrack::on_rtp(SrsRtcStream* source, SrsRtpPacket2* pk
|
|
|
|
return srs_error_wrap(err, "on nack");
|
|
|
|
return srs_error_wrap(err, "on nack");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
session_->stat_->nn_in_audios++;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return err;
|
|
|
|
return err;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -1651,6 +1654,9 @@ srs_error_t SrsRtcVideoRecvTrack::on_rtp(SrsRtcStream* source, SrsRtpPacket2* pk
|
|
|
|
{
|
|
|
|
{
|
|
|
|
srs_error_t err = srs_success;
|
|
|
|
srs_error_t err = srs_success;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// connection level statistic
|
|
|
|
|
|
|
|
session_->stat_->nn_in_videos++;
|
|
|
|
|
|
|
|
|
|
|
|
pkt->frame_type = SrsFrameTypeVideo;
|
|
|
|
pkt->frame_type = SrsFrameTypeVideo;
|
|
|
|
|
|
|
|
|
|
|
|
if (source) {
|
|
|
|
if (source) {
|
|
|
@ -1672,8 +1678,6 @@ srs_error_t SrsRtcVideoRecvTrack::on_rtp(SrsRtcStream* source, SrsRtpPacket2* pk
|
|
|
|
return srs_error_wrap(err, "on nack");
|
|
|
|
return srs_error_wrap(err, "on nack");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
session_->stat_->nn_in_videos++;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return err;
|
|
|
|
return err;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|