博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Live555研究之中的一个 源码编译
阅读量:6577 次
发布时间:2019-06-24

本文共 2117 字,大约阅读时间需要 7 分钟。

                                            Live555研究之中的一个 源代码编译
       Live555 是一个为流媒体提供解决方式的跨平台的C++开源项目,它实现了对标准流媒体传输协议如RTP/RTCP、RTSP、SIP等的支持。Live555实现了对多种音视频编码格式的音视频数据的流化、接收和处理等支持,包含MPEG、H.263+、DV、JPEG视频和多种音频编码。同一时候因为良好的设计。Live555很easy扩展对其它格式的支持。

眼下,Live555已经被用于多款播放器的流媒体播放功能的实现,如VLC(VideoLan)、MPlayer。

     从今天開始我们将一起学习live555源代码,第一步就是学习编译live555源代码。

尽管网上有不少已经配置好的project,但自己动手编译却有另外一番乐趣。

  Live555源代码包含四个主要的库,各自是UsageEnvironmentr、groupsock、liveMedia、BasicUsageEnvironment。Media Server(server程序)和各种測试代码。

  
本文使用vc2010编译环境。
一、获得live555源代码
    1. live555官网
    2. 从csdn下载获得。

    解压后的源代码例如以下图所看到的:

             

     包含上述四个库和mediaServerserver程序,以及其它的測试代码。
二、创建project
     1. 打开vc2010,创建win32控制台应用程序。项目名称为BasicUsageEnvironment,指定新解决方式的位置,解决方式名称live555,例如以下图:
      2.点击确定,在此后的下一步配置中。按下图配置:
             
      3.加入新建项目,选择win32控制台项目,项目名称为UsageEnvironment。
 

         

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

           
       5. 反复3的步骤,加入groupsock 、liveMedia项目。

       6. 加入mediaServerproject。并按例如以下配置:

             

         7. 五个project均创建完成,加入后的解决方式结构图例如以下:
                                       
三、将源文件加入project
     1. 打开源代码文件夹,将BasicUsageEnvironment、UsageEnvironment、groupsock、mediaServer、liveMedia文件夹下的include文件夹和cpp文件复制到上述创建的相应的project文件夹下。

BasicUsageEnvironment拷贝后的效果例如以下图:

           
       2、接着就是将这些文件加入进相应项目,将每一个project下的cpp加入到源文件筛选器下,头文件则加入到头文件筛选器下。

加入后project结构图:

                                          
         3.加入依赖头文件
      方法一、把该项目须要的其它库的头文件复制到该project的include文件夹下。

      方法二、在属性->C/C++->常规->附加包含文件夹填写须要包含的头文件路径(推荐)

..\BasicUsageEnvironment\include..\groupsock\include..\liveMedia\include..\UsageEnvironment\include

      

BasicUsageEnvironment加入后效果例如以下图:

     
      加入完成后,就可以编译生成相应lib。
     4. 为MediaServer加入依赖库。
        MediaServer须要依赖上述project生成的lib。所以须要将以上生成的lib复制到MediaServerproject文件夹下。

有种方式:

       一、使用#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。

      执行后的效果例如以下图:

            

5. 使用VLC測试LIVE555server。
    此时RTSPserver已经開始执行,等待来自client的请求。

能够使用VLC作为client进行測试。

     一、准备一个录像文件, 如aa.264,放在MediaServer.exe同一文件夹。(没有录像文件,)。

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

          
     三、播放效果
       

     配置好的vc2010project请下载。

                                                                     2014、7、20于浙江杭州

你可能感兴趣的文章
firefox无法显示java插件plugin
查看>>
H3C设备之OSPF DR选举
查看>>
View控件Edittext属性
查看>>
List grantee right in oracle
查看>>
骨牌铺方格 ——解题报告
查看>>
Activity生命周期
查看>>
通过VBS编写自动输入账号和密码、自动登录程序的脚本
查看>>
MTK APSoC SDK MT7621编译固件的快速开始
查看>>
深度解析Istio系列之安全模块篇
查看>>
Linux 系统 审计
查看>>
JS -------------------设置弹出框位置屏幕的中间
查看>>
性能测试 vbs使用(一)
查看>>
46Exchange 2010升级到Exchange 2013-移除总部CAS2010
查看>>
1.2 linux哲学思想
查看>>
jQuery基础
查看>>
BZOJ5312:冒险——题解
查看>>
项目管理软件收集
查看>>
Instagram 对 Postgres 性能调校的5个小技巧
查看>>
Codeforces 513G1 513G2 Inversions problem [概率dp]
查看>>
python操作SqlServer
查看>>