流媒體技術:VS2012下RTP開源協議庫JRTPLIB 3.9.1編譯

來源:互聯網
上載者:User

標籤: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.將下載的jrtplibjthread壓縮包進行解壓,同時在同目錄下建立jrtplib_buildjthread_build檔案夾。

3.以下過程主要是編譯jthread 並產生 jthread.libjthread_d.lib

3.1 開啟cmake-gui,首先添加輸入(where..)和輸出路徑(where to…)點configure,目標選擇vs 2010 預設編譯器。然後按照檢查參數,確認無誤再點一次configure,最後點:generate,產生VS2012工程檔案:

3.2 進入jthread_build目錄下,使用VS2012開啟sln檔案,編譯的具體方法為:選擇方案總管裡的解決方案jthread,運行“重建解決方案”;如果沒有出現錯誤,再選擇INSTALL項目,運行“產生”。 debugrelease各進行一次上述操作即可。

3.3 如果編譯成功(如),會在C:\Program Files\jthread\include\jthread下產生標頭檔;在lib檔案夾下產生libcmake檔案。

4.以下過程主要是編譯jrtplib 產生 jrtplib.libjrtplib_d.lib

4.1大致的步驟與上述相同,但在編譯和configure時需要添加一些配置,同樣先輸入(where..)和輸出路徑(where to…)點configure,目標選擇VS2012預設編譯器,初始的配置結果如下:

其中,需要添加ADDITIONAL_DEBUG_LIBRARIESADDITIONAL_RELEASE_LIBRARIESADDITIONAL_INCLUDE_DIRS 的路徑:

確認無誤再點一次configure,最後點:generate,產生VS2012工程檔案:

4.2 開啟sln檔案並重建解決方案:

最後,在debugrelease下分別產生jrtplib_d.libjrtplib.lib

查看以下路徑發現產生了一系列標頭檔,而在lib檔案夾下會產生jrtplib_d.libjrtplib.lib以及cmake檔案。

四、 使用執行個體

1.添加庫

步驟一:

方法1. 將編譯產生的jrtplib.libjthread.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編譯

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.