- 博客(6)
- 资源 (5)
- 收藏
- 关注
原创 rtmp协议简单解析以及用其发送h264的flv文件
Adobe公司太坑人了,官方文档公布的信息根本就不全,如果只按照他上面的写的话,是没法用的。按照文档上面的流程,server和client连接之后首先要进行握手,握手成功之后进行一些交互,其实就是交互一些信息以确认大家都是用的同一个协议,交互成功之后就开始传数据了。 首先说下rtmp协议包的格式。握手之后,rtmp传输一个数据默认的长度是128bytes,这128bytes不包
2012-09-24 04:25:02
17201
3
转载 CRC校验算法原理
CRC校验采用多项式编码方法。被处理的数据块可以看作是一个二进制多项式,例如,10110101可以看作是2^7+2^5+2^4+2^2+2^0,多项式乘除法运算过程与普通代数多项式的乘除法相同。多项式的加减法运算以2为模,加减时不进,错位,和逻辑异或运算一致。采用CRC校验时,发送方和接收方用同一个生成多项式g(x),并且g(x)的首位和最后一位的系数必须为1。CRC的处理方法是:发送
2012-09-01 17:06:32
2508
转载 没有想的到,只有想不到,strlen源码剖析
学习高效编程的有效途径之一就是阅读高手写的源代码,作为底层的函数库,实现必然高效。strlen的函数原形如下:size_t strlen(const char *str);strlen返回str中字符的个数,其中str为一个以'\0'结尾的字符串(a null-terminated string)。1. 简单实现如果不管效率,最简单的实现只需要4
2012-09-01 17:04:29
1368
原创 RTMP协议中的AMF数据
这里有一个连接,amf0和amf3的库,我下了看了下,还是自己写吧,哎。http://wooce.iteye.com/blog/1396278参考crtmpserver的代码写的,其中有amf.h文件。 AMF数据第一个byte为此数据的类型,类型有:Number 0×00 double类型Boolean 0×01
2012-09-01 16:52:59
7017
原创 将h.264视频流封装成flv格式文件(二.开始动手)
前面写了flv文件的解析,有h264裸流的话就开始封装吧。网上大多数都是用ffmeg库来做这个工作的,哎,学习资料少学不会,还是自己动手吧。封装前要先了解下h.264格式,只需要知道一点点就可以了,我看了h.264官方文档,我靠,3百多页,还全是中文,什么,是中文?既然是中文的我就勉强看下吧,我靠,看起来还很复杂的,果断不看了,不需要,也没时间,我又不做解码,这东西具体步骤资料又少,基本都是那
2012-09-01 16:25:41
21271
9
原创 将h.264视频流封装成flv格式文件(一.flv格式)
flv文件的格式其实网上资料还是不少,但是怎么封装成flv却不多。看了不少资料,找到了一个觉得还比较靠谱的:http://www.cnblogs.com/chef/archive/2012/07/18/2597279.html其实flv还是挺简单的一个视频格式,下面就来先谈一谈FLV的格式吧。 FLV是一个二进制文件,简单来说,其是由一个文件头(FLV header)和很多tag组成(
2012-09-01 15:56:37
25966
2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人