可扩展HEVC中是否有任何比特流提取器?

时间:2017-03-08 12:12:09

标签: scalability hevc scalable h.265

我使用的是可扩展HEVC参考软件(SHM 12.2)。

我使用以下脚本对视频进行两层编码:

/home/Experiments/Zinon/SHM-12.2/bin/TAppEncoderStatic -c
cfg/encoder_randomaccess_scalable.cfg -c cfg/per-sequence-svc/C_L-1.5x.cfg 
-c cfg/layers.cfg -b str/C_L.bin -o0 rec/C_L_l0_rec.yuv -o1 rec/C_L_l1_rec.yuv

在可扩展的H.264中,使用比特流提取器“BitStreamExtractorStatic”,我可以提取AVC或SVC流的子流。

您是否知道可扩展HEVC中是否存在类似的比特流提取器?因为在SHM中没有任何。

SHM/source/App/utils/ExtractAddLS/中,有一个包含以下文本的文本文件。在任何情况下,我都找不到ExtractAddLS的可执行文件,只能找到一个c文件。

这个工具要么:

  1. 从多层比特流中提取独立的非基础层,将其转换为基础层比特流并将其写入文件。提取过程在HEVC第2版规范的F.10.2章中定义。
    1. 从多层比特流中提取附加的层集子比特流并将其写入文件。提取过程在HEVC第2版规范的F.10.3章节中定义。
    2. 该工具的调用如下:

      ExtractAddLS <infile> <outfile> <Max temporal ID> <layer IDs of the extracted layers>

      根据图层ID列表中给出的ID数决定调用的进程。如果仅给出一个层ID,则调用独立的非基础层重写过程。如果给出了多个层ID,则调用其他层集的子位流提取。

      独立的非基本层​​重写过程的结果可以用符合HEVC / H.265 v1的解码器解码,只要提取的独立层符合v1规范文本即可。该工具在重写期间从输出比特流中移除VPS,因此HEVC / H.265解码器不应期望它存在。

1 个答案:

答案 0 :(得分:0)

经过数月的搜索,我意识到SHM解码器只需添加参数即可提取所请求的图层。例如:

TAppDecoderStatic -b str/pirkagia_10b_lowdelay_P.bin -olsidx 0 -o0 /yuv/pirkagia_10b_lowdelay_P_level_0_dec.yuv >> /txt/pirkagia_10b_lowdelay_P_level_0_dec.txt 

使用参数-olsidx,我们可以选择要解码的输出图层集的索引。