【发布时间】:2015-03-08 05:14:35
【问题描述】:
我正在浏览集成在 FFMPEG 中的 HEVC 解码器。我实际上是在尝试了解它的流程和工作原理。
通过流,我的意思是代码中读取输入 .bin 文件的各种参数的部分。比如它在哪里读取分辨率,它在哪里决定它需要播放的fps,输出显示格式是yuv420p等等。
最初我怀疑是位于/libavformat/hevcdec.c 的 hevc 解复用器在此文件中执行输入文件读取工作。有一个探测函数,用于检测在解码输入 bin 流时选择哪个解码器。此外,我们还有一个FF_DEF_RAWVIDEO_DEMUXER。从输入文件中读取的分辨率和其他参数是否在此函数中?
其次,我怀疑 hevc 解析器位于:/libavcodec/hevc_parser.c 但在这里我认为它只是解析帧数据,即查找帧结尾。那么,我的这个假设对吗?
任何建议或任何预测都会对我很有帮助。请提出您宝贵的建议。提前致谢。
【问题讨论】: