一. 參考資料
1. ortp源碼官網地址:http://www.linphone.org/index.php/eng/code_review/ortp
2. ortp文檔地址:http://download.savannah.gnu.org/releases/linphone/ortp/docs/
3. 參考文章:http://blog.csdn.net/bripengandre/article/details/2238818,分析的比較好;
http://ticktick.blog.51cto.com/823160/345642;
http://www.faqs.org/rfcs/;RFC文檔地址,RFC3550對應RTP/RTCP,RFC2362對應RTSP,RFC2208對應RSVP;
http://www.cnpaf.net/,上面有些RFC的分析文章,寫的還可以。
二.ortp入門
1.簡介
一個支持RTP協議的開源的庫,支持RFC3550協議,具有如下特性:
1) C語言編寫,支持Windows、Linux和可能任何的Unix;2) 實現了RFC3550協議,提供簡便易用的接口;
3) 支持多種配置,語音配置默認爲RFC3551;
4) 包含時間戳,支持實時發送接收的包裹調度;
5) 支持單線程下的多個會話;
6) 含有自適應防抖動算法;
7) 支持部分的RFC2833電話事件協議;
8) GPL版權許可;
9) 0.7.0版本後支持RTCP;
10) 含有解析RTCP的接口。
2. ORTP庫簡要說明
ORTP源碼從官方網站下載,壓縮包除了含有源代碼,還包括了幾個sample文件,
1) RtpSender、RTPReceiver(此兩個文件中包含了windowns下vs2008環境的文件);
2) test目錄裏包含rtpsend.c 和rtpreceive.c;
3) 壓縮包目錄下同時也包含了linux下編譯和按照所需的Makefile文件;
3. 編譯安裝及使用(Linux):
1)解壓縮ortp-0.23.0.tar.gz;
2)拷貝至Linux環境;
3)執行make 進行編譯;
4)執行make install進行安裝,安裝後庫文件位於/user/local/lib目錄下,頭文件位於/user/local/include目錄下,
將庫文件和頭文件拷貝至/user/lib和/user/include下,這樣應用程序就可以自動編譯連接;
5)實例文件的編譯:執行gcc -c rtpsend.c -o rtpsend -lortp, gcc -c rtprecv.c -o rtprecv -lortp,分別生成目標文件;
6)實例文件的運行:在兩個終端分別運行,rtpsend test.h264 192.168.1.14 8000 ,rtprecv test 8000;