修复H264/H265创建config帧异常问题(#3643)

https://github.com/ZLMediaKit/ZLMediaKit/pull/3611#issuecomment-2177535917
This commit is contained in:
Xiaofeng Wang
2024-06-19 14:05:23 +08:00
committed by GitHub
parent 84dbe4b076
commit efc683228c
3 changed files with 10 additions and 10 deletions

View File

@@ -183,9 +183,9 @@ void H265Track::setExtraData(const uint8_t *data, size_t bytes) {
bool H265Track::update() {
_config_frames = std::vector<Frame::Ptr>{
createConfigFrame<H265Frame>(_vps),
createConfigFrame<H265Frame>(_sps),
createConfigFrame<H265Frame>(_pps)
createConfigFrame<H265Frame>(_vps, 0, getIndex()),
createConfigFrame<H265Frame>(_sps, 0, getIndex()),
createConfigFrame<H265Frame>(_pps, 0, getIndex())
};
return getHEVCInfo(_vps, _sps, _width, _height, _fps);
}
@@ -199,13 +199,13 @@ void H265Track::insertConfigFrame(const Frame::Ptr &frame) {
return;
}
if (!_vps.empty()) {
VideoTrack::inputFrame(createConfigFrame<H265Frame>(_vps));
VideoTrack::inputFrame(createConfigFrame<H265Frame>(_vps, frame->dts(), frame->getIndex()));
}
if (!_sps.empty()) {
VideoTrack::inputFrame(createConfigFrame<H265Frame>(_sps));
VideoTrack::inputFrame(createConfigFrame<H265Frame>(_sps, frame->dts(), frame->getIndex()));
}
if (!_pps.empty()) {
VideoTrack::inputFrame(createConfigFrame<H265Frame>(_pps));
VideoTrack::inputFrame(createConfigFrame<H265Frame>(_pps, frame->dts(), frame->getIndex()));
}
}