ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Ubuntu搭建ZLMediaKit且开启webrtc支持和https支持

2022-04-06 09:31:19  阅读:656  来源: 互联网

标签:opt git ZLMediaKit -- openssl cd https Ubuntu


之前使用的centos7进行ZlMediaKit的编译安装,但是依赖的安装太过麻烦,尤其是ffmpeg的安装和扩展,需要添加很多音视频的编译支持:如h264,265等解编码库支持,否则zlm相关ffmpeg的拉流代理不成功。

如下为编译流程,亲测编译成功且可用,验证成功webrtc的支持和https相关截图和拉流代理支持。

  1.(首选Ubuntu20.04)

   2.拉取代码

apt install -y git
cd /opt
git clone https://github.com/ZLMediaKit/ZLMediaKit.git
cd ruijian-zlmediakit/git submodule update --init

3.linux上要求gcc 版本 >= 4.8(4.7应该也能支持)

 

apt update -y
apt install -y build-essential (如有错误,安装详细错误安装依赖)
gcc -v(查看版本)
###安装cmake apt -y install cmake 

##编译openssl--webrtc中https的扩展支持
apt -y remove openssl
cd /opt
git clone https://github.com/openssl/openssl.git
mv openssl openssl-src && cd openssl-src
./config --prefix=/opt/openssl;make -j4; sudo make install
cd /opt/openssl && cp -rf lib64 lib

##编译libsrtp--webrtc中https的扩展支持
cd /opt
git clone https://gitee.com/mirrors/cisco-libsrtp.git
cd cisco-libsrtp
./configure --enable-openssl --with-openssl-dir=/opt/openssl
make -j4;sudo make install

4.编译zlm
cd /opt/ruijian-zlmediakit
mkdir build
cd build
cmake .. -DENABLE_WEBRTC=true  -DOPENSSL_ROOT_DIR=/opt/openssl  -DOPENSSL_LIBRARIES=/opt/openssl/lib 
cmake --build . --target MediaServer

   5.修改配置文件

  #最多等待未初始化的Track时间,单位毫秒,超时之后会忽略未初始化的Track--优化首屏时间

  [general]

  wait_track_ready_ms=3000

  #webrtc的开启支持

  [rtc]

  #rtc播放推流、播放超时时间

  timeoutSec=15

  #本机对rtc客户端的可见ip,作为服务器时一般为公网ip,置空时,会自动获取网卡

  ipexternIP=

  #rtc udp服务器监听端口号,所有rtc客户端将通过该端口传输stun/dtls/srtp/srtcp数据,#该端口是多线程的,同时支持客户端网络切换导致的连接迁移#需要注意的是,如果服务器在nat内,需要做端口映射    时,必须确保外网映射端口跟该端口一致 port=8000

  #设置remb比特率,非0时关闭twcc并开启remb。该设置在rtc推流时有效,可以控制推流画质

  rembBitRate=1000000

  7.安装ffmpeg---截图,转码工具--增加

  apt install ffmpeg

  6.启动

  cd /opt/ruijian-zlmediakit/release/linux/Debug/

  #通过-h可以了解启动参数

  ./MediaServer -h

  #以守护进程模式启动

  nohu./MediaServer -d &       -----一定要用nohup或则其他的守护进程模式,否则ffmpeg的代理在执行的时候父进程会挂掉,导致zlm操作ffmpeg一直处于卡住状态

  #检查进程启动

  ps aux|grep MediaServer

  有两个进程,其中一个为守护进程,一个为工作的子进程

   

 

 

 

 

标签:opt,git,ZLMediaKit,--,openssl,cd,https,Ubuntu
来源: https://www.cnblogs.com/java-intristing/p/16104996.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有