標籤:rtp jrtplib cmake jthread vs2012
一. JRTPLIB簡介
RTP 是目前解決流媒體即時傳輸問題的最好辦法,而JRTPLIB是一個用C++語言實現的RTP庫,它完全遵循RFC 1889設計,目前已經可以運行在Windows、Linux、FreeBSD、Solaris、Unix和 VxWorks等多種作業系統上。在使用JRTPLIB之前,需要對其進行編譯。
二. 使用的平台與軟體
作業系統:windows 7
軟體:CMake 3.2.3 + Visual Studio 2012
二. 下載連結
由於要對jrtplib
進行編譯,且jrtplib
依賴於jthread
,需要下載以下內容:
jrtplib
:http://research.edm.uhasselt.be/jori/jrtplib/jrtplib-3.9.1.zip
jthread
:http://research.edm.uhasselt.be/~jori/page/index.php?n=CS.Jthread
cmake
:http://www.cmake.org/cmake/resources/software.html
三. 編譯步驟
1.安裝cmake-gui
。
2.將下載的jrtplib
和jthread
壓縮包進行解壓,同時在同目錄下建立jrtplib_build
和jthread_build
檔案夾。
3.以下過程主要是編譯jthread
並產生 jthread.lib
和jthread_d.lib
。
3.1 開啟cmake-gui
,首先添加輸入(where..)和輸出路徑(where to…)點configure
,目標選擇vs 2010 預設編譯器。然後按照檢查參數,確認無誤再點一次configure
,最後點:generate
,產生VS2012工程檔案:
3.2 進入jthread_build
目錄下,使用VS2012開啟sln檔案,編譯的具體方法為:選擇方案總管裡的解決方案jthread
,運行“重建解決方案”;如果沒有出現錯誤,再選擇INSTALL項目,運行“產生”。 debug
和release
各進行一次上述操作即可。
3.3 如果編譯成功(如),會在C:\Program Files\jthread\include\jthread
下產生標頭檔;在lib
檔案夾下產生lib
和cmake
檔案。
4.以下過程主要是編譯jrtplib
產生 jrtplib.lib
和jrtplib_d.lib
。
4.1大致的步驟與上述相同,但在編譯和configure
時需要添加一些配置,同樣先輸入(where..)和輸出路徑(where to…)點configure,目標選擇VS2012預設編譯器,初始的配置結果如下:
其中,需要添加ADDITIONAL_DEBUG_LIBRARIES
,ADDITIONAL_RELEASE_LIBRARIES
和ADDITIONAL_INCLUDE_DIRS
的路徑:
確認無誤再點一次configure
,最後點:generate
,產生VS2012工程檔案:
4.2 開啟sln檔案並重建解決方案:
最後,在debug
和release
下分別產生jrtplib_d.lib
和jrtplib.lib
:
查看以下路徑發現產生了一系列標頭檔,而在lib
檔案夾下會產生jrtplib_d.lib
和jrtplib.lib
以及cmake
檔案。
四、 使用執行個體
1.添加庫
步驟一:
方法1. 將編譯產生的jrtplib.lib
和jthread.lib
庫拷貝到“*:\Program Files\Microsoft Visual Studio 10.0\VC\lib”
下面;
方法2. 將編譯產生的四個lib
庫庫拷貝到當前工程的cpp檔案下
步驟二:
方法1. [菜單]“項目->屬性->配置屬性->連接器->輸入->附加依賴項”裡填寫“jrtplib.lib; jthread.lib; WS2_32.lib”
方法2. pragma
方式,在stdafx.h
檔案中添加以下內容:
#ifdef DEBUG #pragma comment(lib, "jrtplib_d.lib") #pragma comment(lib,"jthread_d.lib") #pragma comment(lib,"WS2_32.lib")#else #pragma comment(lib, "jrtplib.lib") #pragma comment(lib,"jthread.lib") #pragma comment(lib,"WS2_32.lib")#endif
2.添加標頭檔
步驟一:將所有的.h檔案放到一起,如myJRTPLIBHeader
裡面,再添加include
。
步驟二:“項目->屬性->配置屬性->C/C++->常規->附加元件封裝含目錄”。
五.參考連結
http://www.cnblogs.com/skyseraph/archive/2012/04/07/2435540.html
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
流媒體技術:VS2012下RTP開源協議庫JRTPLIB 3.9.1編譯