SIP and RTP Stack Note: I only searched for C/C++ stacks and
applications. There also exist a lot of stacks and applications for
other programming languages, especially for java. If you are looking
for Java stacks/applications, please ask Google. If you have any
comments or interesting links, or do you want to report broken links,
please contact me
RTP Stacks (mainly open source C/C++ stacks)jrtplib: C++; License:
Free; Homepage:
http://research.edm.luc.ac.be/jori/jrtplib/jrtplib.html
Common Multimedia Library: from UCL London, includes RTP stack; C;
License: Free; Homepage:
http://www-mice.cs.ucl.ac.uk/multimedia/software/common/
ortp: C; License: LGPL; Homepage: http://www.linphone.org/ortp/;
without RTCP, from linphone
GNU ccRTP: C++; License: GPL (with linking exception); Homepage:
http://www.gnu.org/software/ccrtp/
LIVE.COM Streaming Media: C++; License: LGPL; Homepage:
http://live.com/liveMedia/
Morgan RTP DirectShow Filters: C++; License: ?; Homepage:
http://www.morgan-multimedia.com/RTP/; based on liveMedia library
RTP from vovida.org: C++; License: Free; Homepage:
http://www.vovida.org/protocols/downloads/rtp/
RTPlib: RTP library from Lucent Technologies/Cloumbia University; C;
License: Non-exklusive source code license; Homepage:
http://www-out.bell-labs.com/project/RTPlib/
librtp: C; License: GPL; Homepage:
http://gphone.sourceforge.net/template.php3?page=librtp; from
Gnome-o-phone
SIP Stacksdissipate: C++; License: GPL; Homepage:
http://www.div8.net/dissipate/; The original dissipate by Billy Biggs.
dissipate2: C++; License: GPL; Homepage:
http://www.wirlab.net/kphone/; A enhanced dissipate, is part of the
kphone distribution.
GNU osip; C; License: LGPL; Homepage:
http://www.gnu.org/software/osip/; Also known as libosip. Note: The
interface of osip has been changed and from now on it will be called
osip2!
GNU eXosip; C; License: GPL; Homepage:
http://savannah.nongnu.org/projects/exosip/; The extensible osip:
"...It aims to implement a simple high layer API to control the SIP
for sessions establishements and common extensions. Once completed,
this eXtended library should provide an API for call management,
messaging and presence features....
SIP from vovida.org: C++; License: Vovida Software License; Homepage:
http://www.vovida.org/protocols/downloads/sip/
RTP ApplicationsRAT - Robust Audio Tool; Supports a large number of
codecs, ... License: Free; Homepage:
http://www-mice.cs.ucl.ac.uk/multimedia/software/rat/
JMF - Java Media Framework: Can receive and send RTP streams;
Homepage: http://java.sun.com/products/java-media/jmf/
MP3/RTP Plugin for Winamp: Homepage:
http://www.live.com/multikit/winamp-plugin.html
Vomit - Voice over Missconfigured Internet Telephones: Plays back
captured voice conversation; Homepage: http://vomit.xtdnet.nl
RTP Tools: Several RTP utilities from the Columbia University;
Homepage: http://www.cs.columbia.edu/IRT/software/rtptools/
UDP Packet Reflector/Forwarder: A tiny tool which forwards or reflects
UDP packets. You can also add delay and packet loss. Very useful if
you want to test RTP applications. Homepage:
http://www.cs.ucl.ac.uk/staff/s.bhatti/teaching/z02/reflector.html. As
I was not able to compile this tool I searched and found a binary
somewhere in the web. You can download it local
SIP Phone (User Agent, Softphone, Proxy)Ubiquity User Agent: Java
based SIP Client for Windows, very useful, you have to register (free)
to get an license; Homepage: http://www.ubiquity.net/useragent.php
Linphone: A SIP Softphone for Linux (GNOME), needs libosip ans oRTP;
Homepage: http://www.linphone.org/
KPhone: A SIP Softphone for Linux (KDE); Homepage:
http://www.wirlab.net/kphone/index.html
Vovida: Complete SIP Suite for Linux (Uaser Agent, Proxy, ...), very,
very big software contruct; Homepage: Vovida.org
Siphon: Linux SIP Softphone; Homepage:
http://siphon.sourceforge.net/index.html
AVAZ SIP Phone: Cool looking SIP Phone for Windows, crashes very often
at my PC, but works well on my friends PC;
Homepage:http://www.avaz.com/products/software/sip/index.html
EZ-Phone (Evaluation Version): SIP Phone for Windows; Homepage:
http://www.hssworld.com/voip/download.htm
MySIP: SIP User Agent from Siemens; Homepage: http://www.mysip.ch/
MSN Messenger: Microsofts Messenger, Version 4.6 allows also
connections to other SIP servers than microsofts one. Nice design,
works very well. Can be used with the SIP service of iptel.org.
Homepage: http://messenger.microsoft.com; local download of Version
4.6 for Windows NT (2000).
MSN Messenger: Microsofts Messenger, Version 4.7 allows also
connections to other SIP servers than microsofts one. Nice design,
works very well. Can be used with the SIP service of iptel.org.
Homepage: http://messenger.microsoft.com; local download of Version
4.7 for Windows XP.
SJPhone: SIP and H.323 Softphone for Windows, Linux and PocketPC from:
http://www.sjlabs.com/. The configuration for SIP is a little bit
tweaky. And there must not be another SIP client running on port 5060
or the SJPhone won't work.
instant xpressa: The software version of the xpressa SIP phone from
pingtel: http://www.pingtel.com/appdev.jsp; A really impressive SIP
phone with a lot of features. Can be extended with Java programs, but
no free version available.
xphone: A SIP client for Windows and Windows CE,
http://xphone.xten.net/. The beta version is free.
SIPPS: SIP softphone with answering machine and a lot of features,
but, IMHO, a not very intuitive user interface, which should be better
in the next version (try it yourself).http://www.sippstar.com/. A Demo
for testing is available.
SIP Test Utilitysipsak: SIP Swiss Army Knife, very useful test utility
(Linux); Homepage: http://sipsak.berlios.de/
SIPNess: Ortena Networks SIP Messenger, very useful test utility for
windows; Homepage: http://www.ortena.com/download.htm
SIP Applications (Proxy, Location Server)Sip Express Router (ser):
Highspeed GNU SIP proxy with a lot of features and a lot of ongoing
development. Homepage: http://www.iptel.org/ser/. A really cool SIP
proxy - I like it! You can also take a look at the development
homepage.
Asterisk: Linux Software PBX with Gateway, SIP Proxy, Gateway (SIP,
H.323, PSTN, ...); Homepage: http://www.asteriskpbx.com/
Voip/Sip开源项目的一些简单描述
Voip/Sip开源项目的一些简单描述
RESIPROCATE:
http://www.sipfoundry.org/reSIProcate/
reSIProcate is a high performance, object-oriented, C++ sip stack that is compliant with RFC 3261. It includes support for a wide variety of operating systems, including Windows and Linux. It has full support for UDP, TCP, and TLS transports on both IPv4 and IPv6. It also implements the full set of specifications for DNS usage in SIP, including NAPTR and SRV lookups (RFCs: 3263, 2915, 2782) using an asynchronous DNS library (ares).
The reSIProcate project consists of a stack and a small collection of applications. The reSIProcate stack is currently used in two commercial products and is quite stable.
reSIProcate is ideally suited to individuals or companies that are implementing one of the following SIP applications:
- PHONES(EG,EMBEDDED);
- Softphones(any platform);
- Gateway;
- Proxies;
- B2buas,or;
- IM / Presence Servers or Clients.
JRTPLIB:
http://lumumba.luc.ac.be/jori/jrtplib/jrtplib.html
JRTPLIB is an object-oriented library written in C++ which offers support for the Real-time Transport Protocol (RTP), defined in RFC 1889. It makes it very easy to send and receive RTP packets and the RTCP (RTP Control Protocol) functions are handled entirely internally.
WinRTP:
http://www.vovida.org/applications/downloads/winRTP/
The WinRTP (WINRTP) was developed as part of the Cisco IP SoftPhone product. Cisco IP SoftPhone is a PC based telephone integrated with AVVID, and works with the Cisco Call Manager. The primary focus of the WINRTP is to ensure that it works well with other products in AVVID including desktop IP Phones, gateways, etc.
It can also be used as an independent component. ; It is written in C++ ; It is a COM component. (Not an ActiveX control). This makes it easy to use using any programming language like C/C++/Java (using J/Direct) etc.
OSIP:
http://www.gnu.org/software/osip/osip.html
OSIP is an implementation of SIP. This library aims to provide multimedia and telecom software developers an easy and powerful interface to initiate and control SIP based sessions in their applications.
ExOsip:
http://savannah.nongnu.org/projects/exosip/
eXosip is a library that hides the complexity of using the SIP protocol for multimedia session establishment.
其他供利用参考的一些资源 :
http://www.pernau.at/kd/voip/bookmarks-sip-rtp-ua.html (非常详尽的sip/rtp/ua资源列表) http://gphone.sourceforge.net/template.php3?page=librtp (Librtp,可借鉴数据传输部分)
http://www.vovida.org (知名通信开源组织; vocal是基于SIP协议的类OpenH322实现)
http://www.linphone.org/?lang=us ... c307759e92cc4b90bb5 (Linphone)
http://sourceforge.net/projects/srtp (Secure RTP)
http://www.voip-info.org/wiki-Codec+Software ( Codec Software)
http://www.iptel.org/info/produc ... tacks&siponly=1 (iptel提供有一些VOIP资源) http://www.cs.columbia.edu/~hgs/rtp/ (RTP Official Site)
http://www.dataconnection.com/voip/default.htm (dataconnectiond的 VOIP资源)
文章1:在Vovida的基础上实现自己的SIP协议栈 http://www.ctiforum.com/technology/Voip/2003/08/voip0802.htm
文章2: Linux 的应用--VideoStreaming 探讨
http://www.jollen.org/linux/video_streaming
文章3: Linux下的JRTPLIB应用 –
http://www-900.ibm.com/developerWorks/cn/linux/l-mdst/index.shtml
几种开源SIP协议栈对比
几种开源SIP协议栈对比 随着VoIP和NGN技术的发展,H.323时代即将过渡到SIP时代,在H.323的开源协议栈中,Openh323占统治地位,它把一个复杂而又先进的H.323协议栈展现在普通程序员的眼前,为H.323普及立下了汗马功劳。而然当在SIP时代,则出现了群雄割据的状况,SIP相对于H.323 简单,灵活,于是各种协议栈层出不穷,下面将详细对比最具有代表性的5个开源项目:OPAL,VOCAL,sipX,ReSIProcate,oSIP OPAL是Open Phone Abstraction Library,是Openh323的下一个版本,它仍然使用了Openh323的体系结构,并在其基础上进行扩展,同时实现了SIP,H.323,但在音频和视频的编码和传输部分有较大改动。OPAL初衷设计是包含任何电话通信协议,所以其底层进行了高度的抽象化,所以也能够很容易的支持MGCP, PSTN和将来会出现的协议。不过由于Openh323的最后一个版本还在开发中,所以原本6月发布的OPAL也被推迟,现有的OPAL还非常不完善, BUG也非常多,不过相信以Openh323的开发班底,一定能让OPAL十分优秀。 CVS : :pserver:anonymous@cvs.sourceforge.net:/cvsroot/openh323/opal Language : C++ VxWorks port : Yes Win32 port : Yes Linux port : Yes Supports RFC 3261 : Yes Supports RFC 2327 : Yes Supports RFC 3264 : Yes Supports RFC 3263 : No Supports RFC 3515 : Yes Supports RFC 3262 : No Supports RFC 3311 : No TCP : Yes UDP : Yes SIZE : 8MB License : MPL Document : None Samples : UA,GK VOCAL是vovida.org开发的SIP系统,VOCAL应该是目前功能最完善,使用者最多的开源SIP协议栈了.它不只包括了协议栈,还包括了 h323与sip转换网关,对SIP的各种Server的功能支持也非常完善.不过很可惜,不支持windows平台,而且自从vovida被CISCO 收购以后就停止了开发,最后的版本是2003年4月的1.5.0。 CVS : :pserver:anonymous@cvs.vovida.org:/cvsroot/vocal Language : C++ VxWorks port : No Win32 port : Partial Linux port : Yes Supports RFC 3261 : Partial Supports RFC 2327 : Yes Supports RFC 3264 : Supports RFC 3263 : Supports RFC 3515 : Yes Supports RFC 3262 : Supports RFC 3311 : TCP : Yes UDP : Yes SIZE : 6MB License: Vovida software licencse Document : Few Samples : UA,GK,GW sipX是一个SIP系统,由SIPFoundry开发。sipX是从reSIProcate分离出来的,sipX除了包括SIP stack外,还包括了sipXphone,sipXproxy,sipXregistry等等...,由它们构成了完整的SIP系统,而且sipx还支持嵌入式系统,各个模块可以按需取舍。不过可惜是几乎没有任何开发文档。 SVN : http://scm.sipfoundry.org/viewsvn/ Language : C++ VxWorks port : Yes Win32 port : Yes Linux port : Yes Supports RFC 3261 : Yes Supports RFC 2327 : Yes Supports RFC 3264 : Yes Supports RFC 3263 : Yes Supports RFC 3515 : Yes Supports RFC 3262 : No Supports RFC 3311 : No TCP : Yes UDP : Yes SIZE : <4 Mb License : LGPL Document : None Samples : UA,GK,GW ReSIProcate同样也是由SIPFoundry开发,ReSIProcate最开始起源于Vocal,由于Vocal开始只支持 rfc3254,为了支持最新的rfc3261,ReSIProcate诞生了,但现在,ReSIProcate已经成为一个独立SIP协议栈了,它十分稳定,并且很多商业程序都在使用。 SVN : http://scm.sipfoundry.org/viewsvn/resiprocate/main/sip/ Language : C++ VxWorks port : No Win32 port : Yes Linux port : Yes Supports RFC 3261 : Yes Supports RFC 2327 : Yes Supports RFC 3264 : Yes Supports RFC 3263 : Partial Supports RFC 3515 : Yes Supports RFC 3262 : No Supports RFC 3311 : No TCP : Yes UDP : Yes SIZE : < 2.5 Mb License : Vovida Document : Few Samples : None oSIP的开发开始于2000年7月,第一个版本在2001年5月发布,到现在已经发展到2.0.9了。它采用ANSI C编写,而且结构简单小巧,所以速度特别快,它并不提供高层的SIP会话控制API,它主要提供一些解析SIP/SDP消息的API和事务处理的状态机, oSIP的作者还开发了基于oSIP的UA lib:exosip和proxy server lib:partysip. CVS : :ext:anoncvs@savannah.gnu.org:/cvsroot/osip Language : C VxWorks port : Yes Win32 port : Yes Linux port : Yes Supports RFC 3261 : Yes Supports RFC 2327 : Yes Supports RFC 3264 : Yes Supports RFC 3263 : Yes Supports RFC 3515 : No Supports RFC 3262 : No Supports RFC 3311 : Yes TCP : Yes UDP : Yes SIZE : 400kb License : LGPL Samples : UA,GK 综合上述评测,可以看出5种SIP协议栈各有千秋,OPAL有发展潜力,VOCAL比较完善,sipX兼容性好,ReSIProcate教稳定,oSIP小巧而快速。所以要根据应用的不同选择恰当的协议栈进行研究开发。 |