From 45f35e3ec8f96362251d1dbe3911bd793f224e99 Mon Sep 17 00:00:00 2001 From: winlin Date: Sun, 3 May 2020 17:43:38 +0800 Subject: [PATCH] Refactor RTC publisher, rename pkt to frame --- trunk/src/app/srs_app_rtc_conn.cpp | 32 +++++++++++++++--------------- trunk/src/app/srs_app_rtc_conn.hpp | 4 ++-- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/trunk/src/app/srs_app_rtc_conn.cpp b/trunk/src/app/srs_app_rtc_conn.cpp index 2cf983012..35ae6fef1 100644 --- a/trunk/src/app/srs_app_rtc_conn.cpp +++ b/trunk/src/app/srs_app_rtc_conn.cpp @@ -1936,22 +1936,22 @@ srs_error_t SrsRtcPublisher::on_audio(SrsRtpPacket2* pkt) audio_queue_->collect_frames(audio_nack_, frames); for (size_t i = 0; i < frames.size(); ++i) { - SrsRtpPacket2* pkt = frames[i]; + SrsRtpPacket2* frame = frames[i]; // TODO: FIXME: Check error. - collect_audio_frame(pkt); + on_audio_frame(frame); - srs_freep(pkt); + srs_freep(frame); } return err; } -srs_error_t SrsRtcPublisher::collect_audio_frame(SrsRtpPacket2* pkt) +srs_error_t SrsRtcPublisher::on_audio_frame(SrsRtpPacket2* frame) { srs_error_t err = srs_success; - SrsRtpRawPayload* payload = dynamic_cast(pkt->payload); + SrsRtpRawPayload* payload = dynamic_cast(frame->payload); if (!payload) { return srs_error_new(ERROR_RTC_RTP_MUXER, "OPUS payload"); @@ -1965,7 +1965,7 @@ srs_error_t SrsRtcPublisher::collect_audio_frame(SrsRtpPacket2* pkt) SrsMessageHeader header; header.message_type = RTMP_MSG_AudioMessage; // TODO: FIXME: Maybe the tbn is not 90k. - header.timestamp = pkt->rtp_header.get_timestamp() / 90; + header.timestamp = frame->rtp_header.get_timestamp() / 90; SrsSharedPtrMessage msg; // TODO: FIXME: Check error. @@ -2000,31 +2000,31 @@ srs_error_t SrsRtcPublisher::on_video(SrsRtpPacket2* pkt) video_queue_->collect_frames(video_nack_, frames); for (size_t i = 0; i < frames.size(); ++i) { - SrsRtpPacket2* pkt = frames[i]; + SrsRtpPacket2* frame = frames[i]; // TODO: FIXME: Check error. - collect_video_frame(pkt); + on_video_frame(frame); - srs_freep(pkt); + srs_freep(frame); } return srs_success; } -srs_error_t SrsRtcPublisher::collect_video_frame(SrsRtpPacket2* pkt) +srs_error_t SrsRtcPublisher::on_video_frame(SrsRtpPacket2* frame) { srs_error_t err = srs_success; - int64_t timestamp = pkt->rtp_header.get_timestamp(); + int64_t timestamp = frame->rtp_header.get_timestamp(); // No FU-A, because we convert it to RAW RTP packet. - if (pkt->nalu_type == (SrsAvcNaluType)kFuA) { + if (frame->nalu_type == (SrsAvcNaluType)kFuA) { return srs_error_new(ERROR_RTC_RTP_MUXER, "invalid FU-A"); } // For STAP-A, it must be SPS/PPS, and only one packet. - if (pkt->nalu_type == (SrsAvcNaluType)kStapA) { - SrsRtpSTAPPayload* payload = dynamic_cast(pkt->payload); + if (frame->nalu_type == (SrsAvcNaluType)kStapA) { + SrsRtpSTAPPayload* payload = dynamic_cast(frame->payload); if (!payload) { return srs_error_new(ERROR_RTC_RTP_MUXER, "STAP-A payload"); } @@ -2077,7 +2077,7 @@ srs_error_t SrsRtcPublisher::collect_video_frame(SrsRtpPacket2* pkt) } // For RAW NALU, should be one RAW packet. - SrsRtpRawPayload* payload = dynamic_cast(pkt->payload); + SrsRtpRawPayload* payload = dynamic_cast(frame->payload); if (!payload) { return srs_error_new(ERROR_RTC_RTP_MUXER, "RAW-NALU payload"); } @@ -2092,7 +2092,7 @@ srs_error_t SrsRtcPublisher::collect_video_frame(SrsRtpPacket2* pkt) char* data = new char[nn_payload]; SrsBuffer buf(data, nn_payload); - if (pkt->nalu_type == SrsAvcNaluTypeIDR) { + if (frame->nalu_type == SrsAvcNaluTypeIDR) { buf.write_1bytes(0x17); // Keyframe. srs_trace("RTC got IDR %d bytes", nn_payload); } else { diff --git a/trunk/src/app/srs_app_rtc_conn.hpp b/trunk/src/app/srs_app_rtc_conn.hpp index 2c3474b46..ae83274ac 100644 --- a/trunk/src/app/srs_app_rtc_conn.hpp +++ b/trunk/src/app/srs_app_rtc_conn.hpp @@ -288,9 +288,9 @@ public: virtual void on_before_decode_payload(SrsRtpPacket2* pkt, SrsBuffer* buf, ISrsCodec** ppayload); private: srs_error_t on_audio(SrsRtpPacket2* pkt); - srs_error_t collect_audio_frame(SrsRtpPacket2* pkt); + srs_error_t on_audio_frame(SrsRtpPacket2* frame); srs_error_t on_video(SrsRtpPacket2* pkt); - srs_error_t collect_video_frame(SrsRtpPacket2* pkt); + srs_error_t on_video_frame(SrsRtpPacket2* frame); public: void request_keyframe(); // interface ISrsHourGlass