一、源代碼的下載:
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