現(xiàn)在已經(jīng)知道的一些信息:
1.RTSP協(xié)議實(shí)際上只是一個(gè)控制協(xié)議,實(shí)際數(shù)據(jù)還需要一個(gè)傳輸協(xié)議。不過(guò)RTSP也支持在同一個(gè)TCP 連接中傳輸數(shù)據(jù).
2.Xine[3]有一個(gè)librtsp的庫(kù),Mplayer也是Port的這個(gè)部分.我已經(jīng)把Mplayer的這個(gè)部分的代碼剝離出來(lái),已經(jīng)可以單獨(dú)編譯了。
3.LiveMedia是一個(gè)功能比較完整的RTSP/RTP Library. 不過(guò)居然不支持RealAudio/RealVedio.
4.我真正關(guān)心的RealAudio/RealVedio Stream, 居然不是用RTP 協(xié)議傳輸?shù)模莻€(gè)什么RDT的Real自己的非標(biāo)準(zhǔn)協(xié)議. Mplayer/Xine的代碼應(yīng)該都支持這個(gè)協(xié)議.
5.RTSPget[1]是一個(gè)基于Xine code base的RTSP流下載工具,目前還不知道是不是好用.
6.A simplified RTSP cilent[4]是一個(gè)非常不錯(cuò)的入門(mén)資料, 比較容易在直觀感性上建立對(duì)RTSP協(xié)議的概念。
7.Python這個(gè)方面的庫(kù)和實(shí)現(xiàn)好像都比較稀少,有一個(gè)叫shtoom[6]的Project 是一個(gè)基于Python的VoIP實(shí)現(xiàn)。
8.實(shí)踐證明4.這個(gè)消息是比較過(guò)時(shí)的?,F(xiàn)在的RTSP流基本上都是標(biāo)準(zhǔn)的RTP 協(xié)議了。因此重新回頭,實(shí)現(xiàn)一個(gè)基于LiveMedia的RTSPGet. 看看是否可以直接從MPlayer中剝離代碼
Useful URL and reference1/RTSPgethttp://users.comlab.ox.ac.uk/ ian.collier/Misc/rtspget/
2/librtsphttp://rtsp.sourceforge.net/http://cvs.sourceforge.net/ viewcvs.py/rtsp/librtsp/
3/xinehttp://xine.sourceforge.net/
4/A simplified RTSP clienthttp://folk.uio.no/ meccano/reflector/smallclient.html
6/Using Python for Voice over IPhttp://divmod.org/ Home/Projects/Shtoomhttp://www.python.org/ pycon/dc2004/papers/6/
聯(lián)系客服