webrtc笔记(4): kurento 部署
kurento是一个开源的webrtc mcu服务器,按官方的文档,建议在ubtntu上安装,过程如下:
注:建议先切换到root身份,如果不是root身份登录的,下列命令,请自行加上sudo . 另:kurento 6.10版,要求ubtntu最低版本为16.04,低版本的安装将出错。
1、安装gunpg
apt-get update \
&& apt-get install --no-install-recommends --yes \
gnupg
2、确定ubuntu版本
cat /etc/issue
Ubuntu 18.04.2 LTS \n \l #输出
3、设置变量(根据上一步的结果 ,下面2行选1行执行)
# Run ONLY ONE of these lines:
DISTRO="xenial" # KMS for Ubuntu 16.04 (Xenial)
DISTRO="bionic" # KMS for Ubuntu 18.04 (Bionic)
4、添加key
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5AFA7A83
5、设置kurento.list
tee "/etc/apt/sources.list.d/kurento.list" >/dev/null <<EOF
# Kurento Media Server - Release packages
deb [arch=amd64] http://ubuntu.openvidu.io/6.10.0 $DISTRO kms6
EOF
注:这一步的作用,实际就是在"/etc/apt/sources.list.d/kurento.list" 这个文件中,追加一行deb [arch=amd64] http://ubuntu.openvidu.io/6.10.0 $DISTRO kms6。
执行时,terminal终端中,按顺序把上面4行,都复制进去就行(注:1个字符都不要少)
6、安装kurento media server
apt-get update \
&& apt-get install --yes kurento-media-server
7、启动/停止
sudo service kurento-media-server start
sudo service kurento-media-server stop
kurento有几个重要的配置文件:
/etc/kurento/kurento.conf.json
/etc/kurento/modules/kurento/MediaElement.conf.ini
/etc/kurento/modules/kurento/SdpEndpoint.conf.ini
/etc/kurento/modules/kurento/WebRtcEndpoint.conf.ini
/etc/kurento/modules/kurento/HttpEndpoint.conf.ini
/etc/default/kurento-media-server
建议大家看看里面的内容,比如修改监听端口,配置stun/turn server地址等,都可以在里面找到答案。
另外,如果不想麻烦,只是想快速搭建一个kurento环境,也可以直接用docker部署(或直接上dockerhub)。
kurento提供了一系列详细的demo示例,github地址为:https://github.com/Kurento/kurento-tutorial-java.git, 强烈建议大家先跑跑这些hello world,有些还是蛮有意思的,比如下面这个:
通过一个人脸识别的filter,动态给人物带上一顶超级玛丽的小帽子。
如果用docker本机运行,调试tutorial代码时,要注意端口,默认情况下,这些代码连接本机8888端口,如果docker对外暴露的端口不是这个,需要在idea中参考下图修改kurento server的websocket地址:
参考:
https://doc-kurento.readthedocs.io/en/6.10.0/user/installation.html
https://doc-kurento.readthedocs.io/en/6.10.0/user/configuration.html
https://doc-kurento.readthedocs.io/en/6.10.0/user/tutorials.html
https://zhuanlan.zhihu.com/p/38585455
webrtc笔记(4): kurento 部署的更多相关文章
- (转)ZooKeeper 笔记(1) 安装部署及hello world
ZooKeeper 笔记(1) 安装部署及hello world 先给一堆学习文档,方便以后查看 官网文档地址大全: OverView(概述) http://zookeeper.apache.or ...
- ActionBarSherlock学习笔记 第一篇——部署
ActionBarSherlock学习笔记 第一篇--部署 ActionBarSherlock是JakeWharton编写的一个开源框架,使用这个框架,可以实现在所有的Android ...
- OGG学习笔记04-OGG复制部署快速参考
OGG学习笔记04-OGG复制部署快速参考 源端:Oracle 10.2.0.5 RAC + ASM 节点1 Public IP地址:192.168.1.27 目标端:Oracle 10.2.0.5 ...
- webrtc笔记(5): 基于kurento media server的多人视频聊天示例
这是kurento tutorial中的一个例子(groupCall),用于多人音视频通话,效果如下: 登录界面: 聊天界面: 运行方法: 1.本地用docker把kurento server跑起来 ...
- 《Maven实战》笔记-8-构建部署Web项目
一.Web项目结构 1.显式指定Web项目打包方式为war: 2.默认目录 根据“约定大于配置”的规则,Web项目的类及资源文件默认位置为src/main/java和src/main/reso ...
- webrtc笔记(1): 基于coturn项目的stun/turn服务器搭建
webrtc是google推出的基于浏览器的实时语音-视频通讯架构.其典型的应用场景为:浏览器之间端到端(p2p)实时视频对话,但由于网络环境的复杂性(比如:路由器/交换机/防火墙等),浏览器与浏览器 ...
- webrtc笔记(3): 多人视频通讯常用架构Mesh/MCU/SFU
问题:为什么要搞这么多架构? webrtc虽然是一项主要使用p2p的实时通讯技术,本应该是无中心化节点的,但是在一些大型多人通讯场景,如果都使用端对端直连,端上会遇到很带宽和性能的问题,所以就有了下图 ...
- ZooKeeper 笔记(1) 安装部署及hello world
先给一堆学习文档,方便以后查看 官网文档地址大全: OverView(概述) http://zookeeper.apache.org/doc/r3.4.6/zookeeperOver.html Get ...
- 《BI项目笔记》SSAS部署时发生的问题——元数据管理器中存在错误 解决办法
在生成和部署期间出错.是否继续?解决办法: 用Microsoft SQL Server Management Studio 连接Analysis Services 然后删除多维数据库,重新布署.这样就 ...
随机推荐
- 【Linux命令】常用系统工作命令11个(echo、date、reboot、poweroff、wget、ps、top、pidof、kill、killall、pkill)
目录 echo命令 date命令 reboot命令 poweroff命令 wget命令 ps命令 top命令 pidof命令 kill命令 killall命令 pkill命令 一.echo命令 ech ...
- wcharczuk/go-chart图表上使用中文字体
https://github.com/wcharczuk/go-chart/ 默认使用的字体是 roboto.Roboto,不支持中文. // GetDefaultFont returns the ...
- python3在mac下配置
目的 https://github.com/VonSdite/Plane_Wars 可以本地跑起来. 下载并安装python3 https://www.python.org/downloads/mac ...
- 聊聊业务系统中投递消息到mq的几种方式
背景 电商中有这样的一个场景: 下单成功之后送积分的操作,我们使用mq来实现 下单成功之后,投递一条消息到mq,积分系统消费消息,给用户增加积分 我们主要讨论一下,下单及投递消息到mq的操作,如何实现 ...
- AQS(抽象队列同步器)
AQS(全称为AbstractQueuedSynchronizer),即抽象队列同步器,它维护了一个volatile int state(代表共享资源)和一个FIFO线程等待队列. state的访问方 ...
- js文件中模块化导入swiper.js文件方法
es6导入: 在js文件顶端 import Swiper from "../../assets/javascripts/swiper.min"; import '../../ass ...
- MIME格式解析
- 邮件例子 一个MIME格式的邮件例子如下: Return-Path: <mlemos@acm.org> To: Manuel Lemos <mlemos@linux.local& ...
- git终端提交代码
- 一次Ubuntu16系统的找回root密码的过程
一 背景知识介绍 ubuntn系统的默认配置,超级用户root的密码是随机的,如果没提前对root用户的密码进行设置, 是不能直接通过root的身份来进行某些操作的,必须使用sudo命令,并通过普通用 ...
- [b0020] python 归纳 (六)_模块变量作用域
test_module2.py: # -*- coding: utf-8 -*-"""测试 模块变量的作用域 总结:1 其他模块的变量,在当前模块的任何地方,包括函数都可 ...