H265
文章平均质量分 58
珠峰之巅-程序员
这个作者很懒,什么都没留下…
展开
-
HEVC-CABAC
Context odeling, robability stimation and ssignment CABAC的model有两种一个是普通一个是bypass。上下文模型:选择概率模型probability estimation:The parameters of probability models in CABAC are adaptive每一个概率模型用7bit来存储,其中6bit来存储63个概率状态LPS,1bit涌过来存储最MPS。状态转换。 Multi...原创 2021-07-11 18:59:13 · 310 阅读 · 0 评论 -
In-Loop Filters in HEVC
有两种滤波,一个deblock filter用来减弱因为transform和预测边界的不联系性;另外一个是SAO,通过减弱振铃效应和改变像素的强度来提升画质。https://blog.csdn.net/u014470361/article/details/94641124解释什么是块效应和振铃效应。 Deblocking Filter 块效应的产生:1.2.since the deblocking of one vertical (horizontal) bounda.原创 2021-07-11 13:07:56 · 432 阅读 · 0 评论 -
HEVC Transform and Quantization
HEVC Transform Discrete Cosine Transform Finite recision CT pproximations This avoids encoder–decoder mismatch anddrift caused by manufacturers implementing the IDCT with slightly different foating point representations. HEVC Cor...原创 2021-07-11 11:59:19 · 145 阅读 · 0 评论 -
HEVC-帧间预测
AMVP 主要是利用相邻块的相关性,因为运动向量不会突变。 AMVP对象列表的构造 5个向量来自三类:1.来空间相邻的3个运动向量2.3个空间相邻向量的中值3.一个来自co-located缩放的向量对这个5个向量,还要重新排序,最有可能的放到第0个位置,还要去除一些冗余的对象。...原创 2021-07-10 12:30:11 · 709 阅读 · 0 评论 -
AVC与HEVC的差异-帧内预测
原创 2021-07-10 11:11:03 · 1371 阅读 · 0 评论 -
x265-common.h
PPA和VTUNE作用:两个不能同时开启,必须关闭一个#if ENABLE_PPA && ENABLE_VTUNE#error "PPA and VTUNE cannot both be enabled. Disable one of them."#endif#if ENABLE_PPA#include "profile/PPA/ppa.h"#define ProfileScopeEvent(x) PPAScopeEvent(x)#define THREAD_N...原创 2021-04-24 16:53:50 · 400 阅读 · 0 评论 -
x265-bitstream.cpp
#define MIN_FIFO_SIZE 1000Bitstream()bitstream的构造函数Bitstream::Bitstream(){ m_fifo = X265_MALLOC(uint8_t, MIN_FIFO_SIZE); m_byteAlloc = MIN_FIFO_SIZE; resetBits();}Bitstream::push_back(uint8_t val)把int值放到fifo中,如果空间不够,就重新分配;void Bit...原创 2021-04-21 22:34:37 · 155 阅读 · 0 评论 -
x265-bitstream.h
类图方法解释 方法/变量 解释 void writeAlignOne() 插入1 bit,直到字节对齐 void writeAlignZero() 插入0 bit,直到字节对齐 void writeByteAlignment() 插入1 bit,然后用0来进行字节对齐 static const uint8_t bitSize[256] ={ 1, 1, 3, 3, 5, 5, 5, 5, 7, 7, 7, 7,...原创 2021-04-19 22:48:41 · 165 阅读 · 0 评论 -
x265-确定slice type-3
下面分析slicetypeDecide的方法的调用:1.创建PreLookaheadGroup,主要的功能是PreLookaheadGroup pre(*this);下面是获取输入列表中,bframes+2个帧到list链表中:int j; for (j = 0; j < m_param->bframes + 2; j++) { if (!curFrame) break; list[j] = curF...原创 2021-04-03 15:20:40 · 358 阅读 · 0 评论 -
x265-确定slice type-2
首先会把要编码的图像,送到slicetype中,如果没有达到指定的数量,就放到队列中;否则,就执行findJob;流程图如下:下面分析findJob的流程,它首先判断inputqueue(放的是待编码的yuv数据),是否大于等于满队列的值和当前没有进行sliecType的确定,以及threadpool是active状态;如果是,会走到sliceType的流程,如下流程图:...原创 2021-04-03 11:41:11 · 219 阅读 · 0 评论 -
x265-确定slice type-1
1.在Encoder的create中创建了,lookAheadThreadPool线程池以及Lookahead。if (m_param->lookaheadThreads > 0) { lookAheadThreadPool = ThreadPool::allocThreadPools(p, pools, 1); } else lookAheadThreadPool = m_threadPool; m_lookahead = n...原创 2021-04-01 20:57:09 · 157 阅读 · 0 评论 -
x265线程池-4
FrameEncoder继承自WaveFront和Thread,因为WaveFront是继承自JobProvider的,所有FrameEncoder是一个jobprovder,同时是一个thread;其中FrameEncoder内部定义了内部类:WeightAnalysis,它继承自BondedTaskGroup,可以被拆分成很多任务;其中的类的关系图如下:...原创 2021-04-01 20:27:23 · 136 阅读 · 0 评论 -
x265线程池-3
ThreadPool的allocThreadPools主要功能是:创建线程池,并计算出来jobprovider的个数和workthread的个数。其中numaNode的结构如下:NUMA体系结构中多了Node的概念,这个概念其实是用来解决core的分组的问题,具体参见下图来理解(图中的OS CPU可以理解thread,那么core就没有在图中画出),从图中可以看出每个Socket里有两个node,共有4个socket,每个socket 2个node,每个node中有8个thread,总共4(S.原创 2021-03-29 20:00:27 · 217 阅读 · 0 评论 -
X265线程池-2
JobProvider的tryWakeone:主要的功能是,找到一个workthread来执行当前的任务void JobProvider::tryWakeOne(){ int id = m_pool->tryAcquireSleepingThread(m_ownerBitmap, ALL_POOL_THREADS);//尝试获取一个睡眠的线程,优先获取它绑定的workthread(m_ownerBitmap) if (id < 0) { m_he...原创 2021-03-29 19:30:24 · 164 阅读 · 0 评论 -
X265-线程池-1
X265多线程原创 2021-03-28 12:03:43 · 183 阅读 · 0 评论 -
x265-创建encdata
原创 2021-03-07 15:31:45 · 372 阅读 · 0 评论 -
X265整体流程-Create
X265整体流程-Create原创 2021-02-21 16:51:30 · 106 阅读 · 0 评论 -
x265 create方法
多线程处理:https://blog.csdn.net/strikedragon/article/details/82776001bool allowPools = !p->numaPools || strcmp(p->numaPools, "none"); // Trim the thread pool if --wpp, --pme, and --pmode are disabled if (!p->bEnableWavefront && !p-...原创 2020-10-26 22:50:52 · 314 阅读 · 0 评论 -
X265源码解析1-Encode方法
1.原创 2020-06-07 20:29:23 · 655 阅读 · 1 评论