rtmp流媒体编程相关整理2013(crtmpserver,rtmpdump,x264,faac)

转自:http://blog.163.com/[email protected]/blog/static/1834638201392335213119/

相关资料在线版(不定时更新,其实也不会很多,也许一两个月也不会改)

http://www.zhujiatc.esy.es/crtmpserver/index.htm

去年在这进行rtmp相关整理,其实内容早有了,只是整理一下看着方便

时隔一年,也该维护修改一下

修改说明(当然还有很多未完成):

统一使用C语言标准(原有的是C++的一些特性)

代码重新编译整理,完善内存清理,关键地方加注释(每行加注释就不必要了)

增加SDL库使用(自己播放这些数据,应该会比较有趣些)

增加解码部分(考虑中,如果flash支持h265编码的话就不考虑了,今年版本升的还挺快,都16.0)

其它说明

开源库都是在MINGW中编译

使用代码无特殊说明都在VC6下编译通过(Unix下要自己修改,rtmp发送代码改的我很痛苦)

我会做个简易贴吧,供大家提问交流(申请了个免费空间就是想做这个用)

我所会的有限,我也不从事这个,因此不是很专业

我也有自己的工作要做,也不可能专门回复或解决问题

我发的也不一定正确,也有我没注意到的地方

x264跟faac这两个库的使用代码应该挺实用的

如果你用了硬编或ffmpeg我这里所有资料可能对你没用

流媒体现在也不一定要用rtmp,其他的也行,我现在看好liveflv

*********************************************************************************************

2014整理

librtmp一些库的使用,除了VC6,也在mingw和unix(Cent OS 6.5)下进行了测试

https://github.com/bener2008/librtmpexample

2013年就要过去了,想在2014年来临之前整理一番

暂时想到以下,有的还没写,慢慢补充,有新的也会加入,

基本都会提供dome,可能只有基本功能,如何使用,如何优化这看个人的了

有问题欢迎在对应页面留言,个人能力有限,也许无法全部解答,请谅解

无特殊说明编译环境VC6.0

第三方库尽可能包含,环境搭好,也有可能需要手动的地方(如DShow库要自己将头文件提前)

CRtmpserver篇

CRtmpserver源码获取

CRtmpserver在UNIX下编译

CRtmpserver在VS下编译

CRtmpserver简易测试(之后提供简单的工具,这个太复杂了)

CRtmpserver其它问题

RTMPDump篇

RTMPDump编译

使用librtmp发送直播流(FLV源)

使用librtmp接受直播或点播流并保存(FLV文件)

使用librtmp制作点播服务器(FLV源)

FLASH篇(AS3,AS2放弃)

发布端代码

接受端代码(跟发布写在一起了)

JWPlayer使用

X264篇

x264编译

x264使用(yuv源)

x264封装(FLV文件)

AAC篇

faac编译

faac使用(wav源)

faac封装(FLV文件)

视频采集篇

视频捕获(保存yuv文件)

视频捕获并编码x264

音频采集篇

音频捕获(保存wav)

音频捕获并编码aac

综合篇

补充篇

FLV文件解析

WAV文件解析

所有内容打包好生成了电子书,内容还会完善,顶多再维护1年,毕竟时代是不断前进的,有的到那时可能已经旧了

电子书下载http://vdisk.weibo.com/s/unhDlwQMW14Ti

时间: 2024-08-08 10:53:17

rtmp流媒体编程相关整理2013(crtmpserver,rtmpdump,x264,faac)的相关文章

RTMP流媒体服务器 crtmpserver

http://www.oschina.net/p/crtmpservercrtmpserver又称rtmpd是Evostream Media Server(www.evostream.com)的社区版本采用GPLV3授权 其主要作用为一个高性能的RTMP流媒体服务器,可以实现直播与点播功能多终端支持功能,在特定情况下是FMS的良好替代品. 支持RTMP的一堆协议(RTMP,RTMPE, RTMPS, RTMPT, RTMPTE),如果你不想用RED5的话它也是一个很好的选择.

