RTC: Refine RTCP names.

pull/1809/head
忘篱 5 years ago
parent d6d2554c7f
commit f5ba274019

@ -575,7 +575,7 @@ srs_utime_t SrsRtcpTWCC::calculate_delta_us(srs_utime_t ts, srs_utime_t last)
return delta_us; return delta_us;
} }
bool SrsRtcpTWCC::can_add_to_chunk(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk, int delta_size) bool SrsRtcpTWCC::can_add_to_chunk(SrsRtcpTWCC::SrsRtcpTWCCChunk& chunk, int delta_size)
{ {
srs_verbose("can_add %d chunk->size %u delta_sizes %d %d %d %d %d %d %d %d %d %d %d %d %d %d all_same %d has_large_delta %d", srs_verbose("can_add %d chunk->size %u delta_sizes %d %d %d %d %d %d %d %d %d %d %d %d %d %d all_same %d has_large_delta %d",
delta_size, chunk.size, chunk.delta_sizes[0], chunk.delta_sizes[1], chunk.delta_sizes[2], chunk.delta_sizes[3], delta_size, chunk.size, chunk.delta_sizes[0], chunk.delta_sizes[1], chunk.delta_sizes[2], chunk.delta_sizes[3],
@ -599,7 +599,7 @@ bool SrsRtcpTWCC::can_add_to_chunk(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk, in
return false; return false;
} }
void SrsRtcpTWCC::add_to_chunk(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk, int delta_size) void SrsRtcpTWCC::add_to_chunk(SrsRtcpTWCC::SrsRtcpTWCCChunk& chunk, int delta_size)
{ {
if (chunk.size < kTwccFbMaxBitElements) { if (chunk.size < kTwccFbMaxBitElements) {
chunk.delta_sizes[chunk.size] = delta_size; chunk.delta_sizes[chunk.size] = delta_size;
@ -610,7 +610,7 @@ void SrsRtcpTWCC::add_to_chunk(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk, int de
chunk.has_large_delta = chunk.has_large_delta || delta_size >= kTwccFbLargeRecvDeltaBytes; chunk.has_large_delta = chunk.has_large_delta || delta_size >= kTwccFbLargeRecvDeltaBytes;
} }
srs_error_t SrsRtcpTWCC::encode_chunk_run_length(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk) srs_error_t SrsRtcpTWCC::encode_chunk_run_length(SrsRtcpTWCC::SrsRtcpTWCCChunk& chunk)
{ {
if (!chunk.all_same || chunk.size > kTwccFbMaxRunLength) { if (!chunk.all_same || chunk.size > kTwccFbMaxRunLength) {
return srs_error_new(ERROR_RTC_RTCP, "invalid run all_same:%d, size:%d", chunk.all_same, chunk.size); return srs_error_new(ERROR_RTC_RTCP, "invalid run all_same:%d, size:%d", chunk.all_same, chunk.size);
@ -624,7 +624,7 @@ srs_error_t SrsRtcpTWCC::encode_chunk_run_length(SrsRtcpTWCC::srs_rtcp_twcc_chun
return srs_success; return srs_success;
} }
srs_error_t SrsRtcpTWCC::encode_chunk_one_bit(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk) srs_error_t SrsRtcpTWCC::encode_chunk_one_bit(SrsRtcpTWCC::SrsRtcpTWCCChunk& chunk)
{ {
int i = 0; int i = 0;
if (chunk.has_large_delta) { if (chunk.has_large_delta) {
@ -643,7 +643,7 @@ srs_error_t SrsRtcpTWCC::encode_chunk_one_bit(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t
return srs_success; return srs_success;
} }
srs_error_t SrsRtcpTWCC::encode_chunk_two_bit(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk, size_t size, bool shift) srs_error_t SrsRtcpTWCC::encode_chunk_two_bit(SrsRtcpTWCC::SrsRtcpTWCCChunk& chunk, size_t size, bool shift)
{ {
unsigned int i = 0; unsigned int i = 0;
uint8_t delta_size = 0; uint8_t delta_size = 0;
@ -671,7 +671,7 @@ srs_error_t SrsRtcpTWCC::encode_chunk_two_bit(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t
return srs_success; return srs_success;
} }
void SrsRtcpTWCC::reset_chunk(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk) void SrsRtcpTWCC::reset_chunk(SrsRtcpTWCC::SrsRtcpTWCCChunk& chunk)
{ {
chunk.size = 0; chunk.size = 0;
@ -679,7 +679,7 @@ void SrsRtcpTWCC::reset_chunk(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk)
chunk.has_large_delta = false; chunk.has_large_delta = false;
} }
srs_error_t SrsRtcpTWCC::encode_chunk(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk) srs_error_t SrsRtcpTWCC::encode_chunk(SrsRtcpTWCC::SrsRtcpTWCCChunk& chunk)
{ {
srs_error_t err = srs_success; srs_error_t err = srs_success;
@ -710,7 +710,7 @@ srs_error_t SrsRtcpTWCC::encode_chunk(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk)
return err; return err;
} }
srs_error_t SrsRtcpTWCC::encode_remaining_chunk(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk) srs_error_t SrsRtcpTWCC::encode_remaining_chunk(SrsRtcpTWCC::SrsRtcpTWCCChunk& chunk)
{ {
if (chunk.all_same) { if (chunk.all_same) {
return encode_chunk_run_length(chunk); return encode_chunk_run_length(chunk);
@ -721,7 +721,7 @@ srs_error_t SrsRtcpTWCC::encode_remaining_chunk(SrsRtcpTWCC::srs_rtcp_twcc_chunk
return encode_chunk_one_bit(chunk); return encode_chunk_one_bit(chunk);
} }
srs_error_t SrsRtcpTWCC::process_pkt_chunk(SrsRtcpTWCC::srs_rtcp_twcc_chunk_t& chunk, int delta_size) srs_error_t SrsRtcpTWCC::process_pkt_chunk(SrsRtcpTWCC::SrsRtcpTWCCChunk& chunk, int delta_size)
{ {
srs_error_t err = srs_success; srs_error_t err = srs_success;
@ -764,7 +764,7 @@ srs_error_t SrsRtcpTWCC::encode(SrsBuffer *buffer)
do { do {
// encode chunk // encode chunk
SrsRtcpTWCC::srs_rtcp_twcc_chunk_t chunk; SrsRtcpTWCC::SrsRtcpTWCCChunk chunk;
for(; it_sn != recv_sns_.end(); ++it_sn) { for(; it_sn != recv_sns_.end(); ++it_sn) {
uint16_t current_sn = *it_sn; uint16_t current_sn = *it_sn;
// calculate delta // calculate delta
@ -920,9 +920,9 @@ srs_error_t SrsRtcpNack::encode(SrsBuffer *buffer)
return srs_error_new(ERROR_RTC_RTCP, "requires %d bytes", nb_bytes()); return srs_error_new(ERROR_RTC_RTCP, "requires %d bytes", nb_bytes());
} }
vector<pid_blp_t> chunks; vector<SrsPidBlp> chunks;
do { do {
pid_blp_t chunk; SrsPidBlp chunk;
chunk.in_use = false; chunk.in_use = false;
uint16_t pid = 0; uint16_t pid = 0;
for(set<uint16_t, SrsSeqCompareLess>::iterator it = lost_sns_.begin(); it != lost_sns_.end(); ++it) { for(set<uint16_t, SrsSeqCompareLess>::iterator it = lost_sns_.begin(); it != lost_sns_.end(); ++it) {
@ -955,7 +955,7 @@ srs_error_t SrsRtcpNack::encode(SrsBuffer *buffer)
} }
buffer->write_4bytes(sender_ssrc_); buffer->write_4bytes(sender_ssrc_);
buffer->write_4bytes(media_ssrc_); buffer->write_4bytes(media_ssrc_);
for(vector<pid_blp_t>::iterator it_chunk = chunks.begin(); it_chunk != chunks.end(); it_chunk++) { for(vector<SrsPidBlp>::iterator it_chunk = chunks.begin(); it_chunk != chunks.end(); it_chunk++) {
buffer->write_2bytes(it_chunk->pid); buffer->write_2bytes(it_chunk->pid);
buffer->write_2bytes(it_chunk->blp); buffer->write_2bytes(it_chunk->blp);
} }

@ -253,27 +253,27 @@ private:
std::map<uint16_t, srs_utime_t> recv_packes_; std::map<uint16_t, srs_utime_t> recv_packes_;
std::set<uint16_t, SrsSeqCompareLess> recv_sns_; std::set<uint16_t, SrsSeqCompareLess> recv_sns_;
typedef struct srs_rtcp_twcc_chunk { struct SrsRtcpTWCCChunk {
uint8_t delta_sizes[kTwccFbMaxBitElements]; uint8_t delta_sizes[kTwccFbMaxBitElements];
uint16_t size; uint16_t size;
bool all_same; bool all_same;
bool has_large_delta; bool has_large_delta;
}srs_rtcp_twcc_chunk_t; };
int pkt_len; int pkt_len;
private: private:
void clear(); void clear();
srs_utime_t calculate_delta_us(srs_utime_t ts, srs_utime_t last); srs_utime_t calculate_delta_us(srs_utime_t ts, srs_utime_t last);
srs_error_t process_pkt_chunk(srs_rtcp_twcc_chunk_t& chunk, int delta_size); srs_error_t process_pkt_chunk(SrsRtcpTWCCChunk& chunk, int delta_size);
bool can_add_to_chunk(srs_rtcp_twcc_chunk_t& chunk, int delta_size); bool can_add_to_chunk(SrsRtcpTWCCChunk& chunk, int delta_size);
void add_to_chunk(srs_rtcp_twcc_chunk_t& chunk, int delta_size); void add_to_chunk(SrsRtcpTWCCChunk& chunk, int delta_size);
srs_error_t encode_chunk(srs_rtcp_twcc_chunk_t& chunk); srs_error_t encode_chunk(SrsRtcpTWCCChunk& chunk);
srs_error_t encode_chunk_run_length(srs_rtcp_twcc_chunk_t& chunk); srs_error_t encode_chunk_run_length(SrsRtcpTWCCChunk& chunk);
srs_error_t encode_chunk_one_bit(srs_rtcp_twcc_chunk_t& chunk); srs_error_t encode_chunk_one_bit(SrsRtcpTWCCChunk& chunk);
srs_error_t encode_chunk_two_bit(srs_rtcp_twcc_chunk_t& chunk, size_t size, bool shift); srs_error_t encode_chunk_two_bit(SrsRtcpTWCCChunk& chunk, size_t size, bool shift);
void reset_chunk(srs_rtcp_twcc_chunk_t& chunk); void reset_chunk(SrsRtcpTWCCChunk& chunk);
srs_error_t encode_remaining_chunk(srs_rtcp_twcc_chunk_t& chunk); srs_error_t encode_remaining_chunk(SrsRtcpTWCCChunk& chunk);
public: public:
SrsRtcpTWCC(uint32_t sender_ssrc = 0); SrsRtcpTWCC(uint32_t sender_ssrc = 0);
@ -308,11 +308,11 @@ public:
class SrsRtcpNack : public SrsRtcpCommon class SrsRtcpNack : public SrsRtcpCommon
{ {
private: private:
typedef struct pid_blp_s { struct SrsPidBlp {
uint16_t pid; uint16_t pid;
uint16_t blp; uint16_t blp;
bool in_use; bool in_use;
}pid_blp_t; };
uint32_t sender_ssrc_; uint32_t sender_ssrc_;
uint32_t media_ssrc_; uint32_t media_ssrc_;

Loading…
Cancel
Save