Tuesday, April 20, 2010

Compile Live555 using VS2005 Part 1

Live555 is a media library that support RTSP and RTP. Below are some instructions to compile Live555 using VS2005. I found them online and it works for me.

1. Modify the line "TOOLS32 = ..." in win32config to point to the VS2005 installed directory in your host machine. For example, "TOOLS32 = C:\Program Files\Microsoft Visual Studio 8\VC" is corresponding to my desktop's configuration.

2. Modify the line "LINK_OPTS_0 = $(linkdebug) msvicrt.lib" in win32config to "LINK_OPTS_0 = $(linkdebug) msvcrt.lib", otherwise VS2005 will report msvicrt.lib cannot be found.

3. Run genWindowsMakefiles.cmd to generate *.mak for VS2005.

4. Modify liveMedia/RTSPOverHTTPServer.cpp to add the following code:
#include
#if defined(__WIN32__) || defined(_WIN32)
#define snprintf _snprintf
#endif

5. Modify groupsock/Makefile.head. Change from "INCLUDES = -Iinclude -I../UsageEnvironment/include" to "INCLUDES = -Iinclude -I../UsageEnvironment/include -DNO_STRSTREAM".

6. Save the following commands into a bat file in the src directory.
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

7. run the saved bat file.

Now it's turn to debug using VS2005, because we don't have a solution file for VS2005, so we need to find another method to debug run.
1. you need to modify win32config to enable debug mode. Just comment the line "NODEBUG=1".
2. File->Open->Project/Solution to load a exe file to be debugged.
3. Debug->Step Over, it will stop at the main function entry point.

1 comment:

  1. how can we find the frame rate please do tell any sample is most welcome

    ReplyDelete

Oracle - Reclaim disk space

Oracle does not release disk space even if you had delete the data or tablespace. If you have enterprise manager, you should use it to  rec...