一、源代碼的下載下傳:
1. 從官網上下載下傳,下載下傳位址:http://www.live555.com/liveMedia/public/,選擇live555-latest.tar.gz下載下傳。
2. 從CSDN上下載下傳,此版本為20150807版本,下載下傳位址:http://download.csdn.net/detail/hjl240/9067307
下載下傳後解壓,可以看到如下檔案:
下載下傳好源代碼後開始編譯。
編譯環境為:win7 64位+Visual Studio 2012
二、建立工程
1. 建立win32控制台應用程式,項目名稱為BasicUsageEnvironment,解決方案名稱為live555,如下圖:
2. 點選确定,按照下圖進行配置:
3. 添加新項目,選擇win32控制台項目,項目名稱為UsageEnvironment,如下圖:
4. 點選确定和下一步,按下圖配置:
5. 重複上面的步驟,添加groupsock 、liveMedia項目。
6. 添加mediaServer工程,并按如下配置:
7. 五個工程均建立完畢,添加後的解決方案結構圖如下:
三、添加源檔案到工程
1. 打開源代碼目錄,将BasicUsageEnvironment、UsageEnvironment、groupsock、mediaServer、liveMedia目錄下的include目錄、cpp檔案和hh檔案拷貝到上述建立的對應的工程目錄下。BasicUsageEnvironment拷貝後的效果如下圖:
2. 接着就是将這些檔案添加進對應項目,将每個工程下的cpp添加到源檔案篩選器下,頭檔案則添加到頭檔案篩選器下。添加後工程結構圖:
3. 添加依賴頭檔案。在屬性->C/C++->正常->附加包含目錄填寫需要包含的頭檔案路徑
..\BasicUsageEnvironment\include
..\groupsock\include
..\liveMedia\include
..\UsageEnvironment\include
BasicUsageEnvironment添加後效果如下圖,其他4個工程項目重複操作即可。
添加完畢後,即可編譯生成對應的lib。
四、編譯項目
1. 分别編譯UsageEnvironment、groupsock、liveMedia、BasicUsageEnvironment這4個項目,注意編譯每個項目的時候需要将每個項目設定為啟動項目。編譯過程中,會出現如下錯誤:
錯誤 1 error C4996: ‘_snprintf’:This function or variable may be unsafe. Consider using _snprintf_s instead. Todisable deprecation, use _CRT_SECURE_NO_WARNINGS.
錯誤是說 使用這個_snprintf函數不安全。
解決這個錯誤的方法是:
更改預處理定義:
項目->屬性->配置屬性->C/C++ ->預處理器 -> 預處理器定義,增加:
_CRT_SECURE_NO_DEPRECATE
如下圖:
這個錯誤解決後,分别編譯4個項目,編譯完成之後在Debug目錄下會生成4個項目的lib庫檔案,如下:
2. 為MediaServer添加依賴庫。
在MediaServer的ive555MediaServer.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")
3. 将mediaServer項目設定為啟動項目,編譯運作該項目,運作結果如下:
五、程式測試:使用VLC測試LIVE555伺服器
1. 将test.264檔案放到mediaServer檔案夾下。運作程式,此時,RTSP伺服器已經開始運作,等待來自用戶端的請求。test.264檔案可以在這裡下載下傳。
2. 打開網絡串流,輸入本機ip+錄像檔案名。如rtsp://192.168.110.241/test.264,如下:
若不知道本機IP,可以打開開始---附件---指令提示符,輸入ipconfig指令進行檢視本機IP。如下:
3. 播放效果如下:
整個測試工程下載下傳位址:http://download.csdn.net/detail/hjl240/9070923