1

我试图在没有实际进行任何解码的情况下确定 hevc 图片的每个切片中包含的编码树块的数量——除了 sps pps 和切片头解析。

是否可以从切片头计算切片结束地址?

4

2 回答 2

0

您始终可以对编码器进行一些更改,以便它在日志文件中为您提供分区信息。这可以成为您的选择吗?

于 2018-01-19T08:40:41.237 回答
0

据我所知,参数集和切片标头都不包含此信息,我可以向您保证,因为我正在解码器端处理 HM 编解码器。

在当前帧中找到 CTU 的一个简单方法是在TDecGop::filterPicture(在 TLibDecoder/TDecGop.cpp 中)简单地添加这一行:

std::cout << "*Slice Cur End Ctu Ts Addr :\t" << pcSlice->getSliceCurEndCtuTsAddr() << "\n";恢复切片指针后。

或更好 :

std::cout << "numCtusInFrame :\t" << pcPic->getNumberOfCtusInFrame()  << "\n"; 

在函数的第一行。您将进入日志屏幕(文件):

*Slice Cur End Ctu Ts Addr :    30
POC    0 TId: 0 ( I-SLICE, QP 21 ) [DT  0.087] [L0 ] [L1 ] [:,(unk)]

或者

numCtusInFrame :        30
POC    0 TId: 0 ( I-SLICE, QP 21 ) [DT  0.087] [L0 ] [L1 ] [:,(unk)]
于 2018-06-29T13:24:12.397 回答