目前正在自己开发一个RTSP的服务器,虽然已经有live555这样优秀的开源代码,但是本人需要开发的是c语言的版本,所以在这里罗列一些可以参考的开源项目和工具。
1. live555,非常好用的一个RTSP流服务器,c++语言实现,网址是http://www.live555.com/,需要的同学可以到官网去下载源代码,不管你用不用它,它都可以作为你的一个参考和调试工具,因为live555也实现了RTSP客户端,可以利用live555的客户端跟你自己的服务器通信,从而调试你的程序。
2.vlc播放器,可以进行RTSP的视频播放,官方网址是http://www.videolan.org/vlc/,本人在开发过程中就是用的vlc播放器进行测试,也可以看其源代码,对服务器开发也有参考价值。
3. jrtplib库,c++实现,如果RTSP流媒体下层协议是通过RTP/RTCP实现,这个库是开源的,实现了对媒体数据的RTP打包,RTCP包的收发工作,即使不用这个库,也可以参考其打包方法,时间戳的设置等。
4.ortp库,c语言实现,可到http://www.linphone.org/eng/documentation/dev/ortp.html去下载。
开发RTSP服务器需要看的一些文档:
1. RFC2326,介绍RTSP协议的文档;
2. RFC2327,介绍SDP(Session Description Protocol)协议的文档,服务器可以通过该协议描述媒体信息给客户端;
3. RFC3550,RTP/RTCP的文档,;
4. RFC3551,关于RTP的一些音频和视频的文档。
文档比较多,不过如果要完全自己开发的话,这些文档应该都是要仔细研读的。