Skip to content

Commit

Permalink
stash
Browse files Browse the repository at this point in the history
  • Loading branch information
duiniuluantanqin committed Feb 19, 2025
1 parent 83d577a commit d5ba618
Showing 1 changed file with 29 additions and 12 deletions.
41 changes: 29 additions & 12 deletions trunk/src/app/srs_app_rtc_source.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2814,19 +2814,36 @@ void SrsRtcVideoRecvTrack::on_before_decode_payload(SrsRtpPacket* pkt, SrsBuffer
return;
}

uint8_t v = (uint8_t)(buf->head()[0] & kNalTypeMask);
pkt->nalu_type = v;

if (v == kStapA) {
*ppayload = new SrsRtpSTAPPayload();
*ppt = SrsRtspPacketPayloadTypeSTAP;
} else if (v == kFuA) {
*ppayload = new SrsRtpFUAPayload2();
*ppt = SrsRtspPacketPayloadTypeFUA2;
bool is_hevc = track_desc_->media_->name_ == "H265";
if (is_hevc) {
uint8_t v = SrsHevcNaluTypeParse(buf->head()[0]);
pkt->nalu_type = v;

if (v == kStapHevc) {
*ppayload = new SrsRtpSTAPPayloadHevc();
*ppt = SrsRtspPacketPayloadTypeSTAPHevc;
} else if (v == kFuHevc) {
*ppayload = new SrsRtpFUAPayloadHevc2();
*ppt = SrsRtspPacketPayloadTypeFUAHevc;
} else {
*ppayload = new SrsRtpRawPayload();
*ppt = SrsRtspPacketPayloadTypeRaw;
}
} else {
*ppayload = new SrsRtpRawPayload();
*ppt = SrsRtspPacketPayloadTypeRaw;
}
uint8_t v = (uint8_t)(buf->head()[0] & kNalTypeMask);
pkt->nalu_type = v;

if (v == kStapA) {
*ppayload = new SrsRtpSTAPPayload();
*ppt = SrsRtspPacketPayloadTypeSTAP;
} else if (v == kFuA) {
*ppayload = new SrsRtpFUAPayload2();
*ppt = SrsRtspPacketPayloadTypeFUA2;
} else {
*ppayload = new SrsRtpRawPayload();
*ppt = SrsRtspPacketPayloadTypeRaw;
}
}
}

srs_error_t SrsRtcVideoRecvTrack::on_rtp(SrsSharedPtr<SrsRtcSource>& source, SrsRtpPacket* pkt)
Expand Down

0 comments on commit d5ba618

Please sign in to comment.