
视频编解码
文章平均质量分 60
火山之父
React Native
展开
-
一种可分级防丢包的视频压缩想法
特别声明,本文描述的是作者的一个想法,所以还没有验证实验,所以对本文内容的准确性不负任何责任。:)最近在研究视频聊天中,比较关注视频编码的三个主要指标:编码复杂度,编码效率,码流的抗丢包性,参见《互联网点对点视频聊天中视频编解码的优化调研》.突然有了个想法,可以在这三者中得到均衡。主要思路描述如下:编码端:取原始图像缩小2倍,然后对低分辨率的图像按照H264的桢内和桢间预测编码,得原创 2013-11-26 09:39:32 · 1002 阅读 · 0 评论 -
通过patch更好理解x264代码的小技巧
最近在看x264代码,比较痛苦的是有些魔数不知道是什么意思。或者不知道某些语句的含义。例如:在文件common/common.h中#define QP_MAX_SPEC (51+QP_BD_OFFSET)#define QP_MAX (QP_MAX_SPEC+18)#define QP_MAX_MAX (51+2*6+18)QP_BD_OFFSET 好理解,是由于引进了hi原创 2013-11-14 17:31:11 · 1288 阅读 · 2 评论 -
x264 自适应量化模式 (AQ Adaptive Quantization) 初探
什么是自适应量化自适应量化就是根据宏块的复杂度来调整每个宏块量化时的量化参数。 看一下x264对于相应的参数说明 aq-mode 自适应量化模式(Adaptive Quantization Mode) 默认: 1 若关闭AQ,x264倾向于对低细节度的平滑区域使用过低码率,AQ可以更好把码率分配到各个宏块中. 该选项改变AQ重新安排码率的幅度: 0: 禁止A原创 2013-11-13 17:00:09 · 6840 阅读 · 1 评论 -
x264的堆栈对齐 x264_stack_align
x264_stack_align 为什么要对齐,因为AVX2指令需要32字节对齐。 怎么对齐,在common/x86/cpu-a.asm 一句话,就是模拟一个空调用,这个调用只是对齐堆栈和转调真实的函数 %if ARCH_X86_64;----------------------------------------------------------------------原创 2013-11-13 16:58:54 · 1750 阅读 · 0 评论 -
H264的CAVLC探秘
CAVLC的算法搜索出来的资料比较多,但是怎么理解这个CAVLC呢。 CAVLC=CA+VLC VLC(Variable-Length Code) 变长编码 想想霍夫曼编码吧。还不明白,google下吧。 CA (Context Adaptivie) 上下文自适应 上下文-就是利用图像的空间冗余性,上边和左边的4x4块残差和当前快的是具有相关性。 那具体怎么设计这个编码算法原创 2013-11-13 16:56:32 · 7663 阅读 · 0 评论 -
x264汇编语言的资料
最近对x264的汇编优化感兴趣,为了抵抗日已衰退的记忆, 写个文章记录下最近看到的资料 这个地址是x264当前的一个开发者(Jason Garrett-Glaser)的博客,有些一手的资料很重要阿 “http://x264dev.multimedia.cx/” 下面的地址是关于汇编语言的分类 http://x264dev.multimedia.cx/archives/categ原创 2013-11-13 16:51:45 · 1342 阅读 · 0 评论 -
互联网点对点视频聊天中视频编解码的优化调研
当前视频编码的现状和问题视频编码本质上是一种有损压缩,无损的压缩极限是熵。有损压缩的极限是人的视觉的差别感知能力 — Weber定理。 现在占统治地位的编解码方案都是基于块的混合编码架构。利用变换编码, 预测编码、熵编码三类经典技术, 去除视频信号的空域冗余、时域冗余及统计冗余。在这个技术路线上,从ITU-T的h261/2/3/4/5系列,到ISO/IEC的MPEG1/2/4 都是通过原创 2013-11-13 17:04:04 · 2251 阅读 · 0 评论 -
x264的哈达玛变换(hadamard)的实现和优化
hadamard 变换理论 很多网页都有介绍,我就不拷贝了,给两个链接。 下面的是harvey mudd college 的一个“计算机图像处理分析”课件中哈达玛变换的一个章节 (JASON GARRETT-GLASER x264的主开发就是在这个学校上过学阿。很棒的一个工程类大学) http://fourier.eng.hmc.edu/e161/lectures/wht/inde原创 2013-11-13 17:01:14 · 3524 阅读 · 0 评论 -
指数哥伦布编码
最近在看JM86的代码,不是很清楚为什么要采用指数哥伦布编码,百度了下, 下面的讨论帖不错哦。 http://bbs.chinavideo.org/viewthread.php?tid=5632 摘录: “采用指数哥伦布码的优势在于:一方面,它的硬件复杂度比较低,可以根据闭合公式解析码字,无需查表;另一方面,它可以根据编码元素的概率分布灵活地确定以k阶指数哥伦布码编码,如果k选得恰原创 2013-11-13 16:55:09 · 1408 阅读 · 0 评论 -
视频播放过程中,解码时利用宏块信息来自动插入广告
之前有牛人可以在视频播放时候在草地或者墙上插入任意广告。今天在看代码时,突然想到,是否可以利用解码过程中的信息快速找到平坦的区域呢?在桢内预测时,16x16的亮度预测意味着这块区域比较平坦。桢间预测,大的分割宏快也意味着比较平坦,而且如果运动矢量很小,那么基本上可以确定这块区域比较平坦,请看下面的分析例子:原创 2013-11-29 14:10:50 · 1350 阅读 · 0 评论