mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
SRS: Fix bug
This commit is contained in:
parent
aaebecbcc9
commit
a826926073
26 changed files with 116 additions and 10 deletions
|
@ -3912,7 +3912,7 @@ srs_error_t SrsMp4DecodingTime2SampleBox::on_sample(uint32_t sample_index, SrsMp
|
|||
index++;
|
||||
|
||||
if (index >= entries.size()) {
|
||||
return srs_error_new(ERROR_MP4_ILLEGAL_TIMESTAMP, "illegal ts, stts overflow, count=%d", entries.size());
|
||||
return srs_error_new(ERROR_MP4_ILLEGAL_TIMESTAMP, "illegal ts, stts overflow, count=%zd", entries.size());
|
||||
}
|
||||
|
||||
count += entries[index].sample_count;
|
||||
|
@ -4038,7 +4038,7 @@ srs_error_t SrsMp4CompositionTime2SampleBox::on_sample(uint32_t sample_index, Sr
|
|||
index++;
|
||||
|
||||
if (index >= entries.size()) {
|
||||
return srs_error_new(ERROR_MP4_ILLEGAL_TIMESTAMP, "illegal ts, ctts overflow, count=%d", entries.size());
|
||||
return srs_error_new(ERROR_MP4_ILLEGAL_TIMESTAMP, "illegal ts, ctts overflow, count=%d", (int)entries.size());
|
||||
}
|
||||
|
||||
count += entries[index].sample_count;
|
||||
|
@ -5217,7 +5217,7 @@ srs_error_t SrsMp4BoxReader::read(SrsSimpleStream* stream, SrsMp4Box** ppbox)
|
|||
while (stream->length() < (int)required) {
|
||||
ssize_t nread;
|
||||
if ((err = rsio->read(buf, SRS_MP4_BUF_SIZE, &nread)) != srs_success) {
|
||||
return srs_error_wrap(err, "load failed, nread=%d, required=%d", (int)nread, required);
|
||||
return srs_error_wrap(err, "load failed, nread=%d, required=%d", (int)nread, (int)required);
|
||||
}
|
||||
|
||||
srs_assert(nread > 0);
|
||||
|
@ -6282,6 +6282,7 @@ SrsMp4M2tsSegmentEncoder::SrsMp4M2tsSegmentEncoder()
|
|||
decode_basetime = 0;
|
||||
styp_bytes = 0;
|
||||
mdat_bytes = 0;
|
||||
track_id = 0;
|
||||
}
|
||||
|
||||
SrsMp4M2tsSegmentEncoder::~SrsMp4M2tsSegmentEncoder()
|
||||
|
|
|
@ -31,6 +31,7 @@ using namespace std;
|
|||
|
||||
SrsRtcpCommon::SrsRtcpCommon(): ssrc_(0), data_(NULL), nb_data_(0)
|
||||
{
|
||||
payload_len_ = 0;
|
||||
}
|
||||
|
||||
SrsRtcpCommon::~SrsRtcpCommon()
|
||||
|
@ -190,7 +191,7 @@ srs_error_t SrsRtcpApp::set_subtype(uint8_t type)
|
|||
srs_error_t SrsRtcpApp::set_name(std::string name)
|
||||
{
|
||||
if(name.length() > 4) {
|
||||
return srs_error_new(ERROR_RTC_RTCP, "invalid name length %d", name.length());
|
||||
return srs_error_new(ERROR_RTC_RTCP, "invalid name length %zu", name.length());
|
||||
}
|
||||
|
||||
memset(name_, 0, sizeof(name_));
|
||||
|
@ -298,6 +299,13 @@ SrsRtcpSR::SrsRtcpSR()
|
|||
header_.rc = 0;
|
||||
header_.version = kRtcpVersion;
|
||||
header_.length = 6;
|
||||
|
||||
ssrc_ = 0;
|
||||
ntp_ = 0;
|
||||
rtp_ts_ = 0;
|
||||
send_rtp_packets_ = 0;
|
||||
send_rtp_bytes_ = 0;
|
||||
send_rtp_bytes_ = 0;
|
||||
}
|
||||
|
||||
SrsRtcpSR::~SrsRtcpSR()
|
||||
|
@ -706,6 +714,11 @@ SrsRtcpTWCC::SrsRtcpTWCC(uint32_t sender_ssrc) : pkt_len(0)
|
|||
header_.rc = 15;
|
||||
header_.version = kRtcpVersion;
|
||||
ssrc_ = sender_ssrc;
|
||||
media_ssrc_ = 0;
|
||||
base_sn_ = 0;
|
||||
packet_count_ = 0;
|
||||
reference_time_ = 0;
|
||||
fb_pkt_count_ = 0;
|
||||
}
|
||||
|
||||
SrsRtcpTWCC::~SrsRtcpTWCC()
|
||||
|
@ -1178,6 +1191,7 @@ SrsRtcpNack::SrsRtcpNack(uint32_t sender_ssrc)
|
|||
header_.rc = 1;
|
||||
header_.version = kRtcpVersion;
|
||||
ssrc_ = sender_ssrc;
|
||||
media_ssrc_ = 0;
|
||||
}
|
||||
|
||||
SrsRtcpNack::~SrsRtcpNack()
|
||||
|
|
|
@ -66,6 +66,14 @@ struct SrsRtcpHeader
|
|||
uint16_t type:8;
|
||||
|
||||
uint16_t length:16;
|
||||
|
||||
SrsRtcpHeader() {
|
||||
rc = 0;
|
||||
padding = 0;
|
||||
version = 0;
|
||||
type = 0;
|
||||
length = 0;
|
||||
}
|
||||
};
|
||||
|
||||
class SrsRtcpCommon: public ISrsCodec
|
||||
|
@ -134,6 +142,16 @@ struct SrsRtcpRB
|
|||
uint32_t jitter;
|
||||
uint32_t lsr;
|
||||
uint32_t dlsr;
|
||||
|
||||
SrsRtcpRB() {
|
||||
ssrc = 0;
|
||||
fraction_lost = 0;
|
||||
lost_packets = 0;
|
||||
highest_sn = 0;
|
||||
jitter = 0;
|
||||
lsr = 0;
|
||||
dlsr = 0;
|
||||
}
|
||||
};
|
||||
|
||||
class SrsRtcpSR : public SrsRtcpCommon
|
||||
|
|
|
@ -63,7 +63,7 @@ SrsRtpExtensionTypes::~SrsRtpExtensionTypes()
|
|||
|
||||
bool SrsRtpExtensionTypes::register_by_uri(int id, std::string uri)
|
||||
{
|
||||
for (int i = 0; i < (int)sizeof(kExtensions); ++i) {
|
||||
for (int i = 0; i < (int)(sizeof(kExtensions)/sizeof(kExtensions[0])); ++i) {
|
||||
if (kExtensions[i].uri == uri) {
|
||||
return register_id(id, kExtensions[i].type, kExtensions[i].uri);
|
||||
}
|
||||
|
|
|
@ -2012,6 +2012,9 @@ SrsTsPayloadPSI::SrsTsPayloadPSI(SrsTsPacket* p) : SrsTsPayload(p)
|
|||
const0_value = 0;
|
||||
const1_value = 3;
|
||||
CRC_32 = 0;
|
||||
section_length = 0;
|
||||
section_syntax_indicator = 0;
|
||||
table_id = SrsTsPsiIdPas;
|
||||
}
|
||||
|
||||
SrsTsPayloadPSI::~SrsTsPayloadPSI()
|
||||
|
@ -2223,7 +2226,12 @@ srs_error_t SrsTsPayloadPATProgram::encode(SrsBuffer* stream)
|
|||
|
||||
SrsTsPayloadPAT::SrsTsPayloadPAT(SrsTsPacket* p) : SrsTsPayloadPSI(p)
|
||||
{
|
||||
transport_stream_id = 0;
|
||||
const3_value = 3;
|
||||
version_number = 0;
|
||||
current_next_indicator = 0;
|
||||
section_number = 0;
|
||||
last_section_number = 0;
|
||||
}
|
||||
|
||||
SrsTsPayloadPAT::~SrsTsPayloadPAT()
|
||||
|
@ -2422,6 +2430,12 @@ SrsTsPayloadPMT::SrsTsPayloadPMT(SrsTsPacket* p) : SrsTsPayloadPSI(p)
|
|||
const1_value0 = 3;
|
||||
const1_value1 = 7;
|
||||
const1_value2 = 0x0f;
|
||||
PCR_PID = 0;
|
||||
last_section_number = 0;
|
||||
program_number = 0;
|
||||
version_number = 0;
|
||||
current_next_indicator = 0;
|
||||
section_number = 0;
|
||||
}
|
||||
|
||||
SrsTsPayloadPMT::~SrsTsPayloadPMT()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue