live555 推RTSP音视频流总结(一) 交叉编译

**

一、简介

**

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

二 、历史版本下载

http://download.videolan.org/pub/contrib/live555/
我用的是 live.2018.07.01.tar.gz 版本

**

三、交叉编译

**
基于mips平台
1.copy一份平台的config文件

cp config.armlinux config.mips-linux-uclibc-gnu

2.修改配置文件

CROSS_COMPILE?=		mips-linux-uclibc-gnu-
COMPILE_OPTS =		$(INCLUDES) -I. -O2 -fPIC -DSOCKLEN_T=socklen_t -DNO_SSTREAM=1 -D_LARGEFILE_SOURCE=1 -D_FILE_OFFSET_BITS=64 -DLOCALE_NOT_USED
C =			c
C_COMPILER =		$(CROSS_COMPILE)gcc
C_FLAGS =		$(COMPILE_OPTS)
CPP =			cpp
CPLUSPLUS_COMPILER =	$(CROSS_COMPILE)g++
CPLUSPLUS_FLAGS =	$(COMPILE_OPTS) -Wall -DBSD=1
OBJ =			o
LINK =			$(CROSS_COMPILE)g++ -o
LINK_OPTS =		
CONSOLE_LINK_OPTS =	$(LINK_OPTS)
LIBRARY_LINK =		$(CROSS_COMPILE)ar cr 
LIBRARY_LINK_OPTS =	$(LINK_OPTS)
LIB_SUFFIX =			a
LIBS_FOR_CONSOLE_APPLICATION =
LIBS_FOR_GUI_APPLICATION =
EXE =

3.生成makefile 编译

./genMakefiles mips-linux-uclibc-gnu
make	

4.常见错误
我老是遇到OpenSSL的报错 好无奈 至今不知道怎么解决 无奈只好换了版本 ==

然后就编译over了

5.把静态库搞出来
liveMedia项目的源代码包括四个基本的库,各种测试代码以及IVE555 Media Server。

四个基本的库分别是UsageEnvironment&TaskScheduler,groupsock,liveMedia,BasicUsageEnvironment。

直接执行脚本

#!/bin/sh


rm -rf live555/
mkdir live555
INSTALL_DIR_LIVE=/home/ky

#create file
cd live555
mkdir lib
mkdir include
cd -

cd live555/include
mkdir liveMedia
mkdir BasicUsageEnvironment
mkdir UsageEnvironment
mkdir groupsock
cd -

#copy include
cp -rf liveMedia/include/*.*h ${INSTALL_DIR_LIVE}/live555/include/liveMedia
cp -rf BasicUsageEnvironment/include/*.*h ${INSTALL_DIR_LIVE}/live555/include/BasicUsageEnvironment
cp -rf UsageEnvironment/include/*.*h ${INSTALL_DIR_LIVE}/live555/include/UsageEnvironment
cp -rf groupsock/include/*.*h ${INSTALL_DIR_LIVE}/live555/include/groupsock

#copy lib
cp -rf liveMedia/libliveMedia.a ${INSTALL_DIR_LIVE}/live555/lib
cp -rf BasicUsageEnvironment/libBasicUsageEnvironment.a ${INSTALL_DIR_LIVE}/live555/lib
cp -rf UsageEnvironment/libUsageEnvironment.a ${INSTALL_DIR_LIVE}/live555/lib
cp -rf groupsock/libgroupsock.a ${INSTALL_DIR_LIVE}/live555/lib

echo "-------------- install library done ------------------"

完了 接下来就可以写应用程序为所欲为啦

在这之前 还是拜读一下雷神的文章 ==

你可能感兴趣的:(live555)