随笔分类 - H.264/AVC
摘要:假设有如下含有 B 帧的序列 (按显示顺序排列): I B B B P 其 pts 等各值如下 (pts 由调用者输入): I B B B P pts: 0 1 2 3 4 现在对这个序列打 dts (最后一个 P 帧的的解码顺序一定是排第二个的,其余 B 帧解码顺序排在最后一个 P 帧之后): I
阅读全文
摘要:不同于 slice 级多线程,当开启帧级多线程的时候,视频编码是以帧为单位的,即每一帧只会由同一个线程编码完成,内部不会切分。 现在假设开启了 2 个编码线程,分别编码前一帧和后一帧,且后一帧运动搜索需要参考前一帧。这时: 由于线程 B 编码的帧运动搜索需要参考线程 A 正在编码的帧,所以线程 B
阅读全文
摘要:测试环境 测试视频是一个街拍视频,画面纹理复杂度较高,截图如下: 源视频信息: 1920x1080,30fps 测试编码信息: 关闭 b 帧 只编码前 2 分钟的视频 预设为 x264 medium 挡位 目标码率为 3000k 码流查看工具: FFBitrateViewer ABR 对比 CBR
阅读全文
摘要:1. 帧级码控理论分析 给定如下变量: wanted:目标码率 complex:图像复杂度 QP:量化参数 A:编码黑盒 视频编码可以用如下语句描述: 对于一副图像复杂度为 complex 的图像,使用量化参数 QP 对其进行编码,编码黑盒 A 能将这副图像映射为最终的期望码率大小 wanted x
阅读全文
摘要:参考: https://blog.csdn.net/fanbird2008/article/details/9086669 1. 作用 编码开销预估在 x264 lookahead 阶段中完成,即在正式编码前,一帧待编码帧必须先进行编码开销预估的相关计算。其有如下作用: 帧类型决策 scenecut
阅读全文
摘要:参考: https://www.cnblogs.com/TaigaCon/p/5229392.html ITU-T H.264 标准文档 新一代视频压缩标准-H.264_AVC 毕厚杰 1. CBP 语义的作用 1.1 DCT 变换与 AC & DC 语义 我们知道 h.264 码流在经过模式选择后
阅读全文
摘要:1. 概述 H.264 中,有一个很重要的计数变量:frame_num。此值无法由其它值推导出来,而是在码流中直接硬编码该数值,并且每一帧都会携带。 H.264 语义中很多其它的变量都是依赖 frame_num 推导出来的,所以本篇博客主要记录一下 frame_num 的语义以及在 x264 中,其
阅读全文
摘要:参考: https://blog.csdn.net/leixiaohua1020/article/details/45936267 1. 亚像素插值原理 先简单介绍一下亚像素插值是如何进行的,基本来自这篇博客 https://blog.csdn.net/leixiaohua1020/article/
阅读全文
摘要:参考: https://www.cnblogs.com/wangnath/p/15057885.html https://stephenzhou.blog.csdn.net/article/details/127342398 https://www.cnblogs.com/TaigaCon/p/36
阅读全文
摘要:1. 问题 在 mediacodec 解码 h264 视频的时候,有时候会出现首帧出来延迟的情况。一般来说,如果视频流不包含 B 帧,应该是丢一个完整包进去就能解码得到一帧,但是有些视频流不是这种情况。首帧可能会延迟几个包才出来 2. 分析 首先我们需要明确一个知识点就是,解码器一般会对解码出来的帧
阅读全文

浙公网安备 33010602011771号