您的位置:首页 > 其它

HEVC解码器HM源码阅读(一)介绍

2017-05-02 17:52 357 查看

介绍

    之前看HM的编码器,总觉得理解得不够深入,很多地方只是了解大概的处理流程,具体含义没有理解。为了更加深入理解HEVC,现在开始从解码器的角度分析HEVC,说不定能够取得不错的效果。

HM解码器包含的工程

    TAppDecoder:解码器入口(APP表示应用程序)

    TAppCommon:参数解析

    TLibCommon:公用的库(和编码器共用)

    TLibDecoder:解码器的库

    TLibVideoIO:IO库

HM解码器包含的类

    program_options_lite:参数解析

    TAppDecCfg:解码器基础配置

    TAppDecTop:解码器应用程序,代表了整个编码器

    TDecTop:解码器内核,它是解码器最关键的部分,以汽车作为例子,TAppDecTop表示一辆汽车,那么TDecTop就表示了汽车的发动机,是汽车最关键的部分

    TVideoIOYuv:IO操作类

解码器的大致工作流程

    1、读取比特流文件中的每一个NALU,进行解析,然后进行下面的操作

    2、判断NALU的类型
        (1)如果是VPS,那么调用xDecodeVPS,解析VPS
        (2)如果是SPS,那么调用xDecodeSPS,解析SPS
        (3)如果是PPS,那么调用xDecodePPS,解析PPS
        (4)如果是SEI,那么调用xDecodeSEI,解析SEI
        (5)如果是普通数据(也就是slice),那么调用xDecodeSlice,解析slice
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: