这是本人第一次发表这个,首先声明本人也是个菜鸟!都说使用librtmp很简单,但是在网上找了很久,还是被各种大神坑了。
其实我也还是有很多东西不懂,如果下面有什么问题的地方,还请各位大神指点纠正。
1.视频数据必须是H264。
2.音频数据必须是AAC。
3.安装red5服务器安装比较简单。
http://www.cuplayer.com/player/PlayerCode/Red5/2013/0319/760.html只需要安装完前两步就行了,至于设置环境变量,百度一下,很简单。
4.使用第三方库rtmpdump
需要编译一个librtmp库,然后外部可以调用。
如果不知道怎么编译的童鞋可以参考下面这个连接,工程里面都有(工程里面有一份文档,主要介绍的是如何编译librtmp库,这个是我自己写的,我编译的时候也是这样弄的。)菜鸟写的东西也不会藏着捏着,源码、头文件、库文件、dll文件神马的里面都有。
5.工程地址:http://download.csdn.net/detail/zhadenianqu/7462781
使用librtmp推流其实和封装flv文件类似:就是把音频和视频分别封成一个包,然后直接调用API送到底层的队列里面即可。
废话也不多说了。。。直接上代码。。在看代码之前,我需要声明,该工程我测试过,单独的传送H264或者AAC数据都是通过了的。
如果是H264和AAC数据一起传我还没有试过,这个项目我也还没有写完,暂时先拿出来分享一下把,既然都能单独传了。那离成功也不远了。。。