变换系数量化后,在低频和直流区域有少量较大的值,高频区域有少量不大的值,系数大部分为零,为了更有效的编码,通常根据该统计特性采用熵编码来进一步压缩码率。
熵编码之前,要进行锯齿形扫描和游程编码。
锯齿形扫描
以4x4块为例,量化后系数按下图所示的顺序进行锯齿形扫描,并排列成一个串行数据序列。
游程编码
在变换域,量化后系数用三个量表...
分类:
其他好文 时间:
2014-11-17 17:56:35
阅读次数:
274
1. 为什么要压缩2. 为什么可以压缩去除冗余信息空间冗余:图像相邻像素之间有较强的相关性时间冗余:视频序列的相邻图像之间内容相似编码冗余:不同像素值出现的概率不同视觉冗余:人的视觉系统对某些细节不敏感知识冗余:规律性的结构可由先验知识和背景知识得到3. 视频压缩分类无损压缩(Lossless)压缩...
分类:
其他好文 时间:
2014-11-13 16:13:05
阅读次数:
149
预测法是最简单和实用的视频压缩编码方法,这时压缩编码后传输的并不是像素本身的取样幅值,而是该取样的预测值和实际值之差。
为什么取像素预测值与实际值之差作为传输的信号?因为大量统计表明,同一幅图像的邻近像素之间有着相关性,或者说这些像素值相似。邻近像素之间发生突变或“很不相似”概率很小。而且同帧图像中邻近行之间对应位置的像素之间也有较强的相关性。人们可以利用这些性质进行视频压缩编码。这种预测编...
分类:
其他好文 时间:
2014-11-05 14:52:38
阅读次数:
1094
为客户提供的视频播放的filter的测试程序中,采用正向手动连接的方式(http://blog.csdn.net/mao0514/article/details/40535791),由于不同的视频压缩格式,导致这种方式的缺点是不能及时的播放任意的视频文件。现在,采用在自动连线的graph中添加自己的filter:过程如下:1. 构建自动连线graph;2. 在graph中查找render filt...
分类:
其他好文 时间:
2014-10-30 10:23:42
阅读次数:
220
1. 各种视频压缩标准(MPEG2, MPEG4, H261/2/3/4,X264, T264以及H264(AVC)和HEVC(H265)等的优化,改进,创新。 2. 各种不同平台的(CPU, GPU, DSP, ARM等等)开发,移植优化等, 涉及到的语言包括C, C++, X86汇编,TI .....
分类:
编程语言 时间:
2014-10-20 00:34:25
阅读次数:
219
H.264是由I组织的缩写)和ITU(国际电信联盟的缩写)共同制定的视频压缩标准,J是Joint的缩写,意思就是ISO和ITU共同组成的联合专家组,M是Model的缩写,JM放一起就是指ISO和ITU共同组成的联合专家组提供的H.264编解码器参考模型。JM特点是支持特性好,实用性差。编码和解码的速...
分类:
其他好文 时间:
2014-10-14 15:38:58
阅读次数:
554
打算记录一下基于FFmpeg的封装格式处理方面的例子。包括了视音频分离,复用,封装格式转换。这是第3篇。本文记录一个基于FFmpeg的视音频复用器(Simplest FFmpeg muxer)。视音频复用器(Muxer)即是将视频压缩数据(例如H.264)和音频压缩数据(例如AAC)合并到一个封装格式数据(例如MKV)中去。如图所示。在这个过程中并不涉及到编码和解码。 本文记录的程序将一个H.26...
分类:
其他好文 时间:
2014-10-09 02:52:08
阅读次数:
325
打算记录一下基于FFmpeg的封装格式处理方面的例子。包括了视音频分离,复用,封装格式转换。这是第2篇。本文记录一个基于FFmpeg的视音频分离器(Simplest FFmpeg demuxer)。视音频分离器(Demuxer)即是将封装格式数据(例如MKV)中的视频压缩数据(例如H.264)和音频压缩数据(例如AAC)分离开。如图所示。在这个过程中并不涉及到编码和解码。本文记录的程序可以将一个M...
分类:
其他好文 时间:
2014-10-08 03:47:34
阅读次数:
485
视频压缩中,每帧代表一幅精巧的图像。而在实际压缩时,会採取各种算法降低数据的容量,当中IPB就是最常见的。简单地说,I帧是关键帧,属于帧内压缩。就是和AVI的压缩是一样的。P是向前搜索的意思。B是双向搜索。他们都是基于I帧来压缩数据。I帧表示关键帧,你能够理解为这一帧画面的完整保留;解码时仅仅须要本...
分类:
其他好文 时间:
2014-09-28 15:56:33
阅读次数:
211