Transcript oRTP

oRTP - A RTP Library
Speaker: Wei-Lin Chen
Advisor: Quincy Wu
Date: 2010/01/07
Outline
 Overview
 Compile oRTP
 oRTP function calls
 Demo
 References
2
Overview
 C language
 Includes an API to parse incoming RTCP packets
 Support for multiples profiles, AV (Audio/Video)
profile being the one by default
 A packet scheduler for to send and receive
packet "on time", according to their timestamp
 Support SRTP (Secure RTP) feature
3
Compile oRTP (windows)
 Download oRTP source
 ortp-0.16.1 (latest version)
 Compile
 /build/win32native/oRTP.vcproj
 Library
 /build/win32native/Debug/oRTP.lib
 Set Environment
 ortp_env
4
oRTP function calls
 void ortp_init()
 初始化oRTP
 rtpsession * rtp_session_new(int mode)
 RTP_SESSION_RECVONLY
 RTP_SESSION_SENDONLY
 RTP_SESSION_SENDRECV
 rtp_session_set_payload_type(RtpSession
*session, int paytype)
 成功,則回傳0
5
PT
oRTP function calls(cont.)
 rtp_session_set_remote_addr(RtpSession
*session,char *addr, int port)
 設定目標IP address跟port
 Sender only
 rtp_session_set_local_addr(RtpSession
*session,char *addr, int port)
 設定本機IP address跟port
 Receiver only
6
oRTP function calls(cont.)
 rtp_session_send_with_ts(RtpSession
*session, char *buffer, int len, uint32 userts)
 將buffer中的data裝入rtp發送到目標位址
 rtp_session_recv_with_ts(RtpSession *session,
char *buffer, int len, uint32 userts, int
* have_more)
 將接收到的rtp session放進buffer中
7
oRTP function calls(cont.)
 rtp_session_destroy(RtpSession * session)
 結束session
 void ortp_exit()
 結束oRTP
 void ortp_global_stats_display()
 統計session
8
Demo
 Sender
 IP address:10.10.19.184
 Port: 5566
 Filename: small.wav
 Receiver
 Port: 5566
 Filename: PEACE.wav
9
References
 RTP: A Transport Protocol for Real-Time Applications
(RFC 3550)
 http://ms11.voip.edu.tw/%7Eweilin/paper/rfc3550.txt
 oRTP API documentation
 http://www.antisip.com/doc/ortp/index.html
 oRTP code review
 http://www.linphone.org/index.php/eng/code_review/ortp
 Lesser General Public License(LGPL)
 http://www.openfoundry.org/index.php?option=com_cont
ent&Itemid=252&id=519&lang=en&task=view
10