音视频压缩技术
NewThinker_wei
这个作者很懒,什么都没留下…
展开
-
从Slice_Header学习H.264(三.1)--相关细节之 POC的计算
三、slice头相关的一些细节 1.关于POC的计算 图像序列号(POC)主要用于标识图象的播放顺序,同时还用于在对帧间预测片解码时,标记参考图像的初始图像序号。 对于每个编码帧有两个图像序列号,分别称为顶场序列号(TopFieldOrderCnt)和底场序列号(BottomFieldOrderCnt );对于每个编码场有一个图像序列号,对原创 2013-04-10 19:34:05 · 9661 阅读 · 1 评论 -
负载类型为 MPEG-4 Elementary Stream 的 RTP 包的封包讲解
PTP Payload Format for MPEG-4 Elementary Stream(YC)版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://volvet.blogbus.com/logs/7986021.html 1. 说明 本文的目的是描述MPEG4 Video ES在RTP中的传输格式,本文的主要内容参考了RF转载 2013-05-31 01:43:57 · 2917 阅读 · 0 评论 -
h.264 rtp打包
来自:http://blog.csdn.net/maopig/article/details/6667338(疑点看下面的红字)payload,H.264 RTP payload 格式on 2011-2-18 in 博文摘选 | 0 Comment1. 网络抽象层单元类型 (NALU)NALU 头由一个字节组成, 它的语法如下:+---------------+转载 2013-05-31 01:39:08 · 1415 阅读 · 0 评论 -
[技术资料]H.264视频的RTP荷载格式
(注意Marker Bit的设置: 对于RTP时戳指示的访问单元的最后一个包本位进行设置,符合视频格式M位的常规使用,以允许有效 缓冲处理布局。对于聚合包(STAP,MTAP),RTP头中的M位必须设置成最后一个NAL单元如果被传送在 单个RTP包中时M位对应的值。解码器可以使用本位作为早期最后一个包的指示,但是不可以依赖本 属性。转载 2013-05-31 01:28:06 · 1663 阅读 · 0 评论 -
RTSP协议详解(先留着,以后用到时候好找)
原文来自: http://blog.csdn.net/chenyanxu/article/details/2728427关于 RTSP.RTSP协议是一个非常类似HTTP协议的流控制协议。它们都使用纯文本来发送信息,而且rtsp协议的语法也和HTTP类似。Rtsp一开始这样设计,也是为了能够兼容使用以前写的HTTP协议分析代码 。这是个好消息。它们主要的区别是HTTP协议是没有转载 2013-05-26 22:29:37 · 2103 阅读 · 0 评论 -
MP4文件格式的解析,以及MP4文件的分割算法
原文来自: http://www.cnblogs.com/haibindev/archive/2011/10/17/2214518.htmlmp4应该算是一种比较复杂的媒体格式了,起源于QuickTime。以前研究的时候就花了一番的功夫,尤其是如何把它完美的融入到视频点播应用中,更是费尽了心思,主要问题是处理mp4文件庞大的“媒体头”。当然,流媒体点播也可以采用flv格式来做,flv也转载 2013-05-19 20:29:14 · 1117 阅读 · 0 评论 -
wav文件解析
前两天在公司做了个wav文件的播放器和波形显示的东东,回来之后忽然想起一直没有做过总结,趁现在还有空赶紧整理一下...一.WAV格式文件头1.综述:wav文件是由四个大块构成的,按照从前到后的顺序依次为RIFF WAVE Chunk,Format Chunk,Fact Chunk(可选),Data Chunk.具体如下图所示:----------------------------转载 2013-05-18 10:29:13 · 1090 阅读 · 0 评论 -
ffmpeg 新老接口问题及对照集锦
出处:http://bbs.rosoo.net/thread-6268-1-1.html 网上很多关于ffmpeg (libav)的资料都是N年以前的,而事实上ffmpeg数年来一直在“以时俱进”,因此无论是一些新手,或者号称为老手的人,有时候难免出头痛。。。。。。为了解决大家的头痛的问题,特列一个贴子,把ffmpeg相关的一些常见的、版本的问题列举出来,供大家参考,同时也请大转载 2013-05-01 10:49:13 · 1265 阅读 · 0 评论 -
FFMPEG解码流程
FFMPEG解码流程: 1. 注册所有容器格式和CODEC: av_register_all() 2. 打开文件: av_open_input_file() 3. 从文件中提取流信息: av_find_stream_info() 4. 穷举所有的流,查找其中种类为CODEC_TYPE_VIDEO 5. 查找对应的解码器: avcodec_find_decoder()转载 2013-04-30 10:21:57 · 2448 阅读 · 0 评论 -
x264参数介绍
转自:http://wmnmtm.blog.163.com/blog/static/3824571420115673052227/【 翻译 】x264参数介绍(一、帧类型和码率控制)2010年10月2日评论发表评论翻译自:http://mewiki.project357.com/wiki/X264_Settings,水平有限,勿吝指教。第二部分:http转载 2013-04-24 12:13:03 · 4625 阅读 · 0 评论 -
从Slice_Header学习H.264(一)--片头语法元素介绍
从Slice_Header学习H.264 写在前面:$ H.264我是结合标准和毕厚杰的书一块学的。看句法语义时最是头疼,一大堆的元素,很需要耐心。标准中在介绍某个元素的语义时,经常会突然冒出与之相关的另一个变量,这个变量一般都在前文中讲过,但那么多变量怎么可能看一遍就记住?这时我只能去前面重新找这个变量再看一遍。没办法,H.264这个庞大的结构内部肯定是环环相扣的,各个部分联原创 2013-04-10 19:32:21 · 11684 阅读 · 1 评论 -
从Slice_Header学习H.264(三.3)--相关细节之 FMO
3.关于FMO(多片组) FMO,指灵活块映射,也即多片组模式。关于片组的概念:一个片组由若干个宏块组成,可以按照某种规则将一个图像中的某些宏块(这些宏块可以在图像中的任意位置,不是必须相邻)划分成一个组,就是一个片组。我们已经知道,H.264对图像进行编解码时是以片为单位的,一个片也包含一系列的宏块。在有了片组的概念后,划分片时还有一个规则:一个片中的所有宏块,必须属于同一个片组原创 2013-04-10 19:35:25 · 5940 阅读 · 4 评论 -
从Slice_Header学习H.264(三.2)--相关细节之 参考图像列表
2.参考图像列表 解码器每解码完一幅图像,都会判断该图像是否用于参考,并标记相应的参考图像,而且会在解码下一幅图像前,将参考图像列表初始化好;解码下一幅图像时,先根据图像的片头信息判断是否需要对参考列表重排序,如果需要,就根据片头的附加信息重新排序,之后开始对图像解码,解码完成后,重新进行参考图像的标记……如此循环。(IDR帧不需要参考帧,它解码完后标记产生第一个参考图像,供之后的图像解码原创 2013-04-10 19:34:57 · 5412 阅读 · 0 评论 -
从Slice_Header学习H.264(二)--片头的子语法项目
二、slice头的三个子语法项目 1.ref_pic_list_reordering( ) 参考图像列表重排序语法 $ 上面已经提到,编码器给每个参考帧都会分配一个唯一性的标识,即句法元素frame_num。但是,当编码器要指定当前图像的参考图像时,并不是直接指定该图像的frame_num 值,而是使用通过下面步骤最终得出的 ref_id 号:frame_num ->原创 2013-04-10 19:32:51 · 4080 阅读 · 0 评论 -
视频压缩原理之 预测编码
预测法是最简单和实用的视频压缩方法,压缩编码后传输的并不是像素本身的取样幅值,而是该取样的预测值和实际值之差(就是传输差分值)。 预测法的流程图如下:(在量化过程中,会产生量化误差) 预测法大致可分为帧内预测和帧间预测。下面将依次介绍两种预测法,还会提到重叠块运动补偿,最后再细说一下运动估计。 帧内预测: 帧内预测的具体方法是原创 2013-03-25 21:47:17 · 11909 阅读 · 1 评论 -
H.264 NALU语法结构
补充笔记:关于VCL:VCL层是指视频编码层,VCL NAL 单元是指那些nal_unit_type 值等于 1 到 5(包括 1 和 5)的 NAL 单元,这些单元都包含了视频数据。所有其他的 NAL 单元都称作非 VCL NAL 单元,PPS和SPS都是非VCLNAL单元。关于字节流NAL单元的格式:(起始码中0的长度)除了流开头的字节流NAL单元,大多字节流NAL单元的开头没有l转载 2013-04-01 20:53:01 · 34774 阅读 · 1 评论