From 070c2c46d7e1eb2573181b9ac491995f2acb7010 Mon Sep 17 00:00:00 2001 From: xiongziliang <771730766@qq.com> Date: Sat, 4 Apr 2020 23:13:10 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Extension/H265Rtmp.cpp | 9 ++++----- src/Record/MP4Demuxer.cpp | 4 ++-- 2 files changed, 6 insertions(+), 7 deletions(-) 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)); } } }