mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
RTC: Remove dead code
This commit is contained in:
parent
00b0e22402
commit
81dddcbd93
3 changed files with 0 additions and 145 deletions
|
@ -366,19 +366,6 @@ srs_error_t SrsRtcPLIWorker::cycle()
|
||||||
return err;
|
return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
SrsRtcPlayStreamStatistic::SrsRtcPlayStreamStatistic()
|
|
||||||
{
|
|
||||||
nn_rtp_pkts = 0;
|
|
||||||
nn_audios = nn_extras = 0;
|
|
||||||
nn_videos = nn_samples = 0;
|
|
||||||
nn_bytes = nn_rtp_bytes = 0;
|
|
||||||
nn_padding_bytes = nn_paddings = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
SrsRtcPlayStreamStatistic::~SrsRtcPlayStreamStatistic()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
SrsRtcPlayStream::SrsRtcPlayStream(SrsRtcConnection* s, const SrsContextId& cid)
|
SrsRtcPlayStream::SrsRtcPlayStream(SrsRtcConnection* s, const SrsContextId& cid)
|
||||||
{
|
{
|
||||||
cid_ = cid;
|
cid_ = cid;
|
||||||
|
@ -593,47 +580,6 @@ srs_error_t SrsRtcPlayStream::cycle()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
srs_error_t SrsRtcPlayStream::send_packets(SrsRtcStream* source, const vector<SrsRtpPacket2*>& pkts, SrsRtcPlayStreamStatistic& info)
|
|
||||||
{
|
|
||||||
srs_error_t err = srs_success;
|
|
||||||
|
|
||||||
// Covert kernel messages to RTP packets.
|
|
||||||
for (int i = 0; i < (int)pkts.size(); i++) {
|
|
||||||
SrsRtpPacket2* pkt = pkts[i];
|
|
||||||
|
|
||||||
// TODO: FIXME: Maybe refine for performance issue.
|
|
||||||
if (!audio_tracks_.count(pkt->header.get_ssrc()) && !video_tracks_.count(pkt->header.get_ssrc())) {
|
|
||||||
srs_warn("ssrc %u not found", pkt->header.get_ssrc());
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
// For audio, we transcoded AAC to opus in extra payloads.
|
|
||||||
if (pkt->is_audio()) {
|
|
||||||
// TODO: FIXME: Any simple solution?
|
|
||||||
SrsRtcAudioSendTrack* audio_track = audio_tracks_[pkt->header.get_ssrc()];
|
|
||||||
|
|
||||||
if ((err = audio_track->on_rtp(pkt)) != srs_success) {
|
|
||||||
return srs_error_wrap(err, "audio track, SSRC=%u, SEQ=%u", pkt->header.get_ssrc(), pkt->header.get_sequence());
|
|
||||||
}
|
|
||||||
|
|
||||||
// TODO: FIXME: Padding audio to the max payload in RTP packets.
|
|
||||||
} else {
|
|
||||||
// TODO: FIXME: Any simple solution?
|
|
||||||
SrsRtcVideoSendTrack* video_track = video_tracks_[pkt->header.get_ssrc()];
|
|
||||||
|
|
||||||
if ((err = video_track->on_rtp(pkt)) != srs_success) {
|
|
||||||
return srs_error_wrap(err, "video track, SSRC=%u, SEQ=%u", pkt->header.get_ssrc(), pkt->header.get_sequence());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Detail log, should disable it in release version.
|
|
||||||
srs_info("RTC: Update PT=%u, SSRC=%#x, Time=%u, %u bytes", pkt->header.get_payload_type(), pkt->header.get_ssrc(),
|
|
||||||
pkt->header.get_timestamp(), pkt->nb_bytes());
|
|
||||||
}
|
|
||||||
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
|
|
||||||
srs_error_t SrsRtcPlayStream::send_packet(SrsRtpPacket2* pkt)
|
srs_error_t SrsRtcPlayStream::send_packet(SrsRtpPacket2* pkt)
|
||||||
{
|
{
|
||||||
srs_error_t err = srs_success;
|
srs_error_t err = srs_success;
|
||||||
|
@ -2508,60 +2454,6 @@ void SrsRtcConnection::simulate_player_drop_packet(SrsRtpHeader* h, int nn_bytes
|
||||||
nn_simulate_player_nack_drop--;
|
nn_simulate_player_nack_drop--;
|
||||||
}
|
}
|
||||||
|
|
||||||
srs_error_t SrsRtcConnection::do_send_packets(const std::vector<SrsRtpPacket2*>& pkts, SrsRtcPlayStreamStatistic& info)
|
|
||||||
{
|
|
||||||
srs_error_t err = srs_success;
|
|
||||||
|
|
||||||
for (int i = 0; i < (int)pkts.size(); i++) {
|
|
||||||
SrsRtpPacket2* pkt = pkts.at(i);
|
|
||||||
|
|
||||||
// For this message, select the first iovec.
|
|
||||||
iovec* iov = cache_iov_;
|
|
||||||
iov->iov_len = kRtpPacketSize;
|
|
||||||
cache_buffer_->skip(-1 * cache_buffer_->pos());
|
|
||||||
|
|
||||||
// Marshal packet to bytes in iovec.
|
|
||||||
if (true) {
|
|
||||||
if ((err = pkt->encode(cache_buffer_)) != srs_success) {
|
|
||||||
return srs_error_wrap(err, "encode packet");
|
|
||||||
}
|
|
||||||
iov->iov_len = cache_buffer_->pos();
|
|
||||||
}
|
|
||||||
|
|
||||||
// Cipher RTP to SRTP packet.
|
|
||||||
if (true) {
|
|
||||||
int nn_encrypt = (int)iov->iov_len;
|
|
||||||
if ((err = transport_->protect_rtp(iov->iov_base, &nn_encrypt)) != srs_success) {
|
|
||||||
return srs_error_wrap(err, "srtp protect");
|
|
||||||
}
|
|
||||||
iov->iov_len = (size_t)nn_encrypt;
|
|
||||||
}
|
|
||||||
|
|
||||||
info.nn_rtp_bytes += (int)iov->iov_len;
|
|
||||||
|
|
||||||
// When we send out a packet, increase the stat counter.
|
|
||||||
info.nn_rtp_pkts++;
|
|
||||||
|
|
||||||
// For NACK simulator, drop packet.
|
|
||||||
if (nn_simulate_player_nack_drop) {
|
|
||||||
simulate_player_drop_packet(&pkt->header, (int)iov->iov_len);
|
|
||||||
iov->iov_len = 0;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
++_srs_pps_srtps->sugar;
|
|
||||||
|
|
||||||
// TODO: FIXME: Handle error.
|
|
||||||
sendonly_skt->sendto(iov->iov_base, iov->iov_len, 0);
|
|
||||||
|
|
||||||
// Detail log, should disable it in release version.
|
|
||||||
srs_info("RTC: SEND PT=%u, SSRC=%#x, SEQ=%u, Time=%u, %u/%u bytes", pkt->header.get_payload_type(), pkt->header.get_ssrc(),
|
|
||||||
pkt->header.get_sequence(), pkt->header.get_timestamp(), pkt->nb_bytes(), iov->iov_len);
|
|
||||||
}
|
|
||||||
|
|
||||||
return err;
|
|
||||||
}
|
|
||||||
|
|
||||||
srs_error_t SrsRtcConnection::do_send_packet(SrsRtpPacket2* pkt)
|
srs_error_t SrsRtcConnection::do_send_packet(SrsRtpPacket2* pkt)
|
||||||
{
|
{
|
||||||
srs_error_t err = srs_success;
|
srs_error_t err = srs_success;
|
||||||
|
|
|
@ -209,38 +209,6 @@ public:
|
||||||
virtual srs_error_t cycle();
|
virtual srs_error_t cycle();
|
||||||
};
|
};
|
||||||
|
|
||||||
// A group of RTP packets for outgoing(send to players).
|
|
||||||
class SrsRtcPlayStreamStatistic
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
// The total bytes of AVFrame packets.
|
|
||||||
int nn_bytes;
|
|
||||||
// The total bytes of RTP packets.
|
|
||||||
int nn_rtp_bytes;
|
|
||||||
// The total padded bytes.
|
|
||||||
int nn_padding_bytes;
|
|
||||||
public:
|
|
||||||
// The RTP packets send out by sendmmsg or sendmsg. Note that if many packets group to
|
|
||||||
// one msghdr by GSO, it's only one RTP packet, because we only send once.
|
|
||||||
int nn_rtp_pkts;
|
|
||||||
// For video, the samples or NALUs.
|
|
||||||
// TODO: FIXME: Remove it because we may don't know.
|
|
||||||
int nn_samples;
|
|
||||||
// For audio, the generated extra audio packets.
|
|
||||||
// For example, when transcoding AAC to opus, may many extra payloads for a audio.
|
|
||||||
// TODO: FIXME: Remove it because we may don't know.
|
|
||||||
int nn_extras;
|
|
||||||
// The original audio messages.
|
|
||||||
int nn_audios;
|
|
||||||
// The original video messages.
|
|
||||||
int nn_videos;
|
|
||||||
// The number of padded packet.
|
|
||||||
int nn_paddings;
|
|
||||||
public:
|
|
||||||
SrsRtcPlayStreamStatistic();
|
|
||||||
virtual ~SrsRtcPlayStreamStatistic();
|
|
||||||
};
|
|
||||||
|
|
||||||
// A RTC play stream, client pull and play stream from SRS.
|
// A RTC play stream, client pull and play stream from SRS.
|
||||||
class SrsRtcPlayStream : virtual public ISrsCoroutineHandler, virtual public ISrsReloadHandler
|
class SrsRtcPlayStream : virtual public ISrsCoroutineHandler, virtual public ISrsReloadHandler
|
||||||
, virtual public ISrsHourGlass, virtual public ISrsRtcPLIWorkerHandler
|
, virtual public ISrsHourGlass, virtual public ISrsRtcPLIWorkerHandler
|
||||||
|
@ -268,8 +236,6 @@ private:
|
||||||
private:
|
private:
|
||||||
// Whether palyer started.
|
// Whether palyer started.
|
||||||
bool is_started;
|
bool is_started;
|
||||||
// The statistic for consumer to send packets to player.
|
|
||||||
SrsRtcPlayStreamStatistic info;
|
|
||||||
public:
|
public:
|
||||||
SrsRtcPlayStream(SrsRtcConnection* s, const SrsContextId& cid);
|
SrsRtcPlayStream(SrsRtcConnection* s, const SrsContextId& cid);
|
||||||
virtual ~SrsRtcPlayStream();
|
virtual ~SrsRtcPlayStream();
|
||||||
|
@ -286,7 +252,6 @@ public:
|
||||||
public:
|
public:
|
||||||
virtual srs_error_t cycle();
|
virtual srs_error_t cycle();
|
||||||
private:
|
private:
|
||||||
srs_error_t send_packets(SrsRtcStream* source, const std::vector<SrsRtpPacket2*>& pkts, SrsRtcPlayStreamStatistic& info);
|
|
||||||
srs_error_t send_packet(SrsRtpPacket2* pkt);
|
srs_error_t send_packet(SrsRtpPacket2* pkt);
|
||||||
public:
|
public:
|
||||||
// Directly set the status of track, generally for init to set the default value.
|
// Directly set the status of track, generally for init to set the default value.
|
||||||
|
@ -551,7 +516,6 @@ public:
|
||||||
// Simulate the NACK to drop nn packets.
|
// Simulate the NACK to drop nn packets.
|
||||||
void simulate_nack_drop(int nn);
|
void simulate_nack_drop(int nn);
|
||||||
void simulate_player_drop_packet(SrsRtpHeader* h, int nn_bytes);
|
void simulate_player_drop_packet(SrsRtpHeader* h, int nn_bytes);
|
||||||
srs_error_t do_send_packets(const std::vector<SrsRtpPacket2*>& pkts, SrsRtcPlayStreamStatistic& info);
|
|
||||||
srs_error_t do_send_packet(SrsRtpPacket2* pkt);
|
srs_error_t do_send_packet(SrsRtpPacket2* pkt);
|
||||||
// Directly set the status of play track, generally for init to set the default value.
|
// Directly set the status of play track, generally for init to set the default value.
|
||||||
void set_all_tracks_status(std::string stream_uri, bool is_publish, bool status);
|
void set_all_tracks_status(std::string stream_uri, bool is_publish, bool status);
|
||||||
|
|
|
@ -55,7 +55,6 @@ class SrsRtcConnection;
|
||||||
class SrsRtpRingBuffer;
|
class SrsRtpRingBuffer;
|
||||||
class SrsRtpNackForReceiver;
|
class SrsRtpNackForReceiver;
|
||||||
class SrsJsonObject;
|
class SrsJsonObject;
|
||||||
class SrsRtcPlayStreamStatistic;
|
|
||||||
class SrsErrorPithyPrint;
|
class SrsErrorPithyPrint;
|
||||||
class SrsRtcDummyBridger;
|
class SrsRtcDummyBridger;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue