Transcript oRTP

Speaker: Wei-Lin Chen
Advisor: Quincy Wu
Date: 2008/12/30
Outline
 Overview
 Compile oRTP
 oRTP function calls
 Demo
 References
2
Overview
 GNU Lesser General Public License (LGPL)
 C language
 Includes an API to parse incoming RTCP packets
 Support for multiples profiles, AV profile being the one
by default
 A packet scheduler for to send and recv packet "on
time", according to their timestamp
3
Compile oRTP
 Download oRTP source
 ortp-0.13.1
 Compile
 /build/win32native/oRTP.vcproj
 Library
 /build/win32native/Debug/oRTP.lib
4
oRTP function calls
 void ortp_init ()
 初始化oRTP
 void ortp_exit ()
 結束oRTP
 rtpsession * rtp_session_new (int mode)
 RTP_SESSION_RECVONLY
 RTP_SESSION_SENDONLY
 RTP_SESSION_SENDRECV
 void rtp_session_set_ssrc(rtpsession *session, uint32 ssrc)
 32位元 SSRC
5
oRTP function calls(cont.)
 rtp_session_set_payload_type(rtpsession *session,
int paytype)
 成功,則回傳0
 rtp_session_set_remote_addr(rtpsession
*session,char *addr, int port)
 設定目標address跟port
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放進buffer中
7
oRTP function calls(cont.)
 rtp_session_destroy (rtpsession * session)
 結束session
 void ortp_global_stats_display ()
 統計session
8
Demo
 rtpsend send.wav 127.0.0.1 8000
 rtprecv recv.wav 8000
9
References
 oRTP API documentation
 http://www.antisip.com/doc/ortp/index.html
 Po-Chou’s linphone powerpoint
 http://ms11.voip.edu.tw/~webmaster/meeting/951/ppt/Po
Chou/20070108_PoChou_Linphone.ppt
 oRTP code review
 http://www.linphone.org/index.php/eng/code_review/ort
p
 Lesser General Public License(LGPL)
 http://www.openfoundry.org/index.php?option=com_cont
ent&Itemid=252&id=519&lang=en&task=view
10