@ -1965,7 +1965,9 @@ void SrsRtcVideoRecvTrack::on_before_decode_payload(SrsRtpPacket2* pkt, SrsBuffe
return;
}
uint8_t v = (uint8_t)pkt->nalu_type;
uint8_t v = (uint8_t)(buf->head()[0] & kNalTypeMask);
pkt->nalu_type = SrsAvcNaluType(v);
if (v == kStapA) {
*ppayload = new SrsRtpSTAPPayload();
*ppt = SrsRtpPacketPayloadTypeSTAP;
@ -1035,11 +1035,6 @@ srs_error_t SrsRtpPacket2::decode(SrsBuffer* buf)
buf->set_size(buf->size() - padding);
// Try to parse the NALU type for video decoder.
if (!buf->empty()) {
nalu_type = SrsAvcNaluType((uint8_t)(buf->head()[0] & kNalTypeMask));
// TODO: FIXME: We should keep payload to NULL and return if buffer is empty.
// If user set the decode handler, call it to set the payload.
if (decode_handler) {