Windos下編譯live555源碼
-
環境
Win7 64位 + VS2012
-
步驟
1)源碼下載並解壓
在官網上下載最新live555源碼,並對其進行解壓。
2)VS下建立工程項目
-
新建Win32項目
項目名稱為BasicUsageEnvironment,解決方案名稱為live555,項目配置屬性為靜態庫,不勾選預編譯頭。
-
在新建的項目中依次添加新項目,項目名稱分別為UsageEnvironment、GroupSock 、LiveMedia,項目對應的配置屬性為靜態庫,不勾選預編譯頭。
上面四個項目對應的屬性配置如下截圖:
-
在新建項目中添加新項目,項目名稱為MediaServer,項目配置屬性為控制台應用程序,空項目。
上面項目對應的屬性配置信息如下截圖:
建立完成后,項目的目錄具體如下
3)環境配置
-
拷貝相關文件
將解壓后的源碼路徑中對應的BasicUsageEnvironment、UsageEnvironment、groupsock、mediaServer、liveMedia目錄下的include文件夾、.cpp文件、.hh文件和.h文件拷貝到上面創建項目對應的目錄下;
-
在項目中添加相關.hh、.cpp、.h文件
在VS下面,分別對5個項目添加現有項,具體項目為上一步拷貝的include中的.hh、.cpp和.h文件;
-
添加依賴頭文件
針對每個項目,分別添加對應的依賴庫。具體為項目->屬性->C/C++->常規->附件包含目標,然后添加相關路徑,具體路徑如下:
..\BasicUsageEnvironment\include ..\GroupSock\include ..\LiveMedia\include ..\UsageEnvironment\include注意:此處其實並不是每個項目都必須添加上面四個,但是添加了上面四個不會錯誤,具體添加,可以依據對應.cpp中所用的.hh和.h文件來確定。
4)編譯live555
-
編譯靜態lib庫
分別對UsageEnvironment、GroupSock、LiveMedia、BasicUsageEnvironment四個項目編譯對應的lib庫,具體方法如下:
針對每個項目,首先將對應的項目設為啟動項目,然后針對當前的這個項目,進行生成,具體為選中項目,右擊,選擇生成即可。
注意:可能會出現‘_snprintf’錯誤,解決此錯誤的方法是在選擇項目->屬性->配置屬性->C/C++->預處理器->預處理器定義,添加如下信息:_CRT_SECURE_NO_DEPRECATE
編譯完成后,會在自己的live555工程下面的Debug文件夾下生成對應的四個lib庫文件。
-
編譯MediaServer
添加庫目錄
在MediaSever項目源碼的live555MediaServer.cpp文件中添加如下程序:
#pragma comment (lib, "Ws2_32.lib") #pragma comment (lib, "../Debug/BasicUsageEnvironment.lib") #pragma comment (lib, "../Debug/GroupSock.lib") #pragma comment (lib, "../Debug/LiveMedia.lib") #pragma comment (lib, "../Debug/UsageEnvironment.lib")注意,此步可以選中MediaServer項目,在對應項目->屬性->鏈接器->輸入->附件依賴庫中添加四個lib庫。
將MediaServer設為啟動項目,點擊運行即可。如果編譯成功,運行的結果如下圖:
5)利用VLC播放器播放live服務器下的視頻
-
VLC播放器安裝設置
下載並安裝VLC播放,並對其進行設置,具體如下:
-
VLC播放器播放Live555下視頻
將.264的視頻文件放在MediaServer文件夾下,然后打開VLC的媒體,在網絡協議出填寫對應的IP地址,點擊播放即可。
-
-
參考文獻
http://blog.csdn.net/ithzhang/article/details/37988815
http://blog.csdn.net/hjl240/article/details/48159243
http://www.cnblogs.com/skyseraph/archive/2012/04/11/2442840.html
