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项目设置为启动项目,编译运行该项目,运行结果如下:
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