live555 visual 2005 编译
2009-01-21 22:19
260 查看
live555 是一個很有用的多媒體串流程式庫, 其中包含了許多有用的 source code, 例如: 他實做了 RTP/RTCP/RTSP/SIP 串流的接收與傳送, 一些有名的多媒體串流播放器如: VLC 或 MPlayer, 都是使用這個 library 做串流的處理.
所以呢..... 如果想要搞清楚這些串流是怎麼一回事, 最好把 source code 拿回來編譯一下.
你可以在下面拿到 live media 專案的 source code
http://www.live555.com/liveMedia/
因為原來介紹的編譯方法, 已經不適用於 Visual Studio 2005 了, 所以 Steve 先生, 提出了他的解決方案, 你可以在下面的 blog 得到相關的編譯知識.
http://letsgoustc.spaces.live.com/blog/cns!89AD27DFB5E249BA!167.entry
為了怕他的 blog 掛掉, 或者是文章刪除, 所以我這裡複製了一份他的作法, 並根據 live.2008.09.02.tar.gz 這個版本, 做了必要的修正. (如果不做修正, 則會編譯失敗)
如果你按照下面的作法, 應該能夠安安靜靜並且非常順利地編譯完成.
請注意版本
1. liveMedia 版本為 live.2008.09.02
2. Visual Studio 2005
Step 1. 設定編譯器位置
打開 win32config 檔案, 修改 "TOOLS32 = ..." 為 你的 Visual Studio 2005 VC 的位置
ex:
"TOOLS32 = C:/Program Files/Microsoft Visual Studio 8/VC"
Step 2. 修正錯誤的檔名
a. 把 win32config 裡面的
"LINK_OPTS_0 = $(linkdebug) msvicrt.lib" 改成
"LINK_OPTS_0 = $(linkdebug) msvcrt.lib"
Step 3. 建立 Makefile
直接執行 genWindowsMakefiles.cmd
<下面這部分不用作了>
4. Modify liveMedia/RTSPOverHTTPServer.cpp to add the following code:
#include <string.h>
#if defined(__WIN32__) || defined(_WIN32)
#define snprintf _snprintf
#endif
Step 4: 修改程式碼 (下面是 Jing 的修正)
1. 修改 /group/Groupsock.cpp
#if (defined(__WIN32__) || defined(_WIN32)) && !defined(__MINGW32__)
#include <strstrea.h>
改為
#if (defined(__WIN32__) || defined(_WIN32)) && !defined(__MINGW32__)
#include <strstream>
2. 修改 /group/NetInterface.cpp 第 26 行
#include <strstrea.h> 改為 #include <strstream>
Step 5. 新增 Makefile 設定
a. 打開 groupsock/Makefile.head
b. 修改
"INCLUDES = -Iinclude -I../UsageEnvironment/include"
成為
"INCLUDES = -Iinclude -I../UsageEnvironment/include -DNO_STRSTREAM".
Step 6. 建立 build.bat 命令批次檔
把下面的文件內容, 存成 build.bat 檔, 存放在 live 目錄底下
-----------------------------------------------------------------------------------
call "C:/Program Files/Microsoft Visual Studio 8/VC/vcvarsall.bat"
cd liveMedia
nmake /B -f liveMedia.mak
cd ../groupsock
nmake /B -f groupsock.mak
cd ../UsageEnvironment
nmake /B -f UsageEnvironment.mak
cd ../BasicUsageEnvironment
nmake /B -f BasicUsageEnvironment.mak
cd ../testProgs
nmake /B -f testProgs.mak
cd ../mediaServer
nmake /B -f mediaServer.mak
-----------------------------------------------------------------------------------
Step 7. 開始編譯
執行 build.bat
測試與驗證: 你可以在 live/testPogs 裡面找到有名的 openRTSP.exe
接者你就可以把他改成你想要的軟体元件, 例如: DirectShow RTSP source filter
Enjoy.
by Jing
所以呢..... 如果想要搞清楚這些串流是怎麼一回事, 最好把 source code 拿回來編譯一下.
你可以在下面拿到 live media 專案的 source code
http://www.live555.com/liveMedia/
因為原來介紹的編譯方法, 已經不適用於 Visual Studio 2005 了, 所以 Steve 先生, 提出了他的解決方案, 你可以在下面的 blog 得到相關的編譯知識.
http://letsgoustc.spaces.live.com/blog/cns!89AD27DFB5E249BA!167.entry
為了怕他的 blog 掛掉, 或者是文章刪除, 所以我這裡複製了一份他的作法, 並根據 live.2008.09.02.tar.gz 這個版本, 做了必要的修正. (如果不做修正, 則會編譯失敗)
如果你按照下面的作法, 應該能夠安安靜靜並且非常順利地編譯完成.
請注意版本
1. liveMedia 版本為 live.2008.09.02
2. Visual Studio 2005
Step 1. 設定編譯器位置
打開 win32config 檔案, 修改 "TOOLS32 = ..." 為 你的 Visual Studio 2005 VC 的位置
ex:
"TOOLS32 = C:/Program Files/Microsoft Visual Studio 8/VC"
Step 2. 修正錯誤的檔名
a. 把 win32config 裡面的
"LINK_OPTS_0 = $(linkdebug) msvicrt.lib" 改成
"LINK_OPTS_0 = $(linkdebug) msvcrt.lib"
Step 3. 建立 Makefile
直接執行 genWindowsMakefiles.cmd
<下面這部分不用作了>
4. Modify liveMedia/RTSPOverHTTPServer.cpp to add the following code:
#include <string.h>
#if defined(__WIN32__) || defined(_WIN32)
#define snprintf _snprintf
#endif
Step 4: 修改程式碼 (下面是 Jing 的修正)
1. 修改 /group/Groupsock.cpp
#if (defined(__WIN32__) || defined(_WIN32)) && !defined(__MINGW32__)
#include <strstrea.h>
改為
#if (defined(__WIN32__) || defined(_WIN32)) && !defined(__MINGW32__)
#include <strstream>
2. 修改 /group/NetInterface.cpp 第 26 行
#include <strstrea.h> 改為 #include <strstream>
Step 5. 新增 Makefile 設定
a. 打開 groupsock/Makefile.head
b. 修改
"INCLUDES = -Iinclude -I../UsageEnvironment/include"
成為
"INCLUDES = -Iinclude -I../UsageEnvironment/include -DNO_STRSTREAM".
Step 6. 建立 build.bat 命令批次檔
把下面的文件內容, 存成 build.bat 檔, 存放在 live 目錄底下
-----------------------------------------------------------------------------------
call "C:/Program Files/Microsoft Visual Studio 8/VC/vcvarsall.bat"
cd liveMedia
nmake /B -f liveMedia.mak
cd ../groupsock
nmake /B -f groupsock.mak
cd ../UsageEnvironment
nmake /B -f UsageEnvironment.mak
cd ../BasicUsageEnvironment
nmake /B -f BasicUsageEnvironment.mak
cd ../testProgs
nmake /B -f testProgs.mak
cd ../mediaServer
nmake /B -f mediaServer.mak
-----------------------------------------------------------------------------------
Step 7. 開始編譯
執行 build.bat
測試與驗證: 你可以在 live/testPogs 裡面找到有名的 openRTSP.exe
接者你就可以把他改成你想要的軟体元件, 例如: DirectShow RTSP source filter
Enjoy.
by Jing
相关文章推荐
- 【流媒體】live555—VS2010/VS2013 下live555编译、使用及测试
- linux下编译live555
- live555之VS2013库编译
- live555—VS2010 下live555编译、使用及测试
- linux下编译live555
- live555 在 android下通过 ndk 编译
- live555—VS2010 /VS2013 下live555编译、使用及测试
- 在NanoPi-NEO上直接编译 LIVE555
- live555—VS2010 下live555编译、使用及测试
- 【VS开发】【Live555-rtsp】在windows 使用vs2008编译live555
- 【转】live555—VS2010 下live555编译、使用及测试
- VS2015编译Live555
- vc2010编译live555——20131018
- 使用eclipse编译和管理live555源码
- Windows下编译live555源码
- 详解vs2010编译live555
- vlc-android编译问题之live555
- live555 visual 2005 编译(转)
- 【流媒體】live555—VS2008 下live555编译、使用及测试
- 在windows使用vs2008编译live555