
H.264
文章平均质量分 51
a514223963
这个作者很懒,什么都没留下…
展开
-
帧间预测编码原理
帧间预测编码是利用视频图像帧间的相关性,即时间相关性,来达到图像压缩的目的,广泛用于普通电视、会议电视、视频电话、高清晰度电视的压缩编码。在图像传输技术中,活动图像特别是电视图像是关注的主要对象。活动图像是由时间上以帧周期为间隔的连续图像帧组成的时间图像序列,它在时间上比在空间上具有更大的相关性。大多数电视图像相邻帧间细节变化是很小的,即视频图像帧间具有很强的相关性,利用帧所具有的相关性的转载 2012-08-22 10:52:46 · 13499 阅读 · 0 评论 -
基于上下文的自适应变长编码CAVLC原理与流程
CAVLC -CAVLC概念AVLC的全称是Context-Adaptive Varialbe-Length Coding,即基于上下文的自适应变长编码。CAVLC的本质是变长编码,它的特性主要体现在自适应能力上,CAVLC可以根据已编码句法元素的情况动态的选择编码中使用的码表,并且随时更新拖尾系数后缀的长度,从而获得极高的压缩比。H.264标准中使用CAVLC对4×4模块的亮度和色度残差数据转载 2012-08-23 11:03:02 · 4910 阅读 · 0 评论 -
IPB帧编码顺序(解码顺序)与显示顺序
仅仅使用前一个显示的基准帧来编码的帧被称为P帧,同时使用前一个显示帧和未来帧作为基准帧进行编码的帧称为B帧.在通常的场景中,编解码器编码一个I帧,然后向前跳过几个帧,用编码I帧作为基准帧对一个未来P帧进行编码,然后跳回到I帧之后的下一个帧。编码的I帧和P帧之间的帧被编码为B帧。之后,编码器会再次跳过几个帧,使用第一个P帧作为基准帧编码另外一个P帧,然后再次跳回,用B帧填充显示序列中的空隙。转载 2012-08-24 17:23:26 · 2166 阅读 · 0 评论 -
VC环境下是如何读入*.yuv序列
#include #include void main() { char *Y; char *Cb; char *Cr; int width = 352, height = 288; FILE *fp; FILE *fy; int i; Y = (char*)malloc(width*height); Cb = (char*)malloc转载 2012-09-19 00:46:56 · 1427 阅读 · 0 评论 -
如何参考x264,使用libx264编码实时的摄像头图像帧
参考x264工程中的实现,关键的几个地方:p_read_frame( &pic, opt->hin, i_frame + opt->i_seek )//实际是int read_frame_yuv( x264_picture_t *p_pic, hnd_t handle, int i_frame )i_file += Encode_frame( h, opt->hout, &pic );转载 2012-09-18 21:56:03 · 5013 阅读 · 0 评论 -
int get_frame_total_yuv( hnd_t handle )函数解释
1. 语句i_frame_total = p_get_frame_total( opt->hin ),实现得到输入文件的总帧数,由于p_get_frame_total = get_frame_total_yuv(见Parse()函数),所以调用函数int get_frame_total_yuv( hnd_t handle ),在文件muxers.c中,原型如下:int get_frame_转载 2012-09-19 19:33:30 · 1003 阅读 · 0 评论 -
libx264是干什么的?
一个是编码库一个是包含 main 函数的编码例程一个是各个模块具体实现,另外一个是调用这些模块进行编码,我的理解libx264 是库文件,有特定的函数暴露给外界调用,你在你的程序你直接调用这些接口函数,然后将命令行参数传递到接口函数的参数里即可。跟动态链接库的使用方式类似,不妨去学学动态链接库。谢谢firstime,给我茅塞顿开的一句话。http://bbs.china原创 2012-09-19 21:22:50 · 1718 阅读 · 0 评论