1078流媒体(MediaServer)开发说明文档

一、项目介绍

1.项目背景

MediaServer流媒体服务器,是为满足JT/T 1078道路运输车辆卫星定位系统视频通信协议开发的流媒体服务器,用于接入终端的实时音视频流,并转换为可在Web页面或播放器播放的流媒体数据,供客户端调用及音视频播放。

该项目终端接入部分采用高性能、基于Libuv框架实现,H264及音视频裸流到FLV,RTSP,RTMP的转换

2.项目当前进展

当前的流媒体服务器,支持满足1078协议的终端音视频接入,GB28181流接入。其中,视频流支持H264格式,音频流支持G711A,ADPCMA,AAC等格式的接入。

服务器并发能力,在CPU 2.0GHz 4核,内存8G情况下,可以同时接入200个以上的音视频流。

3.当前支持的音视频格式及码流

H264:服务端不限制分辨率、帧率

G711A:采样率8000,采样位数8,声道数1

ADPCMA: 采样率8000,采样位数16,声道数1

二、开发说明

1.搭建环境

windows环境:采用VSCode程序编辑器或其他C/C++的程序编辑环境

linux环境:Ubuntu16_04 64位操作系统

               gcc/g++ 5.4.0及以上版本

2.编译:

步骤一:将源码及include和lib文件,拷贝到Ubuntu环境下

步骤二:进入MediaServer目录,并执行make命令进行编译,生成mediaserver可执行文件

说明:如果在编译过程中提示缺少动态库如libuv.so,可执行如下动态库加载脚本:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:../lib

  上面脚本的功能是将源码目录上一层目录的lib库添加到动态库路径中

3.项目目录说明

三、部署说明

1.检查安装环境

(1)软件环境

操作系统:Ubuntu 16.04.1 LTS

gcc/g++工具:g++ (Ubuntu 5.4.0-6ubuntu1~16.04.4) 5.4.0

(2)硬件环境

建议:CPU 2.0GHz, 4核及以上

内存:4G及以上

硬盘:500G及以上

网络:100M带宽或以上

2.安装MediaServer流媒体服务器(默认root用户安装)

(1)将MediaServer_***.tar.gz软件包放置到root目录下,并进行解压

tar -zxvf MediaServer_***.tar.gz

(2)进入到MediaServer目录,并验证mediaserver的动态库是否完整

cd MediaServer

ldd mediaserver

执行该命令后,将列出mediaserver依赖的动态库,如出现 not found,说明配置库不完整,可将上级目录下的lib目录内文件拷贝/usr/local/lib目录下,或者将上级目录下的lib库目录添加到系统的动态库加载路径,执行如下脚本:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:../lib

  上面脚本的功能是将源码目录上一层目录的lib库添加到动态库路径中

注意: 以上语句仅对当前shell生效,如需每次重启或登录shell后生效,请自行百度如何添加脚本语句到对应的启动执行文件中

3.配置文件及相关说明

注意:(此处只讲必要的配置,其他配置项以默认为准)

; auto-generated by mINI class {

[api]
apiDebug=1
secret=035c73f7-bb6b-4889-a715-d9eb2d1925cc

[ffmpeg]
bin=
cmd=%s -re -i %s -c:a aac -strict -2 -ar 44100 -ab 48k -c:v libx264 -f flv %s
log=./ffmpeg/ffmpeg.log

[general]
addMuteAudio=1
enableVhost=0
flowThreshold=1024
maxStreamWaitMS=15000
publishToHls=1
publishToMP4=1
publishToRtxp=1
resetWhenRePlay=1
streamNoneReaderDelayMS=20000
ultraLowDelay=1

[hls]
fileBufSize=65536
filePath=./www
segDur=2
segNum=3
segRetain=5

[http]
charSet=utf-8
keepAliveSecond=15
maxReqSize=4096
notFound=<html><head><title>404 Not Found</title></head><body bgcolor="white"><center><h1>您访问的资源不存在!</h1></center><hr><center>MediaServer</center></body></html>
port=8080
rootPath=./www
sendBufSize=65536
sslport=8443

[multicast]
addrMax=239.255.255.255
addrMin=239.0.0.0
udpTTL=64

[record]
appName=record
fastStart=0
fileBufSize=65536
filePath=./www
fileRepeat=0
fileSecond=3600
sampleMS=500

[rtmp]
handshakeSecond=15
keepAliveSecond=15
modifyStamp=0
port=1935

[rtp]
audioMtuSize=600
clearCount=10
cycleMS=46800000
maxRtpCount=50
videoMtuSize=1400

[rtp_proxy]
checkSource=1
dumpDir=
rtp_type=MP2P
timeoutSec=15

[rtsp]
authBasic=0
directProxy=1
handshakeSecond=15
keepAliveSecond=15
port=554

[shell]
maxReqSize=1024

[terminal]
port=6100

[register]
code=UMRLEORM

; }

[api]

secret=035c73f7-bb6b-4889-a715-d9eb2d1925cc //此处的secret为http访问接口时需要的密钥

[http]

port=80 //flv地址及http接口访问端口,如修改为其他端口,请修正客户端访问时的http端口

[terminal]

port=6100 //设备推流端口

四、运行实例

 

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大鱼>

一分也是爱

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值