SIP and RTP Stack

来源:互联网 发布:udp常用端口号 编辑:程序博客网 时间:2024/04/27 23:39

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协议栈对比
2007年05月23日 星期三 11:19

几种开源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小巧而快速。所以要根据应用的不同选择恰当的协议栈进行研究开发。


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/bloghome/archive/2009/08/05/4413493.aspx

原创粉丝点击