mirror of
https://github.com/ossrs/srs.git
synced 2025-02-13 20:01:56 +00:00
RTC: Refine code
This commit is contained in:
parent
bf3b917f1f
commit
e0c9544995
1 changed files with 16 additions and 8 deletions
|
@ -126,11 +126,10 @@ srs_error_t SrsRtpExtensionTwcc::decode(SrsBuffer* buf)
|
||||||
return srs_error_new(ERROR_RTC_RTP, "invalid twcc id=%d, len=%d", id_, len);
|
return srs_error_new(ERROR_RTC_RTP, "invalid twcc id=%d, len=%d", id_, len);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!buf->require(3)) {
|
if (!buf->require(2)) {
|
||||||
return srs_error_new(ERROR_RTC_RTP_MUXER, "requires %d bytes", 3);
|
return srs_error_new(ERROR_RTC_RTP_MUXER, "requires %d bytes", 2);
|
||||||
}
|
}
|
||||||
sn_ = buf->read_2bytes();
|
sn_ = buf->read_2bytes();
|
||||||
buf->read_1bytes();
|
|
||||||
|
|
||||||
has_twcc_ = true;
|
has_twcc_ = true;
|
||||||
return err;
|
return err;
|
||||||
|
@ -145,9 +144,16 @@ srs_error_t SrsRtpExtensionTwcc::encode(SrsBuffer* buf)
|
||||||
{
|
{
|
||||||
srs_error_t err = srs_success;
|
srs_error_t err = srs_success;
|
||||||
|
|
||||||
|
// TODO: FIXME: Only requires 3 bytes.
|
||||||
|
if(!buf->require(4)) {
|
||||||
|
return srs_error_new(ERROR_RTC_RTP_MUXER, "requires %d bytes", 4);
|
||||||
|
}
|
||||||
|
|
||||||
uint8_t id_len = (id_ & 0x0F)<< 4| 0x01;
|
uint8_t id_len = (id_ & 0x0F)<< 4| 0x01;
|
||||||
buf->write_1bytes(id_len);
|
buf->write_1bytes(id_len);
|
||||||
buf->write_2bytes(sn_);
|
buf->write_2bytes(sn_);
|
||||||
|
|
||||||
|
// TODO: FIXME: Should padding in the final of SrsRtpExtensions::encode.
|
||||||
buf->write_1bytes(0x00);
|
buf->write_1bytes(0x00);
|
||||||
|
|
||||||
return err;
|
return err;
|
||||||
|
@ -265,7 +271,9 @@ int SrsRtpExtensions::nb_bytes()
|
||||||
srs_error_t SrsRtpExtensions::encode(SrsBuffer* buf)
|
srs_error_t SrsRtpExtensions::encode(SrsBuffer* buf)
|
||||||
{
|
{
|
||||||
srs_error_t err = srs_success;
|
srs_error_t err = srs_success;
|
||||||
|
|
||||||
buf->write_2bytes(0xBEDE);
|
buf->write_2bytes(0xBEDE);
|
||||||
|
|
||||||
int len = 0;
|
int len = 0;
|
||||||
//TODO: When add new rtp extension, it should add the extension length into len
|
//TODO: When add new rtp extension, it should add the extension length into len
|
||||||
if (twcc_.has_twcc_ext()) {
|
if (twcc_.has_twcc_ext()) {
|
||||||
|
|
Loading…
Reference in a new issue