Windows下编译live555源码

Windos下编译live555源码

  • 环境

    Win7 64位 + VS2012

  • 步骤

    1)源码下载并解压

    在官网上下载最新live555源码,并对其进行解压。

    2)VS下建立工程项目

    • 新建Win32项目

      项目名称为BasicUsageEnvironment,解决方案名称为live555,项目配置属性为静态库,不勾选预编译头

    • 在新建的项目中依次添加新项目,项目名称分别为UsageEnvironment、GroupSock 、LiveMedia,项目对应的配置属性为静态库,不勾选预编译头。

      上面四个项目对应的属性配置如下截图:

     

     

    • 在新建项目中添加新项目,项目名称为MediaServer,项目配置属性为控制台应用程序,空项目

      上面项目对应的属性配置信息如下截图:

     

     

    建立完成后,项目的目录具体如下

     

     

    3)环境配置

    • 拷贝相关文件

      将解压后的源码路径中对应的BasicUsageEnvironment、UsageEnvironment、groupsock、mediaServer、liveMedia目录下的include文件夹、.cpp文件、.hh文件和.h文件拷贝到上面创建项目对应的目录下;

    • 在项目中添加相关.hh、.cpp、.h文件

      在VS下面,分别对5个项目添加现有项,具体项目为上一步拷贝的include中的.hh、.cpp和.h文件;

    • 添加依赖头文件

      针对每个项目,分别添加对应的依赖库。具体为项目->属性->C/C++->常规->附件包含目标,然后添加相关路径,具体路径如下:

      ..\BasicUsageEnvironment\include
      ..\GroupSock\include
      ..\LiveMedia\include
      ..\UsageEnvironment\include
      

      注意:此处其实并不是每个项目都必须添加上面四个,但是添加了上面四个不会错误,具体添加,可以依据对应.cpp中所用的.hh和.h文件来确定。

    4)编译live555

    • 编译静态lib库

      分别对UsageEnvironment、GroupSock、LiveMedia、BasicUsageEnvironment四个项目编译对应的lib库,具体方法如下:

      针对每个项目,首先将对应的项目设为启动项目,然后针对当前的这个项目,进行生成,具体为选中项目,右击,选择生成即可。

      注意:可能会出现‘_snprintf’错误,解决此错误的方法是在选择项目->属性->配置属性->C/C++->预处理器->预处理器定义,添加如下信息:_CRT_SECURE_NO_DEPRECATE

      编译完成后,会在自己的live555工程下面的Debug文件夹下生成对应的四个lib库文件。

    • 编译MediaServer

      添加库目录

      在MediaSever项目源码的live555MediaServer.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") 
      

      注意,此步可以选中MediaServer项目,在对应项目->属性->链接器->输入->附件依赖库中添加四个lib库。

      将MediaServer设为启动项目,点击运行即可。如果编译成功,运行的结果如下图:

       

       

    5)利用VLC播放器播放live服务器下的视频

    • VLC播放器安装设置

      下载并安装VLC播放,并对其进行设置,具体如下:

     

     

    • VLC播放器播放Live555下视频

      将.264的视频文件放在MediaServer文件夹下,然后打开VLC的媒体,在网络协议出填写对应的IP地址,点击播放即可。

     

     

  • 参考文献

    http://blog.csdn.net/ithzhang/article/details/37988815

    http://blog.csdn.net/hjl240/article/details/48159243

    http://www.cnblogs.com/skyseraph/archive/2012/04/11/2442840.html

posted @ 2017-03-05 12:01  苏博  阅读(2238)  评论(0编辑  收藏  举报