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
相关文章推荐
- HEVC解码器HM源码阅读(二)解码器中类的介绍
- HEVC解码器HM源码阅读(三)读取一个NALU
- HEVC解码器HM源码阅读(四)解析参数集
- [hadoop源码阅读][4]-org.apache.hadoop.io.compress系列1-认识解码器/编码器
- 深入阅读Mina源码(1) ―― 小试牛刀,过滤器介绍
- HEVC官方软件HM源代码简单分析-解码器TAppDecoder
- HEVC官方软件HM源代码简单分析-解码器TAppDecoder
- HEVC标准介绍+论文阅读笔记
- 介绍一些阅读Linux内核源码必备的技能
- flume源码阅读-总体介绍
- Horizon 源码阅读(一)—— Horizon 整体介绍
- FAAC源码阅读(1)——AAC和音频编码的介绍
- 阅读源码工具介绍
- HEVC码率控制浅析——HM代码阅读之三
- HEVC码率控制浅析——HM代码阅读之二
- HEVC码率控制算法研究与HM相应代码分析(一)——HEVC标准及编码流程介绍
- [hadoop源码阅读][4]-org.apache.hadoop.io.compress系列1-认识解码器/编码器
- HEVC码率控制浅析——HM代码阅读之一
- HEVC码率控制浅析——HM代码阅读之四
- HM编码器代码阅读(1)——介绍以及相关知识