一. 参考资料
1. ortp源码官网地址:http://www.linphone.org/index.php/eng/code_review/ortp
2. ortp文档地址:http://download.savannah.gnu.org/releases/linphone/ortp/docs/
3. 参考文章:http://blog.csdn.net/bripengandre/article/details/2238818,分析的比较好;
http://ticktick.blog.51cto.com/823160/345642;
http://www.faqs.org/rfcs/;RFC文档地址,RFC3550对应RTP/RTCP,RFC2362对应RTSP,RFC2208对应RSVP;
http://www.cnpaf.net/,上面有些RFC的分析文章,写的还可以。
二.ortp入门
1.简介
一个支持RTP协议的开源的库,支持RFC3550协议,具有如下特性:
1) C语言编写,支持Windows、Linux和可能任何的Unix;2) 实现了RFC3550协议,提供简便易用的接口;
3) 支持多种配置,语音配置默认为RFC3551;
4) 包含时间戳,支持实时发送接收的包裹调度;
5) 支持单线程下的多个会话;
6) 含有自适应防抖动算法;
7) 支持部分的RFC2833电话事件协议;
8) GPL版权许可;
9) 0.7.0版本后支持RTCP;
10) 含有解析RTCP的接口。
2. ORTP库简要说明
ORTP源码从官方网站下载,压缩包除了含有源代码,还包括了几个sample文件,
1) RtpSender、RTPReceiver(此两个文件中包含了windowns下vs2008环境的文件);
2) test目录里包含rtpsend.c 和rtpreceive.c;
3) 压缩包目录下同时也包含了linux下编译和按照所需的Makefile文件;
3. 编译安装及使用(Linux):
1)解压缩ortp-0.23.0.tar.gz;
2)拷贝至Linux环境;
3)执行make 进行编译;
4)执行make install进行安装,安装后库文件位于/user/local/lib目录下,头文件位于/user/local/include目录下,
将库文件和头文件拷贝至/user/lib和/user/include下,这样应用程序就可以自动编译连接;
5)实例文件的编译:执行gcc -c rtpsend.c -o rtpsend -lortp, gcc -c rtprecv.c -o rtprecv -lortp,分别生成目标文件;
6)实例文件的运行:在两个终端分别运行,rtpsend test.h264 192.168.1.14 8000 ,rtprecv test 8000;