详解vs2010编译live555
来源:互联网 发布:算法导论捷径 编辑:程序博客网 时间:2024/05/18 03:39
公司项目需求,最近在学习流媒体方面的知识,了解到live555可以将视频,音频流化,通过rtsp协议传输,正符合公司项目的要求。
网上看了几篇关于如何在VS2010下编译live555的博客,但是在编译过程中还是遇到了很多问题,浪费了很多时间,现在把自己的编译过程整理下来,希望能给其他人提供一点帮助,让他们少走一点弯路。
-----------------------------------------------------------------------------------
1.参考博客
http://www.cnblogs.com/skyseraph/archive/2012/04/11/2442840.html
http://blog.csdn.net/lf8289/article/details/7785898
特别感谢这两位的博客,讲的很详细!!!
2.live555介绍
Live555 是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP、RTSP、SIP等的支持。Live555实现了对多种音视频编码格式的音视频数据的流化、接收和处理等支持,包括MPEG、H.263+、DV、JPEG视频和多种音频编码。同时由于良好的设计,Live555非常容易扩展对其他格式的支持。目前,Live555已经被用于多款播放器的流媒体播放功能的实现,如VLC(VideoLan)、MPlayer。(摘自百度百科:live555)
3.live555源码下载
live555官网提供了整套源码供我们下载,参考,我们下载live555-latest.tar.gz即可。
http://www.live555.com/liveMedia/public/
4.lib编译
(1)打开VS2010,新建一个解决方案,此处我命名为myLive555,在该解决方案下新建BasicUsageEnvironment,groupsock,liveMedia,UsageEnvironment四个工程,应用类型为静态库
(即生成的是lib动态链接库,我们也可以在工程名右击->属性->配置属性->常规->项目默认值->配置类型中配置这个属性)。
(2)将源码对应目录下的文件复制到对应目录下(*.cpp,*.c,*.hh,*.h以及include目录),我们可以使用控制台的命令去完成复制工作,这样比较省事。
指令格式:copy源目录(文件) 目标路径
然后将对应的文件添加到对应的项目目录(*.c,*.cpp添加至源文件,*.hh,*.h添加至头文件)
(3)分别对四个工程做以下配置
设置动态链接库的输出属性,属性->配置属性->常规->输出目录,设置为..\outFile,他生成的lib文件将保存在上级目录的outFile文件夹下
导入头文件,属性->配置属性->C/C++->附加包含目录。
BasicUsageEnviroment除了需要引入自己的include文件夹下的文件外,同时还需要引入groupsock、UsageEnvironment文件夹下的include文件。
groupsock需要引入的文件为:自己include下的文件,BasicUsageEnvironment、UsageEnvironment文件夹下的include文件。
liveMedia需要引入的文件为:自己include下的文件,BasicUsageEnvironment、groupsock、UsageEnvironment文件夹下的include文件。
UsageEnvironment需要引入的文件为:自己include下的文件,BasicUsageEnvironment、groupsock文件夹下的include文件。
(4)分别编译4个工程,我们可以在outFile下找到编译生成的四个动态链接库。
5.mediaServer编译
mediaServer是一个支持rtsp协议传输的服务程序,他生成一个exe可执行程序。
(1)在myLive555下创建mediaServer工程,程序类型为控制台应用程序(win32),并把源码中的文件拷贝到对应的目录下。
(2)将mediaServer设置成启动项目(右击解决方案->属性->通用属性->启动项目)
(3)添加头文件,在mediaServer目录下创建一个文件夹include,将其他4个工程下的所有头文件拷贝到这个include文件夹下(*.hh,*.h,包括这四个工程下的include文件夹下的内容),设置附加头文件目录。
(4)将生成的动态链接库拷贝到..\Debug下(..\Debug需要mediaSever编译过一次才会生成,不管编译正确与否)。
(5)设置引用的库目录。
(6)添加相关的依赖项Ws2_32.lib;BasicUsageEnvironment.lib;groupsock.lib;liveMedia.lib;UsageEnvironment.lib;
(7)编译完成后编译运行即可看到效果啦。
打开Debug下的mediaServer.exe,可以开到如下,说明成功了。
6.使用VLC流媒体视频播放器测试
找一个MP3,mkv等格式的文件,放在Debug目录下,与mediaServer.exe在同一个目录下面。
-----------------------------------------------------------------------------------
至此,在VS2010下编译live555就成功了,我们也可以通过局域网内的其他计算机使用vlc播放服务端的视频。
如果想要编译好的库文件,请猛击这里
如果想要编译好的整个工程,请猛击这里
- 详解vs2010编译live555
- live555 --- vs2010编译
- XP + vs2010 live555编译
- vs2010编译 live555
- vs2010编译live555源码
- live555 vs2010编译版本
- win7+vs2010编译live555
- 使用VS2010编译live555
- vs2010编译live555源码
- vs2010编译live555源码
- 使用VS2010编译live555
- vs2010编译live555
- vs2010编译最新live555
- 在VS2010环境编译live555
- vs2010编译调试live555之1--新建解决方案,编译live555
- live555—VS2010 下live555编译、使用及测试
- live555—VS2010 下live555编译、使用及测试
- 【流媒體】live555—VS2010 下live555编译、使用及测试
- 写给想成为产品经理的学生们
- “友盟统计”使用范例
- 责任链模式——Head First Design Patterns
- 准备入住CSDN,开始自己的计算机相关的写作生涯
- U盘安装Win 8系统
- 详解vs2010编译live555
- 解析12306订票流程
- deque用法
- win系统安装(基础篇)
- sdutoj 1299 最长上升子序列
- 十一.Java基础_File类
- Visual Studio 2012+Xamarin开发安卓应用
- 解释器模式——Head First Design Patterns
- Dom4j解析和创建XML文档