diff --git a/src/Extension/H265Rtmp.cpp b/src/Extension/H265Rtmp.cpp index 5c849178..ff346582 100644 --- a/src/Extension/H265Rtmp.cpp +++ b/src/Extension/H265Rtmp.cpp @@ -55,9 +55,8 @@ static bool getH265ConfigFrame(const RtmpPacket &thiz,string &frame) { if (mpeg4_hevc_decoder_configuration_record_load((uint8_t *) extra, bytes, &hevc) > 0) { uint8_t config[1024] = {0}; int size = mpeg4_hevc_to_nalu(&hevc, config, sizeof(config)); - if (size > 0) { - DebugL << hexdump((char *) config, size); - frame.assign((char *) config, size); + if (size > 4) { + frame.assign((char *) config + 4, size - 4); return true; } } @@ -74,7 +73,7 @@ bool H265RtmpDecoder::decodeRtmp(const RtmpPacket::Ptr &pkt) { onGetH265(config.data(), config.size(), pkt->timeStamp , pkt->timeStamp); } #else - WarnL << "请开启MP4相关功能并使能\"ENABLE_MP4\",否则对H265-RTMP支持不完善" + WarnL << "请开启MP4相关功能并使能\"ENABLE_MP4\",否则对H265-RTMP支持不完善"; #endif return false; } @@ -245,7 +244,7 @@ void H265RtmpEncoder::makeVideoConfigPkt() { rtmpPkt->typeId = MSG_VIDEO; RtmpCodec::inputRtmp(rtmpPkt, false); #else - WarnL << "请开启MP4相关功能并使能\"ENABLE_MP4\",否则对H265-RTMP支持不完善" + WarnL << "请开启MP4相关功能并使能\"ENABLE_MP4\",否则对H265-RTMP支持不完善"; #endif } diff --git a/src/Record/MP4Demuxer.cpp b/src/Record/MP4Demuxer.cpp index 0f93d647..184035b9 100644 --- a/src/Record/MP4Demuxer.cpp +++ b/src/Record/MP4Demuxer.cpp @@ -88,7 +88,7 @@ void MP4Demuxer::onVideoTrack(uint32_t track, uint8_t object, int width, int hei uint8_t config[1024] = {0}; int size = mpeg4_avc_to_nalu(&avc, config, sizeof(config)); if (size > 0) { - video->inputFrame(std::make_shared((char *)config, size, 0, 0)); + video->inputFrame(std::make_shared((char *)config, size, 0, 4)); } } } @@ -102,7 +102,7 @@ void MP4Demuxer::onVideoTrack(uint32_t track, uint8_t object, int width, int hei uint8_t config[1024] = {0}; int size = mpeg4_hevc_to_nalu(&hevc, config, sizeof(config)); if (size > 0) { - video->inputFrame(std::make_shared((char *) config, size, 0, 0)); + video->inputFrame(std::make_shared((char *) config, size, 0, 4)); } } }