1.live555源代码简介
liveMedia项目的源代码包括四个基本的库,各种测试代码以及IVE555 Media Server。
四个基本的库分别是UsageEnvironment&TaskScheduler,groupsock,liveMedia,BasicUsageEnvironment。
UsageEnvironment 和TaskScheduler类用于事件的调度,实现异步读取事件的句柄的设置以及错误信息的输出。另外,还有一个HashTable类定义了一个通用的 hash表,其它代码要用到这个表。这些都是抽象类,在应用程序中基于这些类实现自己的子类。
groupsock类是对网络接口的封装,用于收发数据包。正如名字本身,Groupsock主要是面向多播数据的收发的,它也同时支持单播数据的收发。Groupsock定义了两个构造函数
Groupsock(UsageEnvironment& env, struct in_addr const& groupAddr,
Port port, u_int8_t ttl);
Groupsock(UsageEnvironment& env, struct in_addr const& groupAddr,
struct in_addr const& sourceFilterAddr,
Port port);
前 者是用于SIM(source-independent multicast)组,后者用于SSM(source-specific multicast)组。groupsock库中的Helper例程提供了读写socket等函数,并且屏蔽了不同的操作系统之间的区别,这是在 GroupsockHelper.cpp文件中实现的。
liveMedia库中有一系列类,基类是Medium,这些类针对不同的流媒体类型和编码。
各种测试代码在testProgram目录下,比如openRTSP等,这些代码有助于理解liveMedia的应用。
LIVE555 Media Server是一个纯粹的RTSP服务器。支持多种格式的媒体文件:
* TS流文件,扩展名ts。
* PS流文件,扩展名mpg。
* MPEG-4视频基本流文件,扩展名m4e。
* MP3文件,扩展名mp3。
* WAV文件(PCM),扩展名wav。
* AMR音频文件,扩展名.amr。
* AAC文件,ADTS格式,扩展名aac。
2.在windows下编译live555
(1).下载live555,http://www.live555.com/
(2). 编辑 win32config,TOOLS32=C:\Program Files\Microsoft Visual Studio 9.0\VC
即保证这个路径是你的Vs2008 路径。
(3). 编辑"LINK_OPTS_0 = $(linkdebug) msvcirt.lib" in win32config to "LINK_OPTS_0 = $(linkdebug) msvcrt.lib",由于编译器所要LINK的运行库不一样了
(4). 修改groupsock/makefile.head,替换"INCLUDES = -Iinclude -I../UsageEnvironment/include" 为"INCLUDES = -Iinclude -I../UsageEnvironment/include -DNO_STRSTREAM".
(5). 运行genWindowsMakefiles.cmd 生成VS能够编译的*.mak文件
(6). 将以下内容保存为live/compile.bat
call "C:\Program Files\Microsoft Visual Studio 9\VC\vcvarsall.bat" cd liveMedia nmake /B -f liveMedia.mak cd ../groupsock nmake /B -f groupsock.mak cd ../UsageEnvironment nmake /B -f UsageEnvironment.mak cd ../BasicUsageEnvironment nmake /B -f BasicUsageEnvironment.mak cd ../testProgs nmake /B -f testProgs.mak cd ../mediaServer nmake /B -f mediaServer.mak
有关这一点来说,建议把vs2008的编译环境加入到环境变量中,那么以后需用命令行编译程序都可行了,可以参考http://blog.chinaunix.net/u3/94873/showart_1907792.html的前部分设置VS2008的环境设置。
(7). 在命令行下运行compile.bat,就会看到很多编译过程出现在CMD中了。
以上的编译并不是DEBUG模式,要调试时,应先在win32config加入一行"NODEBUG=1"
进行编译后,可以在要调试的程序路径下输入如:C:\works\VCCode\video\live555-latest\live\testProgs>devenv openRTSP.exe,这样就会把相关的调试环境搭建起来进行调试了。
相关推荐
在本文中,我们将深入...总之,VS2008编译live555项目涉及设置正确的编译环境、添加源文件、配置项目属性以及处理潜在的依赖问题。通过这个过程,你可以构建自己的实时流媒体服务器或客户端,实现高效的多媒体传输。
总之,通过VS2013编译live555项目,可以让你在Windows平台上利用其强大的流媒体处理能力,为你的应用提供RTSP和H264支持。在实践中,理解和掌握项目的编译过程以及如何将其整合到自定义项目中是至关重要的。
《VC6.0环境下编译Live555详解》 Live555是一个著名的开源软件,专注于流媒体的传输和处理。这篇指南将详细介绍如何在Windows操作系统上,使用经典的Visual C++ 6.0(VC6.0)开发环境来编译和调试Live555工程。 ...
这篇内容将详细介绍如何使用VS2010来编译live555源代码。 【描述】:“使用VS2010编译live555的完整工程。” 在Windows环境下,为了在应用程序中集成live555的功能,首先需要从官方获取live555的源代码,并使用一...
在Windows平台上编译live555,我们需要依赖Visual Studio 2013这样的开发环境。下面将详细阐述如何在Windows上进行编译。 首先,下载live555源码。你可以从官方GitHub仓库或者通过其他开源代码托管平台获取最新版本...
在Windows环境下,使用Eclipse编译Live555动态链接库(DLL)是一个涉及多个步骤的过程,主要包括环境配置、项目创建、源代码导入、编译选项设置以及最终的DLL和LIB文件生成。以下是对这个过程的详细说明: 首先,你...
在VS2008下编译Live555,意味着开发者可能是在为Windows系统定制或优化Live555的实现,以适应特定的应用场景。 MediaServer通常是指一个基于Live555库构建的服务器应用,它可以接收、处理并分发多媒体数据。通过...
这个资源是针对开发者在Visual Studio 2010(VS2010)环境下编译Live555的完整工程,可以帮助用户在Windows平台上构建自己的流媒体服务器。 Live555库提供了对多种流媒体协议的支持,如RTSP (Real-Time Streaming ...
编译live555的过程中,你需要熟悉基本的C++编程和构建工具。首先,你需要确保你的开发环境中已经安装了必要的编译器,如GCC或Visual Studio,以及Makefile或其他构建系统。对于Windows用户,可能还需要安装MinGW或...
"这部分信息表明,你获得的是一个开发者在Windows环境下编译过的Live555源代码版本,这意味着你可以直接在Windows系统上使用,而无需自己进行编译步骤,这通常会节省开发者的时间和精力,尤其是在配置编译环境时可能...
《在Windows下使用VS2012编译live555库的实战指南》 live555,作为一款开源的实时流媒体处理库,广泛应用于网络音视频传输领域,支持多种流媒体协议如RTSP、RTP和RTCP等。在Windows环境下,为了能够直接在项目中...
### Live555的编译步骤过程 #### 一、简介 Live555是一款开源的...通过以上步骤,您可以成功地编译Live555源码并生成所需的库文件,进而构建自己的音视频流媒体服务。希望这些详细的信息能帮助您顺利完成编译工作。
在VS2013中编译Live555,可能需要调整源码以适应新版本的编译器,同时保持与旧版本的向后兼容性。 【32位与64位静态库】 静态库是一种将所有依赖项包含在一个单一文件中的库形式。在Windows平台上,有32位(x86)...
著名的开源流媒体 live555 在Windows下编译通过,可执行文件可在Windows下执行,架设Windows平台的流媒体服务器。
【标题】"VS2010下编译好的live555完整工程"涉及的核心知识点是使用Visual Studio 2010编译和构建开源的live555媒体流库。Live555是一个功能强大的C++库,专门用于实时流媒体传输,支持多种网络协议,如RTSP (Real-...
在Windows平台上编译live555,通常我们会使用Visual Studio或者MinGW。这里我们以Visual Studio为例,你需要设置好编译环境,包括安装Visual Studio并配置好C++编译器。打开"build_release32.rar"文件,里面包含的是...
在VS2015中编译live555,开发者可以利用VS的项目管理和编译系统,确保代码在Windows平台上顺利构建并运行。这通常涉及配置编译选项、设置依赖库路径、解决编译警告或错误等一系列步骤。编译完成后,live555库可以与...
它在IT领域中广泛应用,特别是对于构建直播服务器来说,Live555是一个非常重要的工具。 首先,我们要理解Live555的核心功能。它提供了C++库,用于处理多种流媒体协议,如RTSP用于控制多媒体流,RTP用于传输媒体数据...
总结来说,静态编译Live555是为了创建一个独立的、无需依赖外部库的可执行文件。通过修改Makefile并添加`-static`选项,我们可以解决在非MSYS环境中运行时可能出现的缺失库问题。然而,静态编译也带来了文件大小增加...
在Windows环境下部署live555,你需要下载并解压提供的压缩包,里面包含的`live555MediaServer.exe`是预编译的可执行文件。这个文件是整个流媒体服务器的入口点,用于启动服务器进程。关键步骤如下: 1. **放置视频...