iOS编程规范(整理)

一.文档结构管理 1.建立Libraries文件夹,所有第三方库放入其中. 2.建立Utilities文件夹,自已封装的类放入其中. 3.建立Constants.h头文件,所有的常量定义于其中.Constants.h文件放入Main文件组里面. 4.每个功能块放入一个Group,在目录里建立实际文件夹管理. 5.程序资源文件放入Supporting Files文件夹中.如.plist.数据库资料等. 6.在Supporting Files文件夹下建立Image.Music和Video等相关文件夹

分享一些编程相关的学习资料

之前写过一篇文章:https://www.cnblogs.com/HarrisonHao/p/10926435.html,后来又有人问说哪些资料适合新手入门?有没有什么书籍推荐?成为一个高级程序猿需要掌握哪些知识?对于这些问题,相信大家通过百度.Google 也都能得到答案. 不过我自己之前也收集整理了一些编程相关的电子书,无聊的时候也看过一些网络上的视频课程,这里分享给大家,希望能够对你有所帮助.我自己是做 Java 出身的,里面涉及到的大多是 Java 技术栈相关的东西,内容大概是这样的:

C# 异步编程Task整理(二)异常捕捉

一.在任务并行库中,如果对任务运行Wait.WaitAny.WaitAll等方法,或者求Result属性,都能捕获到AggregateException异常. 可以将AggregateException异常看做是任务并行库编程中最上层的异常. 在任务中捕获的异常,最终都应该包装到AggregateException中.一个任务并行库异常的简单处理示例如下: static void TestTwo() { Task t1= Task.Factory.StartNew(() => { throw n

编程相关的认知科学

编程相关的认知科学 McSweetSc Saturday, August 23, 2014 思维 问题解决 能力 学习 近日,在算法竞赛中的水平大幅下降,TC 已经跌到正好 1199分,回归 Div2...CF 也回紫...不过不要急功近利,这也是一个再学习的机会.近日开着几个坑,今天终于看完了一块,可以填一个了:编程相关的认知科学.另外,还在学习特殊的 C++ 技巧,敬请期待. 本文主要参考:普通心理学,BNU 出版社,摘抄了一部分对算法竞赛,工程,Machine Learning 有关的部分

NSDateFormatter相关整理

//实例化一个NSDateFormatter对象NSDateFormatter *dateFormatter = [[NSDateFormatter alloc]init];//设定时间格式,这里可以设置成自己需要的格式[dateFormatter setDateFormatter:@"yyyy-MM-dd HH:mm:ss"];NSString *currentDate = [dataFormatter stringFromDate:[NSDate date]];注:这里的 [NSD

【编程规范整理】

1.常用变量声明必须从以下当中选择: i,j,k,m,n,p,q (1)for 循环嵌套声明顺序: -两重嵌套:(i,j)->(m,n)->(p,q) -多重嵌套:i->j->k->m->n... (2)计数器一般采用k (3)中间变量一般采用temp,多个中间变量为temp1.temp2.temp3... (4)牵涉到最值:最大值Max,最小值Min(首字母须大写) (5)具体的变量尽量定义有含义的英文,如Score.Grade(首字母须大写) 2.头文件和命名空间之

linux mint系统下编程相关环境配置

学习web开发,用到linux系统,在师兄的帮助下还算不是很费劲的把一些环境配置好了. 清单: skype ibus Google Chrome open-jdk-7.0 android-sdk ant github node.js rvm rvm.ruby rvm.rails yeoman RubyMine IntelliJ IDEA 注意:以下的命令行都是一行一行的在终端中执行 1. skype 和Chrome 在软件管理器中搜索skype,第一个,skype,点击安装. chrome 到h

rtmp流媒体搭建的所需安装包

说明:这是基于nginx rtmp控件  搭建的rtmp流媒体服务器,在此附上的是搭建所需要的安装包,具体的搭建过程看我之前的"ubuntu流媒体搭建" 链接地址:http://pan.baidu.com/s/1pLvrrjt