首页 > 其他 > 详细

Live555学习之一 源代码编译

时间:2014-07-20 10:32:12      阅读:378      评论:0      收藏:0      [点我收藏+]
                                            Live555学习之一 源代码编译

       Live555 是一个为流媒体提供解决方案的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP、RTSP、SIP等的支持。Live555实现了对多种音视频编码格式的音视频数据的流化、接收和处理等支持,包括MPEG、H.263+、DV、JPEG视频和多种音频编码。同时由于良好的设计,Live555非常容易扩展对其他格式的支持。目前,Live555已经被用于多款播放器的流媒体播放功能的实现,如VLC(VideoLan)、MPlayer。

     从今天开始我们将一起学习live555源码,第一步就是学习编译live555源码。虽然网上有不少已经配置好的工程,但自己动手编译却有另外一番乐趣。

  Live555源代码包括四个基本的库,分别是UsageEnvironmentr、groupsock、liveMedia、BasicUsageEnvironment。Media Server(服务器程序)和各种测试代码。
  
本文使用vc2010编译环境。

一、获得live555源码
    1. live555官网http://www.live555.com/
    2. 从csdn下载获得http://download.csdn.net/detail/ithzhang/7654535

    解压后的源码如下图所示:

             bubuko.com,布布扣


     包括上述四个库和mediaServer服务器程序,以及其他的测试代码。

二、创建工程

     1. 打开vc2010,创建win32控制台应用程序,项目名称为BasicUsageEnvironment,指定新解决方案的位置,解决方案名称live555,如下图:
bubuko.com,布布扣

      2.点击确定,在此后的下一步配置中,按下图配置:
             bubuko.com,布布扣

      3.添加新建项目,选择win32控制台项目,项目名称为UsageEnvironment。
  bubuko.com,布布扣

         

      4.点击确定和下一步后,按下图配置

           bubuko.com,布布扣

       5. 重复3的步骤,添加groupsock 、liveMedia项目。

       6. 添加mediaServer工程,并按如下配置:

              bubuko.com,布布扣


         7. 五个工程均创建完毕,添加后的解决方案结构图如下:
                                       bubuko.com,布布扣

三、将源文件加入工程

     1. 打开源码目录,将BasicUsageEnvironment、UsageEnvironment、groupsock、mediaServer、liveMedia目录下的include目录和cpp文件拷贝到上述创建的对应的工程目录下。BasicUsageEnvironment拷贝后的效果如下图:

           bubuko.com,布布扣
       2、接着就是将这些文件添加进对应项目,将每个工程下的cpp添加到源文件筛选器下,头文件则添加到头文件筛选器下。添加后工程结构图:
                                          bubuko.com,布布扣


         3.添加依赖头文件

      方法一、把该项目需要的其他库的头文件拷贝到该工程的include目录下。
      方法二、在属性->C/C++->常规->附加包含目录填写需要包含的头文件路径(推荐)
..\BasicUsageEnvironment\include
..\groupsock\include
..\liveMedia\include
..\UsageEnvironment\include

      

BasicUsageEnvironment添加后效果如下图:

     bubuko.com,布布扣

      添加完毕后,即可编译生成对应lib。

     4. 为MediaServer添加依赖库。
        MediaServer需要依赖上述工程生成的lib,所以需要将以上生成的lib拷贝到MediaServer工程目录下。有种方式:
       一、使用#pragma
         在MediaServer的ive555MediaServer.cpp添加如下代码:


#pragma comment (lib, "Ws2_32.lib") 
#pragma comment (lib, "BasicUsageEnvironment.lib")
#pragma comment (lib, "groupsock.lib")
#pragma comment (lib, "liveMedia.lib")
#pragma comment (lib, "UsageEnvironment.lib")

    

     二、项目->属性->配置属性->连接器->输入->附加依赖项

UsageEnvironment.lib;
liveMedia.lib;
groupsock.lib;
BasicUsageEnvironment.lib;
Ws2_32.lib

此后即可成功编译并生成MediaServer.exe。

      运行后的效果如下图:

            bubuko.com,布布扣


5. 使用VLC测试LIVE555服务器。
    此时RTSP服务器已经开始运行,等待来自客户端的请求。可以使用VLC作为客户端进行测试。
     一、准备一个录像文件, 如aa.264,放在MediaServer.exe同一目录。(没有录像文件,点此处)。

     二、 打开网络串流,输入本机ip+录像文件名。如rtsp://192.168.0.106/aa.264

          bubuko.com,布布扣

     三、播放效果
       bubuko.com,布布扣

     配置好的vc2010工程请点击此处下载。


                                                                     2014、7、20于浙江杭州

Live555学习之一 源代码编译,布布扣,bubuko.com

Live555学习之一 源代码编译

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

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!