From 9b111fac6244f10be9ed637f43266d5cc9e26d1e Mon Sep 17 00:00:00 2001 From: xiongguangjie Date: Sat, 19 Jun 2021 02:01:28 +0800 Subject: [PATCH] add to do for h265 rtmp --- src/Extension/H265Rtmp.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Extension/H265Rtmp.cpp b/src/Extension/H265Rtmp.cpp index cc46905b..e5f2a8ec 100644 --- a/src/Extension/H265Rtmp.cpp +++ b/src/Extension/H265Rtmp.cpp @@ -191,7 +191,9 @@ void H265RtmpEncoder::inputFrame(const Frame::Ptr &frame) { int8_t flags = FLV_CODEC_H265; bool is_config = false; flags |= (((frame->configFrame() || frame->keyFrame()) ? FLV_KEY_FRAME : FLV_INTER_FRAME) << 4); - + // to do + // 必须是IDR帧才能是关键帧,否则有可能开始帧会花屏 SPS PPS VPS 打头的是一般I帧,但不一定是IDR帧 + // RtmpCodec::inputRtmp 时需要判断 是否是IDR帧,做出相应的修改 _lastPacket = RtmpPacket::create(); _lastPacket->buffer.push_back(flags); _lastPacket->buffer.push_back(!is_config